/* Layout: navy side rail (right, RTL) + working canvas; domains read right-to-left as a pipeline, execution as a stage strip */
:root{
  --navy:#061839; --navy-2:#0d2550; --navy-3:#1b3566;
  --red:#EC1C24; --red-soft:#fde8e9;
  --bg:#f3f5f9; --surface:#ffffff; --surface-2:#eef1f7; --line:#dde2ec;
  --fg:#0b1730; --muted:#5b6782; --faint:#8a94ab;
  --ok:#1f8a5b; --ok-soft:#e3f4ec; --warn:#b7791f; --warn-soft:#fbf1dc; --bad:#c81e25; --bad-soft:#fde8e9; --info:#2c5aa0; --info-soft:#e5edf9;
  --rail-fg:#e6ebf5; --rail-muted:#8fa0c2; --scrim:rgba(6,24,57,.45);
  --f-display:"Rubik","Assistant",system-ui,sans-serif;
  --f-body:"Assistant","Rubik",system-ui,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,monospace;
  --r:10px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#081128; --surface:#0e1a36; --surface-2:#13224a; --line:#22335c;
  --fg:#e8edf7; --muted:#9fabc6; --faint:#6f7da0;
  --red-soft:#3a1420; --ok:#4cc08a; --ok-soft:#10302a; --warn:#e2a948; --warn-soft:#33270f; --bad:#ff5a60; --bad-soft:#3a1420; --info:#7aa6ec; --info-soft:#14284d;
  --navy:#040e24; --navy-2:#0a1a3a; --navy-3:#1e3a74; --scrim:rgba(0,0,0,.6); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#081128; --surface:#0e1a36; --surface-2:#13224a; --line:#22335c;
  --fg:#e8edf7; --muted:#9fabc6; --faint:#6f7da0;
  --red-soft:#3a1420; --ok:#4cc08a; --ok-soft:#10302a; --warn:#e2a948; --warn-soft:#33270f; --bad:#ff5a60; --bad-soft:#3a1420; --info:#7aa6ec; --info-soft:#14284d;
  --navy:#040e24; --navy-2:#0a1a3a; --navy-3:#1e3a74; --scrim:rgba(0,0,0,.6); color-scheme:dark}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{height:100%}
body{background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.5;direction:rtl}
button,select,input,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--red);outline-offset:2px}
a{color:var(--info)}
.app{display:flex;min-height:100%}
.rail{width:236px;flex:none;background:var(--navy);color:var(--rail-fg);padding:22px 14px;display:flex;flex-direction:column;gap:16px;position:sticky;top:env(safe-area-inset-top,0px);height:100vh;overflow-y:auto}
.brand{display:flex;flex-direction:column;gap:2px;padding-inline:8px;border-inline-start:3px solid var(--red)}
.brand b{font-family:var(--f-display);font-size:21px}
.brand span{font-size:12px;color:var(--rail-muted);letter-spacing:.4px}
.who{display:flex;flex-direction:column;gap:6px;padding-inline:4px}
.who label{font-size:12px;color:var(--rail-muted)}
.who select{background:var(--navy-2);color:var(--rail-fg);border:1px solid var(--navy-3);border-radius:8px;padding:7px 8px}
.addbtn{border:0;border-radius:8px;padding:11px 12px;font-weight:700;cursor:pointer;background:var(--red);color:#fff}
.nav{display:flex;flex-direction:column;gap:3px}
.nav .sep{font-size:11px;color:var(--rail-muted);letter-spacing:1px;padding:10px 12px 2px}
.nav button{all:unset;cursor:pointer;padding:9px 12px;border-radius:8px;color:var(--rail-fg);display:flex;justify-content:space-between;align-items:center;font-weight:600}
.nav button:hover{background:var(--navy-2)}
.nav button.on{background:var(--navy-3);box-shadow:inset -3px 0 0 var(--red)}
.nav .cnt{font-family:var(--f-mono);font-size:12px;background:var(--navy-2);padding:1px 7px;border-radius:20px;color:var(--rail-muted)}
.nav .cnt.hot{background:var(--red);color:#fff}
.rail .foot{margin-top:auto;font-size:12px;color:var(--rail-muted);padding-inline:8px;display:flex;flex-direction:column;gap:2px}
.live{display:inline-flex;align-items:center;gap:6px}.live i{width:8px;height:8px;border-radius:50%;background:var(--faint)}.live.on i{background:#4cc08a}
.main{flex:1;min-width:0;padding-block:26px 60px;padding-inline:clamp(16px,3vw,36px)}
.eyebrow{font-family:var(--f-mono);font-size:11px;letter-spacing:1.6px;color:var(--faint);text-transform:uppercase}
h1{font-family:var(--f-display);font-size:28px;margin:2px 0 4px;text-wrap:balance}
h2{font-family:var(--f-display);font-size:18px;margin:0}
h3{font-family:var(--f-display);font-size:15.5px;margin:0}
.sub{color:var(--muted);margin:0 0 16px}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:8px}
.tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.inp,.sel{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 10px;min-width:0}
.btn{border:0;border-radius:8px;padding:8px 14px;font-weight:700;cursor:pointer;background:var(--red);color:#fff;white-space:nowrap}
.btn.ghost{background:var(--surface);color:var(--fg);border:1px solid var(--line)}
.btn.navy{background:var(--navy-3);color:#fff}
.btn:disabled{opacity:.5;cursor:default}
.mini{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:2px 8px;font-size:12px;cursor:pointer;font-weight:600;white-space:nowrap}
.mini:hover{border-color:var(--faint)} .mini.ok{border-color:var(--ok);color:var(--ok)} .mini.bad{border-color:var(--bad);color:var(--bad)}
.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:12px 0 20px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:13px 15px;cursor:pointer;text-align:start}
.kpi .n{font-family:var(--f-display);font-size:28px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}
.kpi .l{color:var(--muted);font-size:13px}
.kpi.alert .n{color:var(--bad)} .kpi.warn .n{color:var(--warn)}
.board-wrap{overflow-x:auto;padding-bottom:8px}
.board{display:grid;grid-template-columns:repeat(7,minmax(215px,1fr));gap:10px;min-width:1540px}
.col{background:var(--surface-2);border-radius:var(--r);padding:10px;display:flex;flex-direction:column;gap:8px}
.col-h{display:flex;justify-content:space-between;align-items:baseline;padding:2px 4px 6px;border-bottom:2px solid var(--line)}
.col-h .idx{font-family:var(--f-mono);font-size:11px;color:var(--faint)}
.col.exec{background:var(--navy);color:var(--rail-fg)} .col.exec .col-h{border-color:var(--red)} .col.exec .col-h .idx{color:var(--rail-muted)}
.pcard{all:unset;cursor:pointer;background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:6px}
.pcard:hover{border-color:var(--faint)}
.pcard .t{font-weight:700;line-height:1.3}
.m{font-size:12px;color:var(--muted);display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.bar{height:5px;background:var(--surface-2);border-radius:5px;overflow:hidden;display:block}
.bar i{display:block;height:100%;background:var(--navy-3);border-radius:5px}
.col.exec .bar i,.exec-strip .bar i{background:var(--red)}
.chip{font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:20px;white-space:nowrap;display:inline-block}
.c-ok{background:var(--ok-soft);color:var(--ok)} .c-warn{background:var(--warn-soft);color:var(--warn)} .c-bad{background:var(--bad-soft);color:var(--bad)} .c-info{background:var(--info-soft);color:var(--info)} .c-mute{background:var(--surface-2);color:var(--muted)}
.empty{font-size:13px;color:var(--faint);padding:8px 4px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.tbl{overflow-x:auto}
.tbl table{border-collapse:collapse;width:100%}
.tbl th,.tbl td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:start;vertical-align:middle;font-size:14px}
.tbl th{font-size:11.5px;color:var(--muted);font-weight:700;white-space:nowrap}
.tbl tr.row{cursor:pointer} .tbl tr.row:hover td{background:var(--surface-2)}
.cell{width:100%;min-width:80px;border:1px solid transparent;background:transparent;border-radius:6px;padding:4px 6px;font-variant-numeric:tabular-nums}
.cell:hover,.cell:focus{border-color:var(--line);background:var(--surface)}
.tbl tfoot td{font-weight:700;border-top:2px solid var(--line)}
.seg{display:grid;grid-template-columns:repeat(10,1fr);gap:3px;min-width:420px}
.seg span{height:22px;border-radius:4px;background:var(--surface-2);font-size:10px;display:flex;align-items:center;justify-content:center;color:var(--faint);font-family:var(--f-mono)}
.seg span.d{background:var(--navy-3);color:#cfd8ec} .seg span.c{background:var(--red);color:#fff;font-weight:600}
.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-size:13px}
.neg{color:var(--bad)} .pos{color:var(--ok)}
.back{all:unset;cursor:pointer;color:var(--muted);font-size:13px;margin-bottom:6px;display:inline-block}
.phead{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start}
.meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:13px}
.stepper{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:16px 0}
.step{all:unset;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 10px;display:flex;flex-direction:column;gap:6px;min-width:0}
.step .k{display:flex;justify-content:space-between;align-items:center;gap:4px}
.step .nm{font-weight:700;font-size:13.5px;line-height:1.25}
.step .i{font-family:var(--f-mono);font-size:11px;color:var(--faint)}
.step.done{border-color:transparent;background:var(--surface-2)} .step.cur{border-color:var(--navy-3);box-shadow:0 0 0 1px var(--navy-3)} .step.sel{outline:2px solid var(--red);outline-offset:1px}
.grid2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:14px;align-items:start}
.stack{display:flex;flex-direction:column;gap:14px;min-width:0}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;min-width:0}
.panel-h{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.check li{display:flex;gap:10px;align-items:center;padding:7px 2px;border-bottom:1px dashed var(--line)} .check li:last-child{border-bottom:0}
.tick{all:unset;cursor:pointer;width:20px;height:20px;border-radius:6px;border:2px solid var(--line);flex:none;display:grid;place-items:center;font-size:12px;font-weight:700}
.tick.s1{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)} .tick.s2{border-color:var(--ok);background:var(--ok);color:#fff} .tick.s3{border-color:var(--faint);background:var(--surface-2);color:var(--faint)}
.check .lbl{flex:1;min-width:0} .check .lbl.done{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--faint)}
.tasklist{display:flex;flex-direction:column;gap:8px}
.task{border:1px solid var(--line);border-radius:8px;padding:9px 11px;display:flex;flex-direction:column;gap:5px;background:var(--surface)}
.task.late{border-inline-start:3px solid var(--bad)}
.tt{font-weight:600;line-height:1.35;cursor:pointer} .tt:hover{text-decoration:underline}
.tm{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted)}
.task select,.trow select{font-size:12.5px;padding:2px 6px;border-radius:6px;border:1px solid var(--line);background:var(--surface)}
.ref{font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:20px;white-space:nowrap;background:var(--navy-3);color:#e6ebf5}
.ref.int{background:var(--info-soft);color:var(--info)}
.by{font-size:11.5px;color:var(--faint)}
.wait{font-family:var(--f-mono);font-size:12px} .wait.long{color:var(--bad);font-weight:600}
.addrow{display:grid;grid-template-columns:1fr 130px 135px auto;gap:6px;margin-top:10px}
.exec-strip{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;margin-bottom:14px}
.es{all:unset;cursor:pointer;border-radius:8px;padding:8px 6px;background:var(--surface-2);display:flex;flex-direction:column;gap:5px;min-width:0}
.es .n{font-size:12px;font-weight:700;line-height:1.2} .es .p{font-family:var(--f-mono);font-size:11px;color:var(--muted)}
.es.d{background:var(--navy-3);color:#e6ebf5}.es.d .p{color:#b8c4de}
.es.c{background:var(--navy);color:#fff;box-shadow:inset 0 -3px 0 var(--red)}.es.c .p{color:#c8d2ea}
.es.sel{outline:2px solid var(--red);outline-offset:1px}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.fact{background:var(--surface-2);border-radius:8px;padding:9px 11px;min-width:0}
.fact .l{font-size:12px;color:var(--muted)} .fact .v{font-family:var(--f-display);font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fld{display:flex;flex-direction:column;gap:4px;min-width:0}
.fld>span{font-size:12.5px;font-weight:700;color:var(--muted)}
.grp{margin-bottom:22px}
.grp-h{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.grp-h .ln{flex:1;height:1px;background:var(--line);min-width:20px}
.trow{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,1.2fr) 110px 105px 125px;gap:10px;align-items:center;padding:9px 12px;background:var(--surface);border:1px solid var(--line);border-radius:8px;margin-bottom:6px}
.trow.late{border-inline-start:3px solid var(--bad)}
.pj{font-size:13px;color:var(--muted);cursor:pointer} .pj:hover{color:var(--fg);text-decoration:underline}
.hid{font-size:11px;color:var(--faint)}
.more{display:block;margin:6px auto 0}
.tabsbar{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:4px 0 14px;overflow-x:auto}
.tabsbar button{all:unset;cursor:pointer;padding:9px 12px;font-weight:700;color:var(--muted);border-bottom:3px solid transparent;white-space:nowrap}
.tabsbar button.on{color:var(--fg);border-color:var(--red)}
.gate{background:var(--warn-soft);color:var(--fg);border-radius:8px;padding:12px 14px;margin:0 0 14px;display:flex;flex-direction:column;gap:8px}
.gate ul{margin:0;padding-inline-start:18px}
.summary{white-space:pre-wrap;font-size:14px;line-height:1.6;max-height:340px;overflow:auto;background:var(--surface-2);border-radius:8px;padding:12px}
.scrim{position:fixed;inset:0;background:var(--scrim);z-index:20}
.drawer{position:fixed;top:0;bottom:0;left:0;width:min(580px,100%);background:var(--surface);z-index:21;display:flex;flex-direction:column;box-shadow:0 0 40px rgba(0,0,0,.25);padding-top:env(safe-area-inset-top,0px)}
.dr-h{padding:18px 20px 0;display:flex;justify-content:space-between;align-items:center;gap:10px}
.dr-x{all:unset;cursor:pointer;font-size:22px;color:var(--muted);padding:4px 8px}
.tabs{display:flex;gap:4px;padding:12px 20px 0;border-bottom:1px solid var(--line);overflow-x:auto}
.tabs button{all:unset;cursor:pointer;padding:9px 12px;font-weight:700;color:var(--muted);border-bottom:3px solid transparent;white-space:nowrap}
.tabs button.on{color:var(--fg);border-color:var(--red)}
.dr-b{padding:18px 20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:12px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.seg2{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.seg2 button{all:unset;cursor:pointer;flex:1;text-align:center;padding:7px;font-weight:700;color:var(--muted)}
.seg2 button.on{background:var(--navy);color:#fff}
textarea.inp{min-height:120px;resize:vertical;line-height:1.6}
.hint{font-size:12.5px;color:var(--muted);background:var(--surface-2);border-radius:8px;padding:8px 10px}
.prev{display:flex;flex-direction:column;gap:6px}
.prev div{display:flex;gap:8px;align-items:center;font-size:13.5px;padding:6px 8px;border:1px solid var(--line);border-radius:6px}
.prev div b{flex:1;font-weight:600;min-width:0}
.owners{display:flex;flex-wrap:wrap;gap:6px}
.owners label{display:flex;gap:5px;align-items:center;border:1px solid var(--line);border-radius:20px;padding:3px 10px;font-size:13px;cursor:pointer}
.log{display:flex;flex-direction:column;gap:6px}
.log div{background:var(--surface-2);border-radius:8px;padding:7px 10px;font-size:13.5px}
.log small{color:var(--faint);display:block;font-size:11.5px}
.dr-f{padding:14px 20px;border-top:1px solid var(--line);display:flex;gap:8px;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))}
.toast{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;padding:10px 18px;border-radius:8px;z-index:30;font-weight:600;max-width:90vw}
.state{max-width:560px;margin:60px auto;text-align:center;color:var(--muted)}
.state h2{color:var(--fg);margin-bottom:8px}
.paper{background:#fff;color:#0b1730;max-width:880px;margin:0 auto;border-radius:6px;box-shadow:0 2px 18px rgba(6,24,57,.12);overflow:hidden}
.paper .ph{background:#061839;color:#fff;padding:22px 30px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;border-bottom:4px solid #EC1C24}
.paper .ph b{font-family:var(--f-display);font-size:24px} .paper .ph small{color:#b8c4de;display:block}
.paper .pb{padding:24px 30px;display:flex;flex-direction:column;gap:22px}
.paper h2{font-size:17px;border-bottom:2px solid #061839;padding-bottom:4px;margin-bottom:10px}
.paper .dl{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.paper .dl div{border:1px solid #dde2ec;border-radius:6px;padding:7px;font-size:12px;font-weight:700;display:flex;flex-direction:column;gap:5px}
.paper .dl div.cur{border-color:#061839;background:#eef1f7}
.paper .bar{background:#eef1f7}.paper .bar i{background:#061839} .paper .dl .ex .bar i{background:#EC1C24}
.paper ul{margin:0;padding-inline-start:18px;display:flex;flex-direction:column;gap:5px}
.paper .need{background:#fde8e9;border-radius:6px;padding:12px 14px}
.paper .auto{border:1px dashed #8a94ab;border-radius:6px;padding:12px 14px;background:#f7f8fb;white-space:pre-wrap;font-size:14px}
.paper .auto .tag{font-size:11.5px;font-weight:700;color:#5b6782;margin-bottom:6px;display:block;white-space:normal}
.paper .kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;font-size:13.5px}
.paper .kv span{color:#5b6782;display:block;font-size:12px}
.paper .muted{color:#5b6782;font-size:13px}
.paper .pf{padding:12px 30px;background:#f3f5f9;font-size:12px;color:#5b6782;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.rep-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;max-width:880px;margin:0 auto 14px}
.f5{grid-template-columns:repeat(5,minmax(0,1fr))!important;margin-bottom:10px}
.v.pos,.pos{color:var(--ok)} .v.neg{color:var(--bad)}
.stack3{display:flex;height:9px;border-radius:6px;overflow:hidden;background:var(--surface-2);margin-top:8px}
.stack3 i,.lg{display:block;height:100%}
.stack3 .p,.lg.p{background:var(--ok)} .stack3 .n,.lg.n,.mbar .n{background:var(--red)} .stack3 .f,.lg.f{background:var(--navy-3);opacity:.35} .mbar .c,.lg.c{background:var(--info)}
.legend{display:flex;gap:12px;font-size:12px;color:var(--muted);flex-wrap:wrap}
.lg{display:inline-block;width:11px;height:11px;border-radius:3px;vertical-align:-1px;margin-inline-end:4px}
.agr{margin-bottom:12px}
.agr-h{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;cursor:pointer;flex-wrap:wrap}
.agr-n{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.caret{color:var(--faint);font-size:13px}
.agr-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.payrow{display:flex;justify-content:space-between;align-items:center;gap:8px}
.warnline{background:var(--warn-soft);color:var(--warn);border-radius:6px;padding:6px 10px;font-size:13px;margin:8px 0 0}
.months{display:flex;flex-direction:column;gap:8px}
.mrow{display:grid;grid-template-columns:150px 1fr 130px;gap:10px;align-items:center}
.mbar{display:flex;height:14px;background:var(--surface-2);border-radius:4px;overflow:hidden}
.mbar i{display:block;height:100%}
.mv{text-align:start}
.paper .rt{width:100%;border-collapse:collapse;font-size:13.5px}
.paper .rt th,.paper .rt td{padding:6px 8px;border-bottom:1px solid #dde2ec;text-align:start}
.paper .rt th{font-size:12px;color:#5b6782}
.paper .rt tfoot td{font-weight:700;border-top:2px solid #061839}
@media (max-width:1100px){.f5{grid-template-columns:repeat(2,minmax(0,1fr))!important}.agr-cols{grid-template-columns:1fr}}
@media (max-width:760px){.mrow{grid-template-columns:90px 1fr 100px}}
.agr td:nth-child(2){min-width:230px}
.agr td:nth-child(2) .cell{min-width:160px}
.sugrow{display:flex;gap:8px;align-items:flex-start;padding:7px 8px;border:1px solid var(--line);border-radius:8px;margin-bottom:6px;font-size:13.5px}
.sugrow input{margin-top:3px}
details.types summary{cursor:pointer;font-size:12.5px;color:var(--muted)}
.check li .mini{margin-inline-start:2px}
.drop{border:2px dashed var(--line);border-radius:10px;padding:18px;text-align:center;color:var(--muted);margin-bottom:12px}
.drop.over{border-color:var(--red);background:var(--red-soft)}
.row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.docname{display:flex;gap:10px;align-items:center;min-width:0}
.docname a{font-weight:600;overflow-wrap:anywhere}
.ftype{font-family:var(--f-mono);font-size:10.5px;background:var(--surface-2);color:var(--muted);border-radius:5px;padding:6px 5px;min-width:40px;text-align:center;flex:none}
.thumb{all:unset;cursor:zoom-in;flex:none;width:44px;height:44px;border-radius:6px;overflow:hidden;background:var(--surface-2);display:block}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lphotos{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.sel.sm{padding:3px 6px;font-size:13px}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.82);z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px}
.lightbox img{max-width:100%;max-height:85vh;border-radius:6px}
.lb-cap{color:#fff;display:flex;gap:10px;align-items:center}
@media (max-width:760px){.row3{grid-template-columns:1fr}}
.rowsum{font-size:13px;padding:6px 2px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.checks{display:flex;flex-direction:column;gap:6px}.checks label{display:flex;gap:6px;align-items:center}
.series summary{cursor:pointer;font-size:13px;color:var(--muted);font-weight:600}
.hint.hbad{background:var(--bad-soft);color:var(--bad)} .hint.hok{background:var(--ok-soft);color:var(--ok)}
.rowsed .cell{min-width:0}
.pdfhost{position:fixed;left:-12000px;top:0;width:780px;background:#fff;color:#0b1730;direction:rtl;font-family:var(--f-body);font-size:13px;line-height:1.5}
.pdfhost .pblk{background:#fff;padding:2px 2px 6px}
.pdfhost.rep .pblk{box-shadow:none;border-radius:0;max-width:none;margin:0}
.pdfhost .pp-h{background:#061839;color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:flex-end;border-bottom:4px solid #EC1C24}
.pdfhost .pp-h b{font-family:var(--f-display);font-size:21px;display:block}.pdfhost .pp-h small{color:#b8c4de;display:block;font-size:11.5px}
.pdfhost .pp-sum{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:12px 0}
.pdfhost .pp-sum div{background:#eef1f7;border-radius:6px;padding:7px 9px}.pdfhost .pp-sum span{display:block;font-size:11px;color:#5b6782}.pdfhost .pp-sum b{font-size:14px}
.pdfhost .pt{width:100%;border-collapse:collapse;font-size:12px;margin-top:6px}
.pdfhost .pt th{background:#061839;color:#fff;font-weight:600;padding:5px 6px;text-align:right}
.pdfhost .pt td{padding:5px 6px;border-bottom:1px solid #dde2ec;text-align:right}
.pdfhost .pt i,.pdfhost .pa-h i{color:#5b6782;font-style:normal;font-size:11.5px}
.pdfhost .pa-h{font-size:15px;border-bottom:2px solid #EC1C24;padding:8px 0 4px;margin-top:6px}
.pdfhost .pa-h b{font-family:var(--f-display)}
.pdfhost .pa-m{font-size:12px;color:#3b4762;margin-top:3px}
.pdfhost .pa-s{font-weight:700;margin-top:8px;font-size:12.5px}
@media (max-width:1100px){.grid2{grid-template-columns:1fr}.stepper{grid-template-columns:repeat(4,minmax(0,1fr))}.exec-strip{grid-template-columns:repeat(5,minmax(0,1fr))}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .app{flex-direction:column}
  .rail{width:auto;height:auto;position:static;padding:14px 16px;gap:10px}
  .nav{flex-direction:row;overflow-x:auto}.nav .sep{display:none}.nav button{white-space:nowrap}.rail .foot{display:none}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stepper{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trow{grid-template-columns:1fr 1fr}
  .addrow,.row2,.form{grid-template-columns:1fr!important}
  .paper .dl,.paper .kv{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (prefers-reduced-motion:no-preference){.pcard,.step,.es{transition:border-color .15s,background .15s}}

/* AI assistant pane (docked left; rail is on the right) */
.aibtn{border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:9px 12px;font-weight:700;cursor:pointer;background:transparent;color:var(--rail-fg);display:flex;gap:8px;align-items:center;justify-content:center}
.aibtn span{color:#ff8a8f}.aibtn:hover,.aibtn.on{background:var(--navy-3);border-color:var(--navy-3)}
.aipane{position:fixed;top:0;bottom:0;left:0;width:min(440px,100%);background:var(--surface);border-right:1px solid var(--line);z-index:19;display:flex;flex-direction:column;box-shadow:0 0 30px rgba(6,24,57,.14)}
@media (min-width:1280px){body.ai-on .main{margin-left:440px}}
.ai-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 18px 12px;border-bottom:1px solid var(--line);background:var(--navy);color:#fff}
.ai-h b{font-family:var(--f-display);font-size:17px;display:block}.ai-h small{color:var(--rail-muted);font-size:12px}
.ai-hb{display:flex;gap:6px;align-items:center}.ai-hb .mini{color:var(--fg)}.ai-h .x{background:none;border:0;color:#fff;font-size:16px;cursor:pointer;padding:2px 6px}
.ai-scope{padding:8px 18px;font-size:12.5px;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--line)}
.lnk{background:none;border:0;padding:0;color:var(--info);cursor:pointer;font:inherit;text-decoration:underline}
.ai-msgs{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:12px}
.ai-m{max-width:100%;line-height:1.55;font-size:14px;overflow-wrap:anywhere}
.ai-m.u{align-self:flex-start;background:var(--navy-3);color:#fff;border-radius:12px 12px 12px 3px;padding:8px 12px;max-width:88%;white-space:pre-wrap}
.ai-m.u .by{color:#c9d3ea}
.ai-m.a{align-self:stretch;background:var(--surface-2);border-radius:12px 12px 3px 12px;padding:10px 14px}
.ai-m.a p{margin:0 0 6px}.ai-m.a ul,.ai-m.a ol{margin:2px 0 8px;padding-inline-start:20px}.ai-m.a li{margin:2px 0}
.ai-m.a h4{font-family:var(--f-display);font-size:14.5px;margin:8px 0 4px}
.ai-m.a code{font-family:var(--f-mono);font-size:12px;background:var(--surface);padding:0 4px;border-radius:4px}
.ai-m.a a{color:var(--info)}
.ai-tw{overflow-x:auto;margin:6px 0}.ai-tw table{border-collapse:collapse;font-size:12.5px;width:100%}
.ai-tw th,.ai-tw td{border-bottom:1px solid var(--line);padding:4px 6px;text-align:right;vertical-align:top}.ai-tw th{color:var(--muted);font-weight:700}
.ai-tools{margin-top:6px;display:flex;gap:6px}
.ai-prop{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 12px;margin-top:8px;display:flex;flex-direction:column;gap:4px}
.ai-prop.done{border-color:var(--ok)}.ai-prop.no{opacity:.6}
.ai-prop .chip{align-self:flex-start}.ai-pa{display:flex;gap:6px;margin-top:4px}
.ai-empty p{color:var(--muted);font-size:13.5px;margin:0 0 12px}
.ai-sugs{display:flex;flex-direction:column;gap:6px}
.ai-sug{text-align:right;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:8px 12px;cursor:pointer;font:inherit;font-size:13.5px;color:var(--fg)}
.ai-sug:hover{border-color:var(--navy-3)}
.ai-stat{display:flex;align-items:center;gap:8px;padding:6px 18px;font-size:12.5px;color:var(--muted)}
.ai-stat i{width:8px;height:8px;border-radius:50%;background:var(--red);animation:aip 1s infinite alternate}
.ai-stat span{flex:1}
@keyframes aip{from{opacity:.25}to{opacity:1}}
.ai-err{margin:0 18px 6px;padding:8px 10px;border-radius:8px;background:var(--bad-soft);color:var(--bad);font-size:12.5px}
.ai-in{border-top:1px solid var(--line);padding:10px 14px 14px;display:flex;flex-direction:column;gap:8px}
.ai-in textarea{width:100%;resize:vertical;min-height:52px;max-height:200px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font:inherit;font-size:14px;background:var(--surface);color:var(--fg)}
.ai-row{display:flex;align-items:center;gap:8px}.ai-row .by{flex:1}
.ai-file{display:inline-flex;align-items:center;padding:5px 10px}
.ai-att{font-size:12.5px;color:var(--muted)}
@media (max-width:760px){.aibtn{white-space:nowrap}}
.fwrap{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}
.ftree{position:sticky;top:12px;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:8px}
.fnode{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;cursor:pointer;font-size:13.5px;color:var(--fg);width:100%}
.fnode:hover{background:var(--surface-2)}.fnode.on{background:var(--info-soft);color:var(--navy-3);font-weight:700}
.fnode:focus-visible{outline:2px solid var(--info)}
.fnode.top{font-weight:700;font-family:var(--f-display)}.fnode.sub{padding-inline-start:38px;font-size:13px;color:var(--muted)}.fnode.sub.on{color:var(--navy-3)}
.fn{flex:1;min-width:0}.fc{font-family:var(--f-mono);font-size:11.5px;color:var(--faint)}.fc.hot{color:var(--bad);font-weight:700}
.fx{font-size:11px;color:var(--faint);padding:2px 4px}
.fi{width:22px;height:22px;border-radius:6px;color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:none;font-family:var(--f-mono)}
.fsubs{display:flex;flex-direction:column;gap:1px;margin:2px 0 6px}
.fmain{min-width:0}.fmain .tbl td:first-child{min-width:240px}.fmain .tbl{overflow-x:auto}
.crumb{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:16px;margin-bottom:10px}
@media (max-width:1100px){.fwrap{grid-template-columns:1fr}.ftree{position:static}}
.qps{all:unset;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:8px 12px;margin-bottom:6px;border-radius:8px;background:var(--navy-2);color:var(--rail-muted);font-size:13px;border:1px solid var(--navy-3)}
.qps:hover{color:var(--rail-fg)}.qps kbd{font-family:var(--f-mono);font-size:11px;border:1px solid var(--navy-3);border-radius:4px;padding:0 5px}
.nav .qpn{padding:6px 12px;font-weight:500;font-size:13px}.nav .qpn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
#qp{position:fixed;inset:0;z-index:40}.qp-scrim{position:absolute;inset:0;background:var(--scrim)}
.qp-box{position:relative;margin:10vh auto 0;width:min(620px,calc(100% - 32px));background:var(--surface);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.35);padding:12px;display:flex;flex-direction:column;gap:8px;max-height:72vh}
.qp-box .inp{font-size:16px;padding:12px}
.qp-list{overflow-y:auto;display:flex;flex-direction:column;gap:2px}
.qp-it{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:8px}
.qp-it.on,.qp-it:hover{background:var(--info-soft)}.qp-n{font-weight:700}.qp-m{font-size:12.5px;color:var(--muted)}.qp-it .star,.pinb.on{color:var(--warn)}
.qp-foot{padding:2px 4px}
.pinb{all:unset;cursor:pointer;font-size:17px;color:var(--faint);padding:0 4px;line-height:1}.pinb:hover{color:var(--warn)}.pinb.big{font-size:22px;vertical-align:middle}
.sortb{all:unset;cursor:pointer;font-weight:700;color:inherit}.sortb.on{color:var(--fg)}
.qtab tbody tr{cursor:pointer}.qtab tbody tr:hover{background:var(--surface-2)}.qtab a.mini{text-decoration:none;color:var(--fg)}
.qfl{margin-bottom:12px;flex-wrap:wrap}.chk{display:flex;align-items:center;gap:6px;font-size:13.5px}
.xdel{all:unset;cursor:pointer;color:var(--faint);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;vertical-align:middle;flex:none}
.xdel:hover{color:var(--bad);background:var(--bad-soft)}.xdel:focus-visible{outline:2px solid var(--bad)}
.btn.danger{color:var(--bad);border-color:var(--bad)}.btn.danger:hover{background:var(--bad-soft)}
.toast .undo{all:unset;cursor:pointer;color:#ffb4b7;font-weight:700;margin-inline-start:10px;text-decoration:underline}
#cfm{position:fixed;inset:0;z-index:45}.cfm-box{position:relative;margin:18vh auto 0;width:min(440px,calc(100% - 32px));background:var(--surface);border-radius:12px;padding:20px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.cfm-box h3{margin:0 0 8px;font-family:var(--f-display)}.cfm-box p{margin:0 0 16px;color:var(--muted)}.cfm-box .btn:first-child{background:var(--bad)}
.mpick{display:flex;flex-direction:column;gap:6px}.mpick .mini-btn{align-self:flex-start;padding:6px 12px;font-size:13.5px;cursor:pointer}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.mgrid.sm{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px}
.mcell{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:var(--surface-2)}.mcell img,.mcell video{width:100%;height:100%;object-fit:cover;display:block}
.mcell.bad{outline:2px solid var(--bad)}.mwarn{position:absolute;bottom:0;inset-inline:0;background:var(--bad);color:#fff;font-size:11px;text-align:center}
.mx{all:unset;cursor:pointer;position:absolute;top:4px;inset-inline-end:4px;background:rgba(0,0,0,.6);color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:12px}
.vbadge{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;text-shadow:0 1px 6px rgba(0,0,0,.7);pointer-events:none}
.thumb{position:relative}.thumb video{width:100%;height:100%;object-fit:cover;display:block}.thumb.big{width:100%;height:auto;aspect-ratio:4/3;border-radius:8px}
.thumb.addm{display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--muted);border:1px dashed var(--line);background:transparent;cursor:pointer}
.lphotos .thumb{width:64px;height:64px}
.mcard{display:flex;flex-direction:column;gap:4px}.mcap{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted)}.mcap span:first-child{font-family:var(--f-mono)}.mcap .xdel{margin-inline-start:auto}
.mday{margin-bottom:22px}
.lightbox .lb-bg{position:absolute;inset:0}.lightbox img,.lightbox video{position:relative;max-width:100%;max-height:80vh;border-radius:6px;background:#000}
.lightbox .lb-cap{position:relative;display:flex;gap:12px;align-items:center;justify-content:space-between;color:#fff;max-width:min(900px,100%);width:100%;font-size:13.5px}.lightbox .lb-cap small{color:#c9d3ea}
.lb-nav{all:unset;cursor:pointer;position:absolute;top:50%;transform:translateY(-50%);z-index:2;color:#fff;font-size:42px;width:52px;height:72px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.35);border-radius:10px}
.lb-nav.prev{right:14px}.lb-nav.next{left:14px}.lb-nav:disabled{opacity:.2;cursor:default}

/* client report v2 */
.rep2{--n:#061839;--r:#EC1C24;--ink:#0b1730;--mu:#5b6782;--ln:#dde2ec;background:#f6f7fa;color:var(--ink);max-width:1100px;margin:0 auto;font-family:var(--f-body);font-size:14px;line-height:1.55;border-radius:10px;overflow:hidden;box-shadow:0 2px 18px rgba(6,24,57,.12);padding-bottom:20px}
.rep2 .r-top{position:relative;padding:0 0 4px}
.rep2 .r-hero{background:radial-gradient(circle at 8% 30%,rgba(236,28,36,.35),transparent 32%),linear-gradient(90deg,#3a1a2e 0%,#132447 35%,#0d1e3d 100%);color:#fff;padding:30px 30px 90px;display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.rep2 .r-ttl h1{font-family:var(--f-display);font-size:30px;margin:6px 0 8px;line-height:1.2}
.rep2 .r-ttl p{color:#c9d3ea;margin:0 0 14px;font-size:15px}
.rep2 .r-pill{display:inline-block;border:1px solid rgba(236,28,36,.7);background:rgba(236,28,36,.18);border-radius:20px;padding:4px 14px;font-size:12.5px;font-weight:700;color:#ffe3e4}
.rep2 .r-logo{background:#fff;border-radius:14px;padding:16px 22px;min-width:230px;text-align:center;flex:none}
.rep2 .wm{font-family:var(--f-display);font-weight:800;font-size:40px;color:var(--n);letter-spacing:-1px;line-height:1}
.rep2 .wm .o{position:relative;display:inline-block}.rep2 .wm .o::before{content:"";position:absolute;width:.32em;height:.32em;border-radius:50%;background:var(--r);top:-.18em;left:50%;transform:translateX(-50%)}
.rep2 .r-logo img.lg{display:block;width:190px;height:auto;margin:0 auto}.rep2 .r-foot .wm img.lg{display:block;width:120px;height:auto}.rep2 .r-logo .tg{font-size:11.5px;color:var(--mu);margin-top:8px;border-top:1px solid var(--ln);padding-top:6px;font-weight:600}
.rep2 .r-info{position:relative;margin:-70px 24px 0;background:#fff;border-radius:14px;box-shadow:0 6px 24px rgba(6,24,57,.12);display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.rep2 .r-info>div{padding:18px 18px;border-inline-start:1px solid var(--ln);display:flex;flex-direction:column;gap:6px}.rep2 .r-info>div:first-child{border:0}
.rep2 .r-info span{font-size:12px;color:var(--mu);font-weight:700}.rep2 .r-info b{font-size:14.5px}.rep2 .r-info small{color:var(--mu);font-weight:400;font-size:12px}
.rep2 .r-note{margin:16px 24px 0;background:#eef1f7;border:1px solid var(--ln);border-radius:10px;padding:10px 16px;font-size:12.5px;color:var(--mu)}.rep2 .r-note b{color:var(--ink)}
.rep2 .rsec{margin:26px 24px 0}
.rep2 .rh{display:flex;align-items:center;gap:12px;margin-bottom:12px}.rep2 .rh h2{font-family:var(--f-display);font-size:22px;margin:0}
.rep2 .rn{background:var(--r);color:#fff;border-radius:8px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex:none}
.rep2 .rsub{margin-inline-start:auto;color:var(--mu);font-size:12.5px}
.rep2 .r-card{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:18px 22px}
.rep2 .r-narr{border-inline-start:4px solid #c9d3ea}.rep2 .r-narr p{margin:0 0 10px;text-align:justify}.rep2 .r-narr b{font-weight:800}
.rep2 .r-alert{background:#fde8e9;border:1px solid #f5b5b8;color:#a3131a;border-radius:10px;padding:10px 14px;font-weight:700;font-size:13.5px;margin-top:6px}
.rep2 .r-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}
.rep2 .r-kpi{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:14px 18px;border-inline-end:4px solid var(--n);display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.rep2 .r-kpi b{font-family:var(--f-display);font-size:30px;line-height:1.1}.rep2 .r-kpi span{font-size:13px;color:var(--mu);font-weight:600}
.rep2 .k-ok{border-inline-end-color:#1f8a5b}.rep2 .k-warn{border-inline-end-color:#b7791f}.rep2 .k-bad{border-inline-end-color:#c81e25}.rep2 .k-client{border-inline-end-color:#6b4bb8}.rep2 .k-info{border-inline-end-color:#2c5aa0}
.rep2 .r-bh{font-weight:800;font-size:13.5px;margin-bottom:12px}
.rep2 .r-bar{display:grid;grid-template-columns:150px 1fr 50px;gap:14px;align-items:center;margin:8px 0}.rep2 .r-bar span{font-weight:700}.rep2 .r-bar b{font-family:var(--f-mono);font-size:13px}
.rep2 .r-bar i{display:block;height:12px;background:#edf0f5;border-radius:8px;overflow:hidden;position:relative}.rep2 .r-bar em{position:absolute;right:0;top:0;bottom:0;background:linear-gradient(90deg,#0b1730,#1b3566);border-radius:8px}
.rep2 .r-bar em.g{background:linear-gradient(90deg,#1f6f4b,#3e9e6e)}.rep2 .r-bar em.r{background:linear-gradient(90deg,#c81e25,#ec4a50)}
.rep2 .rtw{background:#fff;border:1px solid var(--ln);border-radius:12px;overflow:hidden}
.rep2 .rt2{width:100%;border-collapse:collapse;font-size:12.5px}
.rep2 .rt2 th{background:#0b1730;color:#fff;font-weight:700;padding:11px 10px;text-align:right;white-space:nowrap;font-size:13px}
.rep2 .rt2 td{padding:9px 10px;border-bottom:1px solid #edf0f5;vertical-align:top;text-align:right}
.rep2 .rt2 tbody tr:nth-child(even) td{background:#fafbfd}.rep2 .rt2 tr.r-pend td{background:#f6f0ff}
.rep2 .rnum{font-family:var(--f-mono);font-size:12px;white-space:nowrap;color:var(--mu)}
.rep2 .rtag{background:#eef1f7;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}
.rep2 .rc{display:inline-block;border-radius:20px;padding:2px 11px;font-size:12px;font-weight:700;white-space:nowrap}
.rep2 .s-ok{background:#e3f4ec;color:#1f7a4f}.rep2 .s-prog{background:#fdf1d8;color:#a8690f}.rep2 .s-new{border:1px dashed #9aa3b8;color:#5b6782}.rep2 .s-wait{background:#eceff4;color:#5b6782}
.rep2 .s-client{background:#efe7fd;color:#6b3fc0}.rep2 .s-check{background:#e5edf9;color:#2c5aa0}.rep2 .s-mute{background:#eceff4;color:#8a94ab}
.rep2 .r-crit{background:#fde8e9;color:#c81e25}.rep2 .r-high{background:#fde8e9;color:#d34a2c}.rep2 .r-mid{background:#e5edf9;color:#2c5aa0}.rep2 .r-low{background:#eceff4;color:#5b6782}
.rep2 .rdash{color:#9aa3b8}.rep2 .rdim{color:var(--mu);font-size:13px;margin:8px 0 0}
.rep2 .r-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rep2 .r-cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.rep2 .r-dc{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:14px 18px}
.rep2 .r-dch{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px}.rep2 .r-dch b{font-size:15px;font-family:var(--f-display)}
.rep2 .r-dcw{color:var(--mu);font-size:12.5px;margin-bottom:8px}.rep2 .r-dc ul{margin:0;padding:0;list-style:none;font-size:13px;display:flex;flex-direction:column;gap:4px}.rep2 .r-dc li{position:relative;padding-inline-start:14px}.rep2 .r-dc li::before{content:'';position:absolute;inset-inline-start:2px;top:.62em;width:5px;height:5px;border-radius:50%;background:#0b1730}
.rep2 .r-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.rep2 .r-chips span{background:#eef1f7;border:1px solid var(--ln);border-radius:6px;padding:3px 10px;font-size:12.5px;font-weight:600}
.rep2 .r-mini{height:6px;background:#edf0f5;border-radius:4px;overflow:hidden;width:90px;display:inline-block;vertical-align:middle;margin-inline-end:6px}.rep2 .r-mini em{display:block;height:100%;background:#1b3566}
.rep2 .tl{position:relative;padding-inline-start:30px;padding-bottom:14px;border-inline-start:3px solid #dde5f2;margin-inline-start:9px}
.rep2 .tl i{position:absolute;inset-inline-start:-11px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid #b7c2d6}
.rep2 .tl.done i{background:#1f8a5b;border-color:#1f8a5b}.rep2 .tl.cur i{background:#EC1C24;border-color:#EC1C24;box-shadow:0 0 0 5px rgba(236,28,36,.18)}
.rep2 .tl small{display:block;color:var(--mu);font-family:var(--f-mono);font-size:11.5px}.rep2 .tl b{display:block;font-size:14px}.rep2 .tl.cur b{color:#c81e25}.rep2 .tl span{display:block;color:var(--mu);font-size:12.5px}
.rep2 .r-foot{margin:30px 24px 0;border-top:2px solid var(--ln);padding-top:18px;color:var(--mu);font-size:12.5px}.rep2 .r-foot .wm{font-size:30px;display:inline-block;background:#fff;border:1px solid var(--ln);border-radius:10px;padding:8px 14px;margin-bottom:10px}.rep2 .r-foot p{margin:3px 0}
.r-edit{max-width:1100px;margin:0 auto 16px}.r-edit summary{cursor:pointer;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.r-edit[open] summary{margin-bottom:12px}.r-edit .fld{margin-bottom:8px}
.pdfhost.rep{width:1060px}.pdfhost .rep2{box-shadow:none;border-radius:0;max-width:none;padding-bottom:6px}.pdfhost .rep2 .rsec{margin-top:10px}
@media (max-width:900px){.rep2 .r-info{grid-template-columns:repeat(2,minmax(0,1fr))}.rep2 .r-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.rep2 .r-cards,.rep2 .r-cards.two{grid-template-columns:1fr}.rep2 .r-hero{flex-direction:column}.rep2 .rtw{overflow-x:auto}.rep2 .rt2{min-width:760px}}
.sched .panel-h{flex-wrap:wrap;gap:8px}
.gantt{display:flex;flex-direction:column;gap:4px;overflow-x:auto}
.g-row{display:grid;grid-template-columns:200px minmax(260px,1fr) 150px;gap:12px;align-items:center;min-width:640px;padding:3px 0}
.g-row.cur{background:var(--info-soft);border-radius:8px}.g-row.done .g-n b{color:var(--muted)}
.g-n{display:flex;flex-direction:column;padding-inline-start:6px}.g-n b{font-size:13.5px}.g-n small{font-size:11.5px;color:var(--muted);font-family:var(--f-mono)}
.g-track{position:relative;height:22px;background:var(--surface-2);border-radius:6px}
.g-track em{position:absolute;top:5px;height:12px;border-radius:4px}
.g-track em.pl{background:var(--navy-3);opacity:.35}.g-track em.ac{background:var(--ok);top:8px;height:6px}.g-track em.ac.now{background:var(--warn)}.g-track em.sl{background:repeating-linear-gradient(45deg,var(--bad),var(--bad) 3px,transparent 3px,transparent 6px);top:7px;height:8px}
.g-track em.sp{width:3px;height:16px;top:3px;background:var(--navy-3);border-radius:1px;transform:translateX(50%)}
.g-track em.today{width:2px;top:-3px;height:28px;background:var(--red);border-radius:0}
.g-axis .g-track{background:none;height:16px}.g-axis i{position:absolute;font-style:normal;font-size:10.5px;color:var(--faint);font-family:var(--f-mono);transform:translateX(50%)}
.g-row>.chip{justify-self:start}
.g-leg{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:8px;align-items:center}.g-leg i{display:inline-block;width:16px;height:8px;border-radius:3px;margin-inline-end:5px;vertical-align:middle}
.g-leg i.pl{background:var(--navy-3);opacity:.35}.g-leg i.ac{background:var(--ok)}.g-leg i.sl{background:repeating-linear-gradient(45deg,var(--bad),var(--bad) 3px,transparent 3px,transparent 6px)}.g-leg i.today{background:var(--red);width:3px;height:12px}
.seg2{display:flex;gap:16px;flex-wrap:wrap;font-weight:600}.seg2 label{display:flex;gap:6px;align-items:center}
.gt{display:grid;grid-template-columns:170px minmax(0,1fr);border-top:1px solid var(--line);margin-top:4px}
.gt-names{border-inline-end:1px solid var(--line)}
.gt-hd{height:40px;position:relative;border-bottom:1px solid var(--line)}
.gt-n{height:30px;display:flex;align-items:center;justify-content:space-between;gap:6px;padding-inline:4px 10px;font-size:13px;border-bottom:1px solid var(--surface-2)}
.gt-n span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gt-n.done span{color:var(--muted)}.gt-n.cur span{font-weight:700}
.gt-n em{font-style:normal;font-family:var(--f-mono);font-size:11.5px}.gt-n .okc{color:var(--ok)}.gt-n .warnc{color:var(--warn)}
.gt-sc{overflow-x:auto}.gt-body{position:relative}
.gt-body .gt-hd b{position:absolute;top:2px;font-size:11px;color:var(--muted);font-family:var(--f-mono);text-align:center;font-weight:600}
.gt-body .gt-hd span{position:absolute;bottom:3px;font-size:11px;color:var(--faint);text-align:center}
.gt-rows{position:relative}
.gm{position:absolute;top:0;bottom:0;border-inline-end:1px solid var(--surface-2)}.gm.yr{border-inline-end-color:var(--line)}
.gt-r{position:relative;height:30px;border-bottom:1px solid var(--surface-2)}
.gb{position:absolute;top:10px;height:10px;border-radius:5px}
.gb.pl{background:color-mix(in srgb,var(--navy-3) 22%,transparent)}.gb.dn{background:color-mix(in srgb,var(--ok) 45%,transparent)}.gb.act{background:var(--ok)}
.gb.cur{background:color-mix(in srgb,var(--navy-3) 35%,transparent);box-shadow:inset 0 0 0 1px var(--navy-3)}.gb.prog{background:var(--navy-3)}
.gb.slip{background:repeating-linear-gradient(45deg,var(--bad) 0 3px,transparent 3px 6px);top:12px;height:6px}
.gt-today{position:absolute;top:-40px;bottom:0;width:2px;background:var(--red);z-index:2}
.g-leg i.cur{background:var(--navy-3)}.g-leg i.act{background:var(--ok)}.g-leg i.slip{background:repeating-linear-gradient(45deg,var(--bad) 0 3px,transparent 3px 6px)}.g-leg i.td{background:var(--red);width:3px;height:12px}
.tl1{position:relative;padding:26px 8px 6px}
.tl1-ax{position:relative;height:16px;margin-top:12px}.tl1-ax span.y{color:var(--muted);font-weight:700}.tl1-ax span{position:absolute;transform:translateX(50%);font-size:10.5px;color:var(--faint);white-space:nowrap;text-align:center;line-height:1.1}.tl1-ax b{display:block;color:var(--muted);font-size:10.5px;font-family:var(--f-mono);position:absolute;bottom:100%;left:50%;transform:translateX(-50%)}
.tl1-bar{position:relative;height:6px;background:var(--surface-2);border-radius:3px}
.tl1-fill{position:absolute;top:0;bottom:0;right:0;background:color-mix(in srgb,var(--navy-3) 30%,transparent);border-radius:3px}
.tl1-yr{position:absolute;top:-5px;width:1px;height:16px;background:var(--line)}
.tl1-today{position:absolute;top:-9px;width:2px;height:24px;background:var(--red);transform:translateX(50%)}
.tdot{position:absolute;top:50%;transform:translate(50%,-50%);z-index:1}.tdot i{display:block;width:12px;height:12px;border-radius:50%;background:var(--surface);border:2px solid var(--navy-3)}
.tdot.done i{background:var(--ok);border-color:var(--ok)}.tdot.late i{background:var(--warn);border-color:var(--warn)}.tdot.cur i{width:16px;height:16px;background:var(--red);border-color:var(--red);box-shadow:0 0 0 4px color-mix(in srgb,var(--red) 20%,transparent)}
.tdot.fc i{width:9px;height:9px;border:2px dashed var(--bad);background:transparent}
.tdot b{position:absolute;left:50%;transform:translateX(-50%);font-size:10.5px;font-family:var(--f-mono);color:var(--muted);font-weight:600}.tdot.up b{bottom:16px}.tdot.dn b{top:16px}.tdot.cur b{color:var(--red)}
.tl1-now{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;border-top:1px solid var(--surface-2);padding-top:8px}
.sline .gt{margin-top:12px}
.nav .nv{padding:11px 12px;font-size:15px}
.subnav{display:flex;gap:6px;margin:-6px 0 18px;flex-wrap:wrap}.subnav button{all:unset;cursor:pointer;padding:7px 14px;border-radius:20px;font-weight:600;font-size:13.5px;color:var(--muted);background:var(--surface);border:1px solid var(--line)}
.subnav button:hover{color:var(--fg)}.subnav button.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.scard{display:grid;grid-template-columns:1.1fr 1.3fr 1.1fr .9fr;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);margin:16px 0 6px;overflow:hidden}
.sc{padding:14px 18px;display:flex;flex-direction:column;gap:6px;border-inline-start:1px solid var(--line);min-width:0}.sc:first-child{border:0}
.sc small{font-size:11.5px;font-weight:700;color:var(--faint);letter-spacing:.3px}.sc b{font-size:15px}.sc .bar{margin-top:2px}
.sc ul{margin:0;padding-inline-start:16px;font-size:13.5px;display:flex;flex-direction:column;gap:2px}
.sc .att{all:unset;cursor:pointer;font-size:13.5px;font-weight:700;padding:2px 0}.sc .att.bad{color:var(--bad)}.sc .att.warn{color:var(--warn)}.sc .att:hover{text-decoration:underline}
.sc .okc{color:var(--ok);font-size:13.5px}.sc span{font-size:13px;color:var(--muted)}
.ptabs{margin-top:14px}.ptabs button{font-size:15px;padding:10px 16px}
.subtabs{display:flex;gap:4px;margin:-4px 0 12px}.subtabs button{all:unset;cursor:pointer;padding:5px 12px;border-radius:6px;font-size:13px;font-weight:600;color:var(--muted)}.subtabs button.on{background:var(--surface-2);color:var(--fg)}
details.more{position:relative}details.more summary{list-style:none;padding:8px 14px}details.more summary::-webkit-details-marker{display:none}
.more-m{position:absolute;inset-inline-end:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(6,24,57,.15);z-index:15;min-width:220px;padding:6px;display:flex;flex-direction:column}
.more-m button,.more-m a{all:unset;cursor:pointer;padding:9px 12px;border-radius:7px;font-size:14px;color:var(--fg)}.more-m button:hover,.more-m a:hover{background:var(--surface-2)}
@media (max-width:1100px){.scard{grid-template-columns:1fr 1fr}.sc:nth-child(3){border:0}}
.stepper{margin:10px 0 12px;gap:4px}.step{padding:6px 10px;gap:4px;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap}
.step .k .chip{display:none}.step .nm{font-size:13px;flex:1}.step .bar{flex-basis:100%;height:3px}.step.done .nm::after{content:" ✓";color:var(--ok)}
.es{padding:6px 6px;gap:4px}

/* ===== macOS look (html[data-look="mac"]) ===== */
.lg-w{display:block}.lg-n{display:none}.nav .cnt{white-space:nowrap}.lookbtn{all:unset;cursor:pointer;font-size:12px;color:var(--rail-muted);padding:4px 0;text-decoration:underline;align-self:flex-start}
.nv .ic{display:inline-flex;width:18px;height:18px;margin-inline-end:10px;opacity:.85}.nv .ic svg{width:18px;height:18px}.nv>span:first-child{display:flex;align-items:center}
html[data-look="mac"]{--acc:#2457c5;--acc-soft:rgba(36,87,197,.12);
  --bg:#f5f5f7;--surface:#ffffff;--surface-2:#f2f2f5;--line:rgba(0,0,0,.08);--fg:#1d1d1f;--muted:#6e6e73;--faint:#a1a1a6;
  --info:#2457c5;--info-soft:rgba(36,87,197,.10);--ok:#1e9a4e;--ok-soft:rgba(48,176,90,.13);--warn:#c27c0e;--warn-soft:rgba(255,159,10,.14);--bad:#e0262e;--bad-soft:rgba(255,59,48,.10);
  --navy-3:#2457c5;--r:14px;--scrim:rgba(0,0,0,.2);
  --f-body:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Hebrew","Assistant",system-ui,sans-serif;--f-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Hebrew","Rubik",system-ui,sans-serif}
@media (prefers-color-scheme: dark){html[data-look="mac"]:not([data-theme="light"]){--bg:#1c1c1e;--surface:#2c2c2e;--surface-2:#3a3a3c;--line:rgba(255,255,255,.09);--fg:#f5f5f7;--muted:#a1a1a6;--faint:#6e6e73;--acc:#4f8bff;--acc-soft:rgba(79,139,255,.18);--navy-3:#4f8bff;--info:#6ea0ff;--info-soft:rgba(79,139,255,.16)}}
html[data-look="mac"] body{-webkit-font-smoothing:antialiased;letter-spacing:-.01em}
html[data-look="mac"] h1{font-weight:700;letter-spacing:-.02em}
html[data-look="mac"] .rail{background:rgba(236,236,240,.72);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);color:var(--fg);border-inline-start:1px solid var(--line);gap:12px}
@media (prefers-color-scheme: dark){html[data-look="mac"]:not([data-theme="light"]) .rail{background:rgba(44,44,48,.75)}html[data-look="mac"]:not([data-theme="light"]) .lg-n{display:none!important}html[data-look="mac"]:not([data-theme="light"]) .lg-w{display:block!important}}
html[data-look="mac"] .lg-w{display:none}html[data-look="mac"] .lg-n{display:block;mix-blend-mode:multiply}
html[data-look="mac"] .brand{border:0;padding-inline:6px}html[data-look="mac"] .brand span{color:var(--muted)}
html[data-look="mac"] .who label{color:var(--muted)}html[data-look="mac"] .who select{background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:8px}
html[data-look="mac"] .addbtn{background:var(--acc);border-radius:9px;box-shadow:0 1px 2px rgba(0,0,0,.12)}
html[data-look="mac"] .aibtn{color:var(--fg);border-color:var(--line);background:var(--surface)}html[data-look="mac"] .aibtn:hover,html[data-look="mac"] .aibtn.on{background:var(--acc-soft);border-color:transparent}
html[data-look="mac"] .qps{background:rgba(0,0,0,.05);border:0;color:var(--muted);border-radius:8px}html[data-look="mac"] .qps kbd{border-color:var(--line)}
html[data-look="mac"] .nav button{color:var(--fg);border-radius:7px;font-weight:500}
html[data-look="mac"] .nav button:hover{background:rgba(0,0,0,.05)}
html[data-look="mac"] .nav button.on{background:var(--acc-soft);color:var(--acc);box-shadow:none;font-weight:600}
html[data-look="mac"] .nav .sep{color:var(--faint);font-weight:600;letter-spacing:0}
html[data-look="mac"] .nav .cnt{background:transparent;color:var(--muted);font-family:var(--f-body);font-size:12.5px}html[data-look="mac"] .nav .cnt.hot{background:var(--bad);color:#fff}
html[data-look="mac"] .rail .foot,html[data-look="mac"] .lookbtn{color:var(--muted)}
html[data-look="mac"] .panel,html[data-look="mac"] .card,html[data-look="mac"] .kpi,html[data-look="mac"] .task,html[data-look="mac"] .trow,html[data-look="mac"] .pcard,html[data-look="mac"] .ftree,html[data-look="mac"] .r-edit{border:0;box-shadow:0 1px 2px rgba(0,0,0,.04),0 6px 20px rgba(0,0,0,.05)}
html[data-look="mac"] .task,html[data-look="mac"] .trow,html[data-look="mac"] .pcard{border-radius:10px}
html[data-look="mac"] .task.late,html[data-look="mac"] .trow.late{box-shadow:inset -3px 0 0 var(--bad),0 1px 2px rgba(0,0,0,.04)}
html[data-look="mac"] .col{background:rgba(0,0,0,.035)}html[data-look="mac"] .col.exec{background:var(--acc-soft);color:var(--fg)}html[data-look="mac"] .col.exec .col-h .idx{color:var(--muted)}
html[data-look="mac"] .tbl th{color:var(--muted);font-weight:600;font-size:12px;border-bottom:1px solid var(--line)}html[data-look="mac"] .tbl td{border-bottom:1px solid var(--line)}
html[data-look="mac"] .tbl tr.row:hover td,html[data-look="mac"] .qtab tbody tr:hover{background:var(--acc-soft)}
html[data-look="mac"] .chip{border-radius:6px;font-weight:600}
html[data-look="mac"] .btn{background:var(--acc);border-radius:8px;font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.12)}
html[data-look="mac"] .btn.ghost{background:var(--surface);color:var(--fg);border:1px solid var(--line);box-shadow:0 1px 1px rgba(0,0,0,.04)}
html[data-look="mac"] .btn.navy{background:var(--fg);color:var(--surface)}
html[data-look="mac"] .btn.danger{color:var(--bad);background:var(--surface)}
html[data-look="mac"] .mini{border-radius:6px;border-color:var(--line);font-weight:500}
html[data-look="mac"] .inp,html[data-look="mac"] .sel{border-radius:8px;border-color:rgba(0,0,0,.14);transition:box-shadow .15s}
html[data-look="mac"] .inp:focus,html[data-look="mac"] .sel:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-soft)}
html[data-look="mac"] .subnav{background:rgba(0,0,0,.06);border-radius:9px;padding:2px;display:inline-flex;gap:0}
html[data-look="mac"] .subnav button{border:0;background:transparent;border-radius:7px;color:var(--fg);font-weight:500;padding:5px 14px}
html[data-look="mac"] .subnav button.on{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px rgba(0,0,0,.15)}
html[data-look="mac"] .ptabs,html[data-look="mac"] .tabsbar{border-bottom:0;background:rgba(0,0,0,.06);border-radius:9px;padding:2px;display:inline-flex;gap:0;max-width:100%}
html[data-look="mac"] .tabsbar button{border-bottom:0;border-radius:7px;padding:6px 18px;font-weight:500;color:var(--fg);font-size:14px}
html[data-look="mac"] .tabsbar button.on{background:var(--surface);box-shadow:0 1px 3px rgba(0,0,0,.15);border:0}
html[data-look="mac"] .scard{background:none;border:0;gap:12px;overflow:visible}
html[data-look="mac"] .sc{background:var(--surface);border:0!important;border-radius:14px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 6px 20px rgba(0,0,0,.05)}
html[data-look="mac"] .step{border:0;background:var(--surface);box-shadow:0 1px 2px rgba(0,0,0,.05)}html[data-look="mac"] .step.done{background:rgba(0,0,0,.035)}html[data-look="mac"] .step.cur{box-shadow:0 0 0 2px var(--acc)}html[data-look="mac"] .step.sel{outline:2px solid var(--acc)}
html[data-look="mac"] .es{background:rgba(0,0,0,.04)}html[data-look="mac"] .es.d{background:var(--acc-soft);color:var(--fg)}html[data-look="mac"] .es.d .p{color:var(--muted)}html[data-look="mac"] .es.c{background:var(--acc);box-shadow:none}html[data-look="mac"] .es.sel{outline-color:var(--acc)}
html[data-look="mac"] .bar{background:rgba(0,0,0,.07);border-radius:4px}html[data-look="mac"] .bar i{background:var(--acc);border-radius:4px}html[data-look="mac"] .col.exec .bar i,html[data-look="mac"] .exec-strip .bar i{background:var(--acc)}
html[data-look="mac"] .scrim{background:rgba(0,0,0,.18);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
html[data-look="mac"] .drawer{top:12px;bottom:12px;left:12px;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.25);animation:sheetIn .22s ease-out}
html[data-look="mac"] .aipane{top:12px;bottom:12px;left:12px;border-radius:14px;border:0;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.18)}
html[data-look="mac"] .ai-h{background:var(--surface);color:var(--fg);border-bottom:1px solid var(--line)}html[data-look="mac"] .ai-h small{color:var(--muted)}html[data-look="mac"] .ai-h .x{color:var(--muted)}
html[data-look="mac"] .ai-m.u{background:var(--acc)}
html[data-look="mac"] .toast{background:rgba(30,30,32,.88);backdrop-filter:blur(20px);border-radius:12px}
html[data-look="mac"] .hint{border-radius:10px}html[data-look="mac"] .gate{border-radius:12px}
html[data-look="mac"] .more-m{border:0;border-radius:10px;backdrop-filter:blur(30px);background:color-mix(in srgb,var(--surface) 90%,transparent)}
html[data-look="mac"] .back{color:var(--acc)}
html[data-look="mac"] .kpi .n{font-weight:700}
@keyframes sheetIn{from{opacity:0;transform:translateY(-8px) scale(.99)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){html[data-look="mac"] .drawer{animation:none}}
