.vnd{max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.vnd-card{background:transparent;border:1px solid var(--hairline);border-radius:20px;box-shadow:none;padding:16px 18px}.vnd-header-top{justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.vnd-header-top,.vnd-title{display:flex;align-items:center}.vnd-title{gap:13px}.vnd-title-ico{width:44px;height:44px;border-radius:100px;background:var(--panel);border:none;color:var(--ink);box-shadow:var(--shadow-float);display:flex;align-items:center;justify-content:center}.vnd-title h1{font-size:17px}.vnd-title p{margin:2px 0 0;font-size:13px;color:var(--muted)}.vnd-header-actions{display:flex;gap:8px;flex-wrap:wrap}.vnd-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ink);background:transparent;color:var(--ink);border-radius:32px;padding:9px 18px;font-size:12.5px;font-weight:500}.vnd-btn:hover{background:var(--sage)}.vnd-btn.ghost{background:transparent;color:var(--muted);border-color:var(--hairline)}.vnd-btn.ghost:hover{background:var(--panel-alt);color:var(--ink)}.vnd-btn.gold{color:var(--gold,#9a7909);border-color:var(--gold,#9a7909)}.vnd-btn.gold:hover{background:rgba(154,121,9,.07)}.vnd-btn.solid{background:var(--ink);color:#fff;font-weight:600}.vnd-btn.solid:hover{background:#2d2d2d}.vnd-btn.sm{padding:7px 12px;font-size:12px}.vnd-btn:disabled{opacity:.5;cursor:default}.vnd-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}@media (max-width:900px){.vnd-stats{grid-template-columns:1fr 1fr}}.vnd-stat{position:relative;border:none;border-radius:16px;background:var(--panel);padding:16px;box-shadow:var(--shadow-card)}.vnd-stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.vnd-stat-label{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:500;color:var(--muted)}.vnd-dot{width:7px;height:7px;border-radius:2px;background:var(--sage-deep);transform:rotate(45deg)}.vnd-stat-chip{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center}.vnd-stat-chip.t-grey{background:var(--panel-alt);border:1px solid var(--line);color:var(--ink)}.vnd-stat-chip.t-sage{background:rgba(45,122,45,.06);border:1px solid rgba(45,122,45,.22);color:var(--green)}.vnd-stat-chip.t-amber{background:rgba(253,199,15,.1);border:1px solid rgba(253,199,15,.32);color:var(--gold,#9a7909)}.vnd-stat-chip.t-red{background:hsla(4,88%,70%,.07);border:1px solid hsla(4,88%,70%,.24);color:var(--red)}.vnd-stat-chip.t-blue{background:rgba(0,184,217,.06);border:1px solid rgba(0,184,217,.24);color:var(--blue)}.vnd-stat-value{font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--ink);line-height:1.1;margin-bottom:4px}.vnd-stat-sub{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted)}.vnd-stat-sub.up{color:var(--green)}.vnd-stat-sub.down{color:var(--red)}.vnd-sec-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.vnd-sec-head h2{font-size:17px}.vnd-sec-head p{margin:2px 0 0;font-size:12.5px;color:var(--muted)}.vnd-search{display:flex;align-items:center;gap:8px;height:38px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--shell-bg);color:var(--muted);min-width:220px}.vnd-search input{border:none;background:transparent;outline:none;font:inherit;font-size:13px;color:var(--ink);width:100%}.vnd-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.vnd-tab{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:500}.vnd-tab:hover{color:var(--ink)}.vnd-tab.on{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:600}.vnd-tab .vnd-tab-n{opacity:.6;margin-left:5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.vnd-table{width:100%;border-collapse:collapse}.vnd-tablewrap{overflow-x:auto}.vnd-table th{font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.vnd-table td{font-size:12.5px;color:var(--ink);padding:12px 10px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.vnd-table tbody tr:last-child td{border-bottom:none}.vnd-table tbody tr:hover td{background:rgba(223,233,223,.42)}.vnd-mono{font-family:var(--font-mono),monospace;font-size:11.5px;color:var(--muted)}.vnd-strong{font-weight:600}.vnd-muted{color:var(--muted)}.vnd-num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.vnd-cat{font-size:11px;font-weight:600;color:var(--ink);background:var(--panel-alt);border:1px solid var(--line);border-radius:999px;padding:3px 10px;white-space:nowrap}.vnd-act button{border:none;background:transparent;color:var(--muted);width:26px;height:26px;border-radius:7px}.vnd-act button:hover{background:var(--panel-alt);color:var(--ink)}.row-overdue td{background:#fff8f8}[data-theme=dark] .row-overdue td{background:rgba(192,57,43,.1)}.txt-red{color:var(--red);font-weight:700}.doc-type{font-family:var(--font-mono),monospace;font-size:10.5px;font-weight:700;letter-spacing:.5px;padding:2px 7px;border-radius:5px;background:var(--panel-alt);border:1px solid var(--line);color:var(--ink)}.doc-disc{font-size:11px;font-weight:600;text-transform:capitalize;color:var(--ink)}.status-pill{display:inline-flex;align-items:center;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:4px 10px;border-radius:999px;white-space:nowrap}.pill-green{background:#c8e6c9;color:#1b5e20}.pill-amber{background:#fff3cd;color:#7a5000}.pill-blue{background:#d6e4ef;color:#2c4a63}.pill-grey{background:hsla(0,0%,9%,.06);color:var(--muted)}.pill-red{background:#f7d4d0;color:#7d241a}.vnd-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}@media (max-width:1100px){.vnd-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.vnd-grid{grid-template-columns:1fr}}.vnd-grid.g3{grid-template-columns:repeat(3,1fr)}@media (max-width:1000px){.vnd-grid.g3{grid-template-columns:1fr 1fr}}.vnd-supcard{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);padding:14px;display:flex;flex-direction:column;gap:12px}.vnd-supcard-top{display:flex;align-items:center;gap:10px}.vnd-logo{width:38px;height:38px;border-radius:10px;background:var(--sage);color:#2c402c;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0}.vnd-supcard-id{flex:1 1;min-width:0}.vnd-supcard-id b{display:block;font-size:13px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vnd-supcard-id span{font-size:11px;color:var(--muted)}.vnd-supcard-meta{display:flex;flex-direction:column;gap:5px}.vnd-supcard-meta span{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vnd-supcard-meta svg{flex-shrink:0;color:var(--ink)}.vnd-supcard-foot{justify-content:space-between;padding-top:10px;border-top:1px solid var(--line-soft)}.dropzone,.vnd-supcard-foot{display:flex;align-items:center;gap:8px}.dropzone{border:1.5px dashed var(--card-border);border-radius:var(--radius);background:var(--panel-alt);padding:30px;text-align:center;flex-direction:column}.dropzone .dz-ico{width:52px;height:52px;border-radius:14px;background:var(--sage);color:#2c402c;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.dropzone h3{font-size:15px}.dropzone p{margin:0;font-size:12.5px;color:var(--muted);max-width:460px}.dz-chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:6px}.dz-chip{font-size:10.5px;font-weight:600;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 10px}.dz-chip,.out-card{background:var(--panel)}.out-card{border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px;flex-direction:column}.out-card,.out-top{display:flex;gap:10px}.out-top{align-items:flex-start}.out-ico{width:36px;height:36px;border-radius:10px;background:var(--panel-alt);border:1px solid var(--line);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.out-id{flex:1 1;min-width:0}.out-id b{display:block;font-size:13px;font-weight:600;color:var(--ink)}.out-id span{font-size:11px;color:var(--muted)}.out-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid var(--line-soft)}.out-fmt{font-family:var(--font-mono),monospace;font-size:10.5px;color:var(--muted)}.bars{display:flex;flex-direction:column;gap:12px}.bar-row{display:grid;grid-template-columns:160px 1fr 84px;align-items:center;grid-gap:12px;gap:12px}@media (max-width:700px){.bar-row{grid-template-columns:120px 1fr 70px}}.bar-label{font-size:12.5px;color:var(--ink)}.bar-track{height:12px;border-radius:6px;background:var(--panel-alt);overflow:hidden}.bar-fill{height:100%;border-radius:6px;background:var(--sage-deep)}.bar-fill.amber{background:var(--amber-bright)}.bar-fill.red{background:var(--red)}.bar-fill.green{background:var(--green)}.bar-val{font-size:12px;font-weight:600;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink)}.gantt{display:flex;flex-direction:column;gap:2px}.gantt-scale{display:grid;grid-template-columns:200px 1fr;grid-gap:12px;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--line);margin-bottom:6px}.gantt-months{display:grid;grid-auto-flow:column;grid-auto-columns:1fr}.gantt-months span{font-size:10px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--muted);text-align:center}.gantt-row{display:grid;grid-template-columns:200px 1fr;grid-gap:12px;gap:12px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line-soft)}.gantt-row:last-child{border-bottom:none}.gantt-label{font-size:12.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-label small{display:block;font-size:10.5px;color:var(--muted)}.gantt-track{position:relative;height:22px;background:var(--panel-alt);border-radius:6px}.gantt-bar{position:absolute;top:3px;height:16px;border-radius:5px;background:var(--sage-deep);display:flex;align-items:center;padding:0 7px}.gantt-bar span{font-size:9.5px;font-weight:700;color:#2c402c;white-space:nowrap}.gantt-bar.amber{background:var(--amber-bright)}.gantt-bar.amber span{color:#fff}.gantt-bar.red{background:var(--red)}.gantt-bar.red span{color:#fff}.gantt-bar.done{background:var(--green)}.gantt-bar.done span{color:#fff}.vnd-2col{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:900px){.vnd-2col{grid-template-columns:1fr}}.vnd-kv{display:grid;grid-template-columns:auto 1fr;grid-gap:8px 16px;gap:8px 16px;font-size:12.5px}.vnd-kv dt{color:var(--muted)}.vnd-kv dd{margin:0;text-align:right;font-weight:600;color:var(--ink)}.tsk-av{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;flex:0 0 26px;font-size:10.5px;font-weight:700;color:#fff;letter-spacing:.2px}.tsk-av-none{background:var(--panel-alt);border:1px dashed var(--border-strong);color:var(--muted)}.av-a{background:#2c402c}.av-b{background:#2980b9}.av-c{background:#8a6d3b}.av-d{background:#6b4e9a}.av-e{background:#b23b3b}.av-f{background:#3b8a7a}.tsk-pri{font-size:9.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:3px 8px;border-radius:999px;white-space:nowrap}.pri-red{background:rgba(192,57,43,.12);color:var(--red)}.pri-blue{background:rgba(41,128,185,.12);color:var(--blue)}.pri-amber{background:rgba(245,197,24,.18);color:var(--amber)}.pri-grey{background:hsla(0,0%,9%,.06);color:var(--muted)}.st-pending{background:var(--muted)}.st-prog{background:var(--blue)}.st-blocked{background:var(--amber-bright)}.st-done{background:var(--green)}.tsk-badge{font-size:9.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:4px 9px;border-radius:999px}.tsk-badge.st-pending{background:hsla(0,0%,9%,.06);color:var(--muted)}.tsk-badge.st-prog{background:rgba(41,128,185,.14);color:var(--blue)}.tsk-badge.st-blocked{background:rgba(245,197,24,.2);color:var(--amber)}.tsk-badge.st-done{background:rgba(45,122,45,.14);color:var(--green)}.tsk-controls{display:flex;align-items:center;gap:10px}.tsk-filter{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-strong);border-radius:9px;padding:0 10px;color:var(--muted);background:var(--panel)}.tsk-filter select{border:none;background:transparent;font:inherit;font-size:13px;color:var(--ink);padding:8px 4px;outline:none}.tsk-viewtog{display:inline-flex;border:1px solid var(--border-strong);border-radius:9px;overflow:hidden}.tsk-viewtog button{display:inline-flex;align-items:center;gap:5px;border:none;background:var(--panel);color:var(--muted);font-size:12.5px;font-weight:600;padding:8px 12px}.tsk-viewtog button.on{background:var(--ink);color:#fff}.tsk-board{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}@media (max-width:1000px){.tsk-board{grid-template-columns:1fr 1fr}}@media (max-width:620px){.tsk-board{grid-template-columns:1fr}}.tsk-col{background:var(--panel-alt);border:1px solid var(--line);border-radius:12px;padding:10px;min-height:120px}.tsk-col-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--ink);margin-bottom:10px}.tsk-col-dot{width:9px;height:9px;border-radius:50%;flex:0 0 9px}.tsk-col-n{margin-left:auto;font-size:11px;font-weight:700;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:1px 8px}.tsk-col-body{display:flex;flex-direction:column;gap:9px}.tsk-card{background:var(--panel);border:1px solid var(--card-border);border-radius:10px;padding:11px 12px;box-shadow:var(--shadow-sm);cursor:-webkit-grab;cursor:grab}.tsk-card:active{cursor:-webkit-grabbing;cursor:grabbing}.tsk-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.tsk-ref{font-family:var(--font-mono),monospace;font-size:11px;color:var(--muted)}.tsk-card-title{font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.3}.tsk-card-detail{font-size:12px;color:var(--muted);line-height:1.4;margin-top:3px}.tsk-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.tsk-due{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted)}.tsk-empty{font-size:12px;color:var(--muted);text-align:center;padding:14px 0}.tsk-table{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden}.tsk-tr{display:grid;grid-template-columns:64px 1fr 150px 116px 110px 88px 120px;align-items:center;grid-gap:12px;gap:12px;padding:11px 16px}.tsk-thead{background:var(--panel-alt);border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}.tsk-row{border-bottom:1px solid var(--line-soft)}.tsk-row:last-child{border-bottom:none}.tsk-grow{min-width:0;display:flex;flex-direction:column}.tsk-grow b{font-size:13px;font-weight:600;color:var(--ink)}.tsk-grow small{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tsk-owner{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink)}.tsk-mono{font-family:var(--font-mono),monospace;font-size:11.5px;color:var(--muted)}.tsk-dim,.wl-legend{font-size:12px;color:var(--muted)}.wl-legend{display:flex;align-items:center;gap:14px}.wl-legend span{display:inline-flex;align-items:center;gap:6px}.wl-key{width:12px;height:12px;border-radius:3px;display:inline-block}.wl-matrix{display:grid;grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.wl-corner,.wl-whead{background:var(--panel-alt);font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--muted);padding:12px}.wl-whead{text-align:center}.wl-person{background:var(--panel);display:flex;align-items:center;gap:10px;padding:10px 12px}.wl-person-id{display:flex;flex-direction:column;min-width:0}.wl-person-id b{font-size:13px;font-weight:600;color:var(--ink)}.wl-person-id small{font-size:11px;color:var(--muted)}.wl-cell{background:var(--panel);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 8px}.wl-hrs{font-size:13px;font-weight:600;color:var(--ink)}.wl-bar{width:100%;height:5px;background:hsla(0,0%,9%,.08);overflow:hidden}.wl-bar,.wl-bar i{border-radius:999px}.wl-bar i{display:block;height:100%;background:var(--ink)}.wl-none .wl-hrs{color:var(--muted)}.wl-ok{background:rgba(45,122,45,.07)}.wl-ok .wl-bar i{background:var(--green)}.wl-full{background:rgba(245,197,24,.12)}.wl-full .wl-bar i{background:var(--amber-bright)}.wl-over{background:rgba(192,57,43,.1)}.wl-over .wl-hrs{color:var(--red)}.wl-over .wl-bar i{background:var(--red)}.wl-key.wl-ok{background:var(--green)}.wl-key.wl-full{background:var(--amber-bright)}.wl-key.wl-over{background:var(--red)}.wl-loadcell{font-weight:700}.tsk-gantt{margin-top:2px}.tsk-gantt .gantt-label{display:flex;flex-direction:column}.tsk-dot{width:7px;height:7px;border-radius:50%;flex:0 0 7px;display:inline-block}.tsk-cal{border:1px solid var(--line);border-radius:12px;overflow:hidden}.tsk-cal-head{display:grid;grid-template-columns:repeat(7,1fr);background:var(--panel-alt);border-bottom:1px solid var(--line)}.tsk-cal-head span{padding:8px;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);text-align:center}.tsk-cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.tsk-cal-cell{min-height:96px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:6px;display:flex;flex-direction:column;gap:4px}.tsk-cal-cell:nth-child(7n){border-right:none}.tsk-cal-cell.muted{background:var(--panel-alt)}.tsk-cal-date{font-size:11px;font-weight:600;color:var(--muted)}.tsk-cal-chip{display:flex;align-items:center;gap:5px;font-size:10.5px;line-height:1.3;background:var(--panel-alt);border:1px solid var(--line);border-radius:6px;padding:3px 6px;color:var(--ink);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tsk-cal-cell.muted .tsk-cal-chip{background:var(--panel)}.vnd-stats.kpi8{grid-template-columns:repeat(8,1fr)}@media (max-width:1180px){.vnd-stats.kpi8{grid-template-columns:repeat(4,1fr)}}@media (max-width:640px){.vnd-stats.kpi8{grid-template-columns:1fr 1fr}}.vnd-stats.kpi8 .vnd-stat{padding:11px 12px}.vnd-stats.kpi8 .vnd-stat-value{font-size:21px}.vnd-stats.kpi8 .vnd-stat-label{font-size:11px}.vnd-stats.kpi8 .vnd-stat-chip{width:26px;height:26px;border-radius:8px}.vnd.reg-page{height:100%}.reg-card{flex:1 1;min-height:0;display:flex;flex-direction:column}.reg-body{flex:1 1;min-height:0;overflow:auto}.reg-body .vnd-tablewrap{overflow:visible}.reg-body .vnd-table th{border-bottom:none;box-shadow:0 1px 0 var(--line)}.reg-body .gantt-scale,.reg-body .vnd-table th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--panel)}.reg-body .gantt-scale{margin-bottom:0;padding-bottom:6px}.reg-scroll{flex:1 1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:16px}.reg-scroll .vnd-2col,.reg-scroll>.vnd-card{flex-shrink:0}.reg-body .tsk-cal,.reg-body .tsk-table,.reg-body .wl-matrix{overflow:visible}.reg-body .tsk-cal-head,.reg-body .tsk-thead{border-radius:12px 12px 0 0}.reg-body .tsk-cal-head,.reg-body .tsk-thead,.reg-body .wl-corner,.reg-body .wl-whead{position:-webkit-sticky;position:sticky;top:0;z-index:2}@media (max-width:900px){.vnd.reg-page{height:auto}}.modal-overlay{position:fixed;inset:0;z-index:300;background:hsla(0,0%,8%,.45);display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:var(--panel);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:0 24px 60px rgba(0,0,0,.28);width:min(760px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:20px 22px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.modal-head h2{font-size:17px}.modal-head p{margin:2px 0 0;font-size:12.5px;color:var(--muted)}.modal-x{border:none;background:transparent;color:var(--muted);width:30px;height:30px;border-radius:8px;flex-shrink:0}.modal-x:hover{background:var(--panel-alt);color:var(--ink)}.modal-docno{display:flex;flex-direction:column;gap:3px;background:var(--panel-alt);border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin-bottom:14px}.modal-docno span{font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.modal-docno b{font-family:var(--font-mono),monospace;font-size:14px;color:var(--ink)}.modal-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:10px 12px;gap:10px 12px}.mf{display:flex;flex-direction:column;gap:4px;min-width:0}.mf label{font-size:10.5px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;color:var(--muted)}.mf input,.mf select{height:36px;border:1px solid var(--border-strong);border-radius:9px;background:var(--panel);color:var(--ink);font:inherit;font-size:13px;padding:0 10px;outline:none;width:100%}.mf input:focus,.mf select:focus{border-color:var(--ink)}.mf input:disabled{background:var(--panel-alt);color:var(--muted)}.mf.c2{grid-column:span 2}.mf.c3{grid-column:span 3}.mf.c6{grid-column:span 6}.modal-warn{margin:10px 0 0;font-size:12px;font-weight:600;color:var(--red)}.modal-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line-soft)}@media (max-width:700px){.modal-grid{grid-template-columns:repeat(2,1fr)}.mf.c3,.mf.c6{grid-column:span 2}}.reg-tabgroups{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}.reg-tabgroup{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.reg-tabgroup>b{font-size:9.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);margin-right:2px}.reg-prog{display:flex;align-items:center;gap:8px;min-width:110px}.reg-prog .bar-track{flex:1 1;height:6px}.reg-prog b{font-size:11px;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gantt-bar.idle{background:#d9d9d3}.gantt-bar.idle span{color:var(--ink)}[data-theme=dark] .gantt-bar.idle{background:hsla(0,0%,100%,.18)}[data-theme=dark] .gantt-bar.idle span{color:#fff}.pick-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);padding:13px 14px}.pick-card b{display:block;font-size:12.5px;font-weight:600;color:var(--ink)}.pick-card small{font-size:10.5px;color:var(--muted)}.pick-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.reg-h3{font-size:14px;margin-bottom:10px}.reg-note{margin:0 0 10px;font-size:12px;color:var(--muted)}.reg-tree{font-family:var(--font-mono),monospace;font-size:11.5px;color:var(--ink);display:flex;flex-direction:column;gap:7px}.reg-tree span{display:flex;align-items:center;gap:7px}.reg-tree svg{color:var(--muted);flex-shrink:0}.reg-live{font-weight:600;color:#2d7a2d}.reg-live.muted{color:var(--muted,#525763);font-weight:500}.dash-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--hairline,#e3e2dd);border-radius:12px;margin-bottom:12px;background:var(--panel);box-shadow:var(--shadow-card)}.dash-cta-text{display:flex;flex-direction:column;gap:4px}.dash-cta-text b{font-size:14px}.dash-cta-text span{font-size:12.5px;color:var(--muted,#525763);max-width:420px}.dash-feed{display:flex;flex-direction:column;gap:2px}.dash-feed-row{display:flex;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px solid hsla(0,0%,9%,.06);font-size:13px}.dash-feed-row:last-child{border-bottom:none}.dash-feed-dot{width:8px;height:8px;border-radius:50%;background:#9aa0a6;flex:none}.dash-feed-dot.ev-created{background:#2d7a2d}.dash-feed-dot.ev-status_changed{background:#2980b9}.dash-feed-dot.ev-seeded{background:#b85a00}.dash-feed-text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-feed-text code{font-family:var(--mono,"Roboto Mono",monospace);font-size:12px}.dash-feed-time{color:var(--muted-soft,#7b8088);font-size:12px;flex:none}.eh{display:grid;grid-template-columns:1fr minmax(320px,38%);grid-gap:24px;gap:24px;align-items:start;margin-bottom:18px}.eh-left{display:flex;gap:22px;align-items:flex-start}.eh-tile{position:relative;flex:none;width:150px;height:190px;display:inline-flex;align-items:flex-end;justify-content:center;overflow:visible}.eh-tile.has-img img{width:100%;height:100%;object-fit:contain;object-position:bottom;-webkit-mask-image:linear-gradient(180deg,#000 86%,transparent);mask-image:linear-gradient(180deg,#000 86%,transparent)}.eh-tile.is-initials{align-items:center;background:radial-gradient(120% 100% at 50% 0,var(--sage,#dfe9df) 0,rgba(223,233,223,.45) 52%,transparent 100%);border-radius:22px 22px 50% 50%}.eh-tile-initials{font-style:normal;font-size:44px;font-weight:700;letter-spacing:.02em;color:var(--ink,#141414)}.eh-tile.uploadable{cursor:pointer}.eh-tile-hint{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;background:var(--ink,#141414);color:#fff;font-size:11px;font-weight:600;white-space:nowrap;opacity:0;transition:opacity .14s}.eh-tile:hover .eh-tile-hint{opacity:1}.eh-tile-busy{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:hsla(50,23%,95%,.82);border-radius:18px;font-size:12px;font-weight:600}.eh-err{font-size:11.5px;color:var(--danger,#c0392b);max-width:150px}.eh-id{flex-direction:column;min-width:0}.eh-id,.eh-pills{display:flex;gap:6px}.eh-pills{flex-wrap:wrap}.eh-pill{font-size:11px;font-weight:700;padding:3px 11px;border-radius:999px;border:1px solid var(--line);background:var(--panel,#fff)}.eh-pill.eh-green{color:#2d7a2d}.eh-pill.eh-amber{color:#b85a00}.eh-pill.eh-ink{color:var(--ink,#141414)}.eh-pill.eh-grey{color:var(--muted,#525763)}.eh-name{font-size:24px;font-weight:700;letter-spacing:-.02em;margin:0}.eh-sub{font-size:13px;color:var(--muted,#525763);margin:0 0 6px}.eh-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px 26px;gap:10px 26px}.eh-fact{display:flex;align-items:center;gap:10px;min-width:0}.eh-fact-ico{flex:none;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line);background:var(--panel,#fff);color:var(--muted,#525763)}.eh-fact>span:last-child{display:flex;flex-direction:column;min-width:0}.eh-fact small{font-size:11px;color:var(--muted-soft,#7b8088)}.eh-fact b{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eh-insights{background:var(--panel,#fff);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm,0 1px 3px hsla(0,0%,8%,.06));padding:16px}.eh-ins-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.eh-ins-ico{flex:none;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line);color:var(--muted,#525763)}.eh-ins-titles{flex:1 1;display:flex;flex-direction:column}.eh-ins-titles b{font-size:14px}.eh-ins-titles small{font-size:11.5px;color:var(--muted-soft,#7b8088)}.eh-ins-action{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--border-strong,hsla(0,0%,9%,.18));border-radius:999px;font-size:12px;font-weight:600;text-decoration:none;color:inherit}.eh-ins-action:hover{background:var(--sage,#dfe9df)}.eh-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.eh-metric{border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:4px;background:var(--panel,#fff)}.eh-metric-label{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700}.eh-dot{width:7px;height:7px;border-radius:2px;background:var(--ink,#141414)}.eh-dot.eh-green{background:#2d7a2d}.eh-dot.eh-amber{background:#b85a00}.eh-metric-value{font-size:19px;font-weight:700;letter-spacing:-.02em}.eh-metric-sub{font-size:11.5px;color:var(--muted,#525763)}.eh-bar{height:4px;background:var(--line);overflow:hidden;margin:4px 0 2px}.eh-bar,.eh-bar i{display:block;border-radius:999px}.eh-bar i{height:100%;background:var(--ink,#141414)}.eh-bar i.eh-green{background:#2d7a2d}.eh-bar i.eh-amber{background:#b85a00}.eh-metric-foot{font-size:11px;color:var(--muted-soft,#7b8088)}@media (max-width:1100px){.eh{grid-template-columns:1fr}}.eh-docref{display:grid;grid-template-columns:auto 1fr;grid-gap:6px 18px;gap:6px 18px;margin:0 0 10px;font-size:12.5px}.eh-docref dt{color:var(--muted-soft,#7b8088)}.eh-docref dd{margin:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eh-docref-foot{display:flex;justify-content:flex-end}@keyframes skel-shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.skel{display:inline-block;border-radius:6px;background:linear-gradient(90deg,hsla(0,0%,8%,.06) 25%,hsla(0,0%,8%,.11) 50%,hsla(0,0%,8%,.06) 75%);background-size:400px 100%;animation:skel-shimmer 1.3s linear infinite}.skel-line{height:11px;margin:4px 0}.skel-line.tall{height:18px}.skel-line.w24{width:24%}.skel-line.w32{width:32%}.skel-line.w40{width:40%}.skel-line.w48{width:48%}.skel-line.w56{width:56%}.skel-line.w70{width:70%}.skel-line.w80{width:80%}.skel-av{width:28px;height:28px;border-radius:50%;flex:none}.skel-chip{width:110px;height:32px;border-radius:10px}.skel-pill{width:84px;height:24px;border-radius:999px}.skel-row{display:flex;gap:8px}.skel-person{display:inline-flex;align-items:center;gap:8px;width:100%}[data-theme=dark] .skel{background:linear-gradient(90deg,hsla(51,23%,94%,.07) 25%,hsla(51,23%,94%,.13) 50%,hsla(51,23%,94%,.07) 75%);background-size:400px 100%}.dir-titlerow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.dir-person{display:inline-flex;align-items:center;gap:9px}.dir-person b{font-weight:600;white-space:nowrap}.dir-mail{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted,#525763);text-decoration:none}.dir-mail:hover{background:var(--sage,#dfe9df);color:var(--ink,#141414)}.dir-kebab{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:none;border-radius:7px;color:var(--muted-soft,#7b8088)}.dir-kebab:hover{background:var(--panel-alt,#f1f1ec);color:var(--ink,#141414)}.dir-foot{padding:10px 4px;font-size:11.5px;color:var(--muted-soft,#7b8088);border-top:1px solid var(--line);margin-top:4px}.rfi-row{cursor:pointer}.rfi-clip{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted)}.rfi-modal{width:min(680px,100%)}.rfi-ref{font-size:13px;color:var(--muted);margin-right:6px}.rfi-detail-grid,.rfi-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px 14px;gap:4px 14px}.rfi-form textarea,.rfi-modal textarea{border:1px solid var(--border-strong);border-radius:9px;padding:8px 10px;font:inherit;font-size:13px;background:var(--panel);color:var(--ink);resize:vertical}.rfi-static{font-size:13px;font-weight:600;padding:8px 0}.rfi-attach{display:flex;flex-wrap:wrap;gap:8px}.rfi-thumb{width:84px;height:84px;border:1px solid var(--hairline);border-radius:10px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:var(--panel-alt)}.rfi-thumb img{width:100%;height:100%;object-fit:cover}.rfi-thumb-add,.rfi-thumb-file{display:inline-flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted);font-size:10px}.rfi-thumb-add{cursor:pointer;border-style:dashed}.rfi-thumb-add:hover{background:var(--sage);color:var(--ink)}.rfi-thumb-add.muted{cursor:default;opacity:.55}.rfi-thumb-add.busy{opacity:.7;cursor:progress}.proj-list{display:flex;flex-direction:column;gap:8px}.proj-row{display:flex;align-items:center;gap:10px;padding:11px 10px;border:1px solid var(--hairline);border-radius:12px;background:var(--panel);text-align:left;font:inherit;color:inherit;box-shadow:var(--shadow-card)}.proj-row.on,.proj-row:hover{background:var(--sage)}.proj-row.on{border-color:var(--ink)}.proj-on{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--green);white-space:nowrap}.proj-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.cde-crumbs{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.cde-crumb{border:0;background:none;padding:0;cursor:pointer;font:inherit;font-weight:600;color:inherit}.cde-crumb:hover{text-decoration:underline}.cde-crumb-sep{margin:0 5px;color:var(--muted-soft,#6d727c)}.cde-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:10px;gap:10px}.cde-folder{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;border:1px solid var(--hairline,#e3e2dd);border-radius:12px;background:var(--card,#fff);cursor:pointer;text-align:left;font:inherit;transition:background .12s ease,border-color .12s ease}.cde-folder:hover{background:rgba(94,110,90,.06);border-color:rgba(94,110,90,.35)}.cde-folder-ico{color:var(--sage-ink,#5e6e5a)}.cde-folder-name{font-weight:600;font-size:13.5px;line-height:1.3}.cde-folder-sub{font-size:12px;color:var(--muted-soft,#6d727c)}.cde-file{display:inline-flex;align-items:center;gap:7px}.cde-open{padding:3px 10px;font-size:12px}.cde-skel{height:84px;border-radius:12px}.cde-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:34px 0;text-align:center;color:var(--muted-soft,#6d727c)}