.mkpi{--navy-dk: #0F2A4D;--navy: #1B3A6B;--blue: #1E5BD8;--ink: #0E3B5C;--ink2: #475569;--info: #6B7280;--info2: #94a3b8;--line: #E2E8F0;--surf: #F8FAFC;--ok: #10B981;--warn: #F59E0B;--err: #EF4444;--ok-bg: #ecfdf5;--warn-bg: #fffbeb;--err-bg: #fef2f2;--purple: #7c3aed;--orange: #F97316;--cyan: #0891b2;color:var(--ink);font-size:13px;line-height:1.5;max-width:880px;margin:0 auto;padding:14px 14px 96px}@media(min-width:1024px){.mkpi{padding-bottom:32px}}.mkpi .lang-zh{display:inline}.mkpi .lang-vi{display:inline;color:var(--info);font-style:italic;font-size:.92em;margin-left:4px}.mkpi .lang-vi:before{content:"· "}.mkpi.zh-only .lang-vi,.mkpi.vi-only .lang-zh{display:none}.mkpi.vi-only .lang-vi{color:inherit;font-style:normal;font-size:1em;margin-left:0}.mkpi.vi-only .lang-vi:before{content:""}.mkpi .bi-block .lang-vi{display:block;margin-left:0;margin-top:2px}.mkpi .bi-block .lang-vi:before{content:""}.mkpi.vi-only .bi-block .lang-vi{margin-top:0}.mkpi.zh-only .bi-block .lang-vi{display:none}.mkpi .lang-switch{display:inline-flex;gap:4px;background:#ffffff1f;padding:3px;border-radius:10px}.mkpi .lang-switch button{min-height:34px;padding:0 11px;border-radius:8px;border:0;cursor:pointer;font:inherit;font-size:12px;font-weight:800;color:#fff;background:transparent}.mkpi .lang-switch button:hover{background:#ffffff29}.mkpi .lang-switch button[aria-pressed=true]{background:#fff;color:var(--navy-dk)}.mkpi .lang-switch.on-light{background:var(--surf)}.mkpi .lang-switch.on-light button{color:var(--ink2)}.mkpi .lang-switch.on-light button:hover{background:#eef2f6}.mkpi .lang-switch.on-light button[aria-pressed=true]{background:var(--navy-dk);color:#fff}.mkpi .page-header{background:linear-gradient(135deg,var(--navy-dk),var(--navy));color:#fff;padding:16px 20px;border-radius:12px;margin-bottom:12px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.mkpi .page-header .avatar{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--blue),var(--cyan));display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800}.mkpi .page-header h1{font-size:18px;margin:0;font-weight:800}.mkpi .page-header .role{font-size:12px;opacity:.85;margin-top:3px}.mkpi .page-header .right{margin-left:auto;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.mkpi .page-header .period{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;background:#ffffff2e;padding:5px 11px;border-radius:6px;font-weight:700}.mkpi .banner{border-radius:11px;padding:13px 16px;margin-bottom:12px;font-size:12px;line-height:1.6}.mkpi .banner .ttl{font-size:13.5px;font-weight:800;margin:0 0 4px}.mkpi .banner.draft{background:linear-gradient(135deg,#fef3c7,#fed7aa);border:2px dashed var(--orange);color:#7c2d12}.mkpi .banner.preview{background:var(--warn-bg);border:1px solid #fcd34d;color:#92400e}.mkpi .summary{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:12px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.mkpi .summary .item{display:flex;flex-direction:column;align-items:center;flex:1;min-width:90px}.mkpi .summary .item .lab{font-size:11px;color:var(--info);font-weight:700;letter-spacing:.04em;text-align:center}.mkpi .summary .item .v{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:30px;font-weight:800;line-height:1;color:var(--ink);margin-top:4px;font-variant-numeric:tabular-nums}.mkpi .summary .item .v small{font-size:14px;color:var(--info);font-weight:500;margin-left:2px}.mkpi .summary .item.core .v{color:var(--blue)}.mkpi .summary .item.admin .v{color:var(--purple)}.mkpi .summary .item.total .v{font-size:36px;color:var(--ok)}.mkpi .summary .item.total.warn .v{color:var(--warn)}.mkpi .summary .item.total.err .v{color:var(--err)}.mkpi .summary .divider{width:1px;align-self:stretch;background:var(--line)}.mkpi .grade-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:8px;font-size:15px;font-weight:800;margin-top:4px}.mkpi .grade-badge.green{background:var(--ok-bg);color:#047857}.mkpi .grade-badge.amber{background:var(--warn-bg);color:#92400e}.mkpi .grade-badge.orange{background:#fff1e6;color:#9a3412}.mkpi .grade-badge.red{background:var(--err-bg);color:#b42318}.mkpi .section{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:12px}.mkpi .section>h2{font-size:14px;font-weight:800;margin:0 0 10px;color:var(--ink);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mkpi .section>h2 .total{margin-left:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--info);font-weight:700}.mkpi .section>h2 .total b{color:var(--ink);font-size:14px}.mkpi .section .lead{font-size:11.5px;color:var(--info);line-height:1.7;margin:-4px 0 10px}.mkpi .kpi-row{display:flex;align-items:flex-start;gap:11px;padding:11px 0;border-top:1px solid var(--line)}.mkpi .kpi-row:first-of-type{border-top:0}.mkpi .kpi-row .code{flex:0 0 auto;min-width:34px;height:24px;border-radius:6px;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;background:var(--surf);color:var(--ink2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .kpi-row.green .code{background:var(--ok-bg);color:#047857}.mkpi .kpi-row.yellow .code{background:var(--warn-bg);color:#92400e}.mkpi .kpi-row.red .code{background:var(--err-bg);color:#b42318}.mkpi .kpi-row .body{flex:1;min-width:0}.mkpi .kpi-row .ttl{font-size:12.5px;font-weight:800;color:var(--ink)}.mkpi .kpi-row .ttl .wt{margin-left:6px;font-size:10.5px;font-weight:700;color:var(--info2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .kpi-row .data{font-size:11.5px;color:var(--ink2);margin-top:3px;line-height:1.6}.mkpi .kpi-row .bar{height:5px;border-radius:3px;background:var(--line);margin-top:6px;overflow:hidden}.mkpi .kpi-row .bar .fill{height:100%;border-radius:3px;background:var(--ok)}.mkpi .kpi-row.yellow .bar .fill{background:var(--warn)}.mkpi .kpi-row.red .bar .fill{background:var(--err)}.mkpi .kpi-row .score{flex:0 0 auto;text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:17px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}.mkpi .kpi-row.red .score{color:var(--err)}.mkpi .kpi-row .score small{display:block;font-size:10px;color:var(--info);font-weight:500}.mkpi .state-chip{display:inline-flex;align-items:center;min-height:20px;padding:0 7px;border-radius:5px;font-size:10.5px;font-weight:800;margin-top:4px}.mkpi .state-chip.green{background:var(--ok-bg);color:#047857}.mkpi .state-chip.red{background:var(--err-bg);color:#b42318}.mkpi .state-chip.amber{background:var(--warn-bg);color:#92400e}.mkpi .state-chip.orange{background:#fff1e6;color:#9a3412}.mkpi .state-chip.violet{background:#f5f3ff;color:#6d28d9}.mkpi .state-chip.slate{background:var(--surf);color:var(--info)}.mkpi .kpi-row .why{margin-top:8px}.mkpi .kpi-row .why>summary{cursor:pointer;list-style:none;font-size:11px;font-weight:800;color:var(--blue);min-height:30px;display:inline-flex;align-items:center;gap:4px}.mkpi .kpi-row .why>summary::-webkit-details-marker{display:none}.mkpi .kpi-row .why[open]>summary{margin-bottom:6px}.mkpi .kpi-row .why .basis{background:var(--surf);border-radius:8px;padding:9px 11px;font-size:11.5px;color:var(--ink2);line-height:1.8}.mkpi .kpi-row .why .anomalies{margin-top:6px;font-size:10.5px;color:#9a3412}.mkpi .kpi-row .why .anomalies code{background:#fff1e6;border-radius:4px;padding:1px 5px;margin-left:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .kpi-table{width:100%;border-collapse:collapse;font-size:12px}.mkpi .kpi-table th,.mkpi .kpi-table td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.mkpi .kpi-table th{font-size:10.5px;color:var(--info);font-weight:800;white-space:nowrap}.mkpi .kpi-table td.score{text-align:right;white-space:nowrap;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums}.mkpi .kpi-table td.score small{color:var(--info);font-weight:500}.mkpi .kpi-table tr.zero td.score{color:var(--err)}.mkpi .kpi-table .code{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:20px;border-radius:5px;background:var(--surf);color:var(--ink2);font-size:10.5px;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;margin-right:6px}.mkpi .kpi-table .why{font-size:11px;color:var(--ink2);line-height:1.7}.mkpi .kpi-table .anomalies{margin-top:4px;font-size:10px;color:#9a3412}.mkpi .kpi-table .anomalies code{background:#fff1e6;border-radius:4px;padding:1px 4px;margin-right:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .kpi-table tfoot td{font-weight:800;background:var(--surf)}@media(max-width:719px){.mkpi .kpi-table,.mkpi .kpi-table tbody,.mkpi .kpi-table tr,.mkpi .kpi-table td{display:block;width:100%}.mkpi .kpi-table thead{display:none}.mkpi .kpi-table tr{border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px}.mkpi .kpi-table td{border:0;padding:3px 0}.mkpi .kpi-table td:before{content:attr(data-label);display:block;font-size:10px;font-weight:800;color:var(--info);letter-spacing:.04em;margin-bottom:2px}.mkpi .kpi-table td.ind:before,.mkpi .kpi-table td.score:before{content:none}.mkpi .kpi-table td.score{text-align:left;font-size:17px}.mkpi .kpi-table tfoot td{border-radius:10px}}.mkpi .matrix-wrap{overflow-x:auto}.mkpi .matrix{width:100%;border-collapse:collapse;font-size:12px;min-width:460px}.mkpi .matrix th,.mkpi .matrix td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums}.mkpi .matrix th{font-size:10.5px;color:var(--info);font-weight:800}.mkpi .matrix th:first-child,.mkpi .matrix td:first-child{text-align:left;position:sticky;left:0;background:#fff;font-family:inherit}.mkpi .matrix td.na{color:var(--info2);font-style:italic;font-family:inherit}.mkpi .matrix td.total{font-weight:800}.mkpi .matrix tr.current td,.mkpi .matrix tr.current td:first-child{background:var(--warn-bg)}.mkpi .grid-table{width:100%;border-collapse:collapse;font-size:12px;min-width:520px}.mkpi .grid-table th,.mkpi .grid-table td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums}.mkpi .grid-table th{font-size:10.5px;color:var(--info);font-weight:800}.mkpi .grid-table th:first-child,.mkpi .grid-table td:first-child{text-align:left;font-family:inherit;position:sticky;left:0;background:#fff}.mkpi .grid-table td.na{color:var(--info2);font-style:italic;font-family:inherit}.mkpi .grid-table td.ytd{font-weight:800;background:var(--surf)}.mkpi .empty-state{background:var(--surf);border-radius:9px;padding:12px 14px;font-size:11.5px;color:var(--info);line-height:1.7}.mkpi .trend{width:100%;border-collapse:collapse;font-size:12px}.mkpi .trend th,.mkpi .trend td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.mkpi .trend th{font-size:10.5px;color:var(--info);font-weight:800}.mkpi .trend td.num{text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.mkpi .trend tr.current td{background:var(--warn-bg)}.mkpi .trend .src{font-size:10.5px;line-height:1.5}.mkpi .notelist{margin:0;padding-left:18px}.mkpi .notelist li{font-size:11.5px;color:var(--ink2);line-height:1.8;margin-bottom:4px}.mkpi .footnote{font-size:11px;color:var(--info);line-height:1.75}.mkpi .panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 18px;text-align:center}.mkpi .panel.warn{background:var(--warn-bg);border-color:#fcd34d}.mkpi .panel.err{background:var(--err-bg);border-color:#fca5a5}.mkpi .panel h2{font-size:15px;font-weight:800;margin:0 0 8px;color:var(--ink)}.mkpi .panel p{font-size:12px;color:var(--ink2);line-height:1.8;margin:0 auto;max-width:46ch}.mkpi .skel{height:62px;border-radius:10px;background:var(--surf);margin-bottom:8px;animation:mkpi-pulse 1.4s ease-in-out infinite}@keyframes mkpi-pulse{0%,to{opacity:1}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.mkpi .skel{animation:none}}.mkpi .controls{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:12px}.mkpi .controls .lab{font-size:10.5px;font-weight:800;color:var(--info);letter-spacing:.06em}.mkpi .chiprow{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.mkpi .chip{min-height:38px;padding:0 12px;border-radius:9px;border:1px solid var(--line);background:#fff;color:var(--ink2);font:inherit;font-size:12px;font-weight:800;cursor:pointer}.mkpi .chip:hover{background:var(--surf)}.mkpi .chip[aria-pressed=true]{background:var(--navy-dk);color:#fff;border-color:var(--navy-dk)}.mkpi .monthnav{display:flex;align-items:center;gap:6px}.mkpi .monthnav .now{min-height:38px;min-width:104px;display:inline-flex;align-items:center;justify-content:center;background:var(--surf);border-radius:9px;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .monthnav button:disabled{opacity:.3;cursor:default}.mkpi :focus-visible{outline:3px solid rgba(30,91,216,.45);outline-offset:2px}.mkpi .chart-wrap{overflow-x:auto;margin:10px 0 4px}.mkpi .chart{display:block;width:100%;min-width:440px;height:auto}.mkpi .chart .grid{stroke:var(--line);stroke-width:1}.mkpi .chart .ref{stroke:var(--blue);stroke-width:1.5;stroke-dasharray:5 4;opacity:.7}.mkpi .chart .reflab{fill:var(--blue);font-size:11px;font-weight:800}.mkpi .chart .ax{fill:var(--info);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.mkpi .chart .bar{fill:var(--blue)}.mkpi .chart .bar.baseline{fill:var(--info2)}.mkpi .chart .bar.cur{fill:var(--navy-dk)}.mkpi .chart .bar.na{fill:none;stroke:var(--line);stroke-width:1;stroke-dasharray:4 4}.mkpi .chart .val{fill:var(--navy-dk);font-size:11.5px;font-weight:800;font-variant-numeric:tabular-nums}.mkpi .chart .val.na{fill:var(--info);font-weight:700}.mkpi .chart .mk{stroke:var(--orange);stroke-width:2.5;stroke-linecap:round}.mkpi .chart .mkval{fill:var(--orange);font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.mkpi .legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:10px;font-size:11px;font-weight:700;color:var(--info)}.mkpi .legend-item{display:inline-flex;align-items:center;gap:6px}.mkpi .legend .sw{width:12px;height:12px;border-radius:3px;flex:none}.mkpi .legend .sw.baseline{background:var(--info2)}.mkpi .legend .sw.draft,.mkpi .legend .sw.rev{background:var(--blue)}.mkpi .legend .sw.mk{background:var(--orange);height:3px;border-radius:2px}.mkpi .legend .sw.na{background:transparent;border:1px dashed var(--line)}.mkpi .summary .item.computed .v{color:var(--info)}.mkpi .trend td.num.sub{color:var(--info);font-weight:700}.mkpi .baseline-note{color:var(--ink2)}.mkpi .kpi-table.technical td.score.max,.mkpi .kpi-table.technical td.score.ratio{color:var(--info);font-weight:800}.mkpi .kpi-table.technical td.score.ratio{color:var(--navy-dk)}.mkpi .kpi-table td .ta{font-size:11px;color:var(--ink2);margin-bottom:4px;font-weight:700}.mkpi .grid-table td .state-chip{white-space:nowrap}.mkpi .notelist.covered li{color:var(--ink)}.kpi-rules-panel{margin:18px 0;padding:20px;border:2px solid #0b6477;border-radius:14px;background:#f8fcfd;overflow-wrap:anywhere}.kpi-rules-summary{cursor:pointer;font-size:18px;font-weight:800;color:#08485c;min-height:44px}.kpi-rules-panel header,.kpi-rules-panel article,.kpi-rules-panel footer{margin-top:18px}.kpi-rules-panel article{background:#fff;border:1px solid #cbdde3;border-radius:10px;padding:16px}.kpi-rules-panel h2{font-size:20px;font-weight:800;margin:12px 0}.kpi-rules-panel h3{font-size:17px;font-weight:750;margin:0 0 10px}.kpi-rules-panel p,.kpi-rules-panel li{line-height:1.75;margin:9px 0}.kpi-rules-panel ul{padding-left:22px;list-style:disc}.kpi-rules-panel a{display:inline-block;min-height:44px;padding:10px 0;text-decoration:underline;font-weight:700}.kpi-rules-weight{color:#075369;font-weight:750}.kpi-rules-version{color:#526773;font-size:12px}.mkpi{--adj-bg: #eff6ff;--adj-line: #93c5fd;--adj-ink: #1e40af;--ok-ink: #047857;--ok-line: #6ee7b7;--warn-ink: #92400e;--warn-line: #fcd34d;--err-ink: #b42318;--err-line: #fca5a5;--indigo: #4338ca;--btn-ok: #059669}.mkpi .page-header .head-text{min-width:0;flex:1 1 200px}.mkpi .page-header .team-link{display:inline-block;color:#fff;text-decoration:underline}.mkpi .page-header .monthnav{display:inline-flex;align-items:center;gap:4px;background:#ffffff24;border-radius:9px;padding:3px}.mkpi .page-header .monthnav button{border:0;background:transparent;color:#fff;font:inherit;font-weight:800;min-width:34px;min-height:34px;border-radius:7px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.mkpi .page-header .monthnav button:disabled{opacity:.35;cursor:default}.mkpi .page-header .monthnav .period{background:transparent;padding:0 4px;font-size:12px}@media(max-width:560px){.mkpi .page-header{padding:14px 16px}.mkpi .page-header .avatar{width:44px;height:44px;font-size:18px}.mkpi .page-header .right{margin-left:0;width:100%;flex-direction:row;justify-content:space-between;align-items:center}}.mkpi .staffrow,.mkpi .alex-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px}.mkpi .staffrow .lab{font-size:11px;font-weight:800;color:var(--info)}.mkpi .staffrow .chiprow{margin-top:0}.mkpi .alex-row .chip{display:inline-flex;align-items:center;text-decoration:none}.mkpi .chip.navy{background:var(--navy-dk);color:#fff;border-color:var(--navy-dk)}.mkpi .status-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;font-weight:800;color:var(--ok-ink);background:var(--ok-bg);border:1px solid var(--ok-line);border-radius:11px;padding:9px 14px}.mkpi .status-line.draft{color:#7c2d12;background:#fff7ed;border:2px dashed var(--orange)}.mkpi .status-line.err{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.mkpi .hero{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:720px){.mkpi .hero{grid-template-columns:1.3fr 1fr;align-items:center}.mkpi .hero .adj-banner{grid-column:1 / -1}}.mkpi .hero .lab{font-size:11px;color:var(--info);font-weight:700}.mkpi .hero-top{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.mkpi .total-v{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:40px;font-weight:800;line-height:1;color:var(--ok);font-variant-numeric:tabular-nums}.mkpi .total-v.warn{color:var(--warn)}.mkpi .total-v.err{color:var(--err)}.mkpi .total-v small{font-size:15px;color:var(--info);font-weight:500;margin-left:2px}.mkpi .grade-badge .grade-label{font-size:11px;font-weight:700;margin-left:6px}.mkpi .ladder{position:relative;height:26px;margin:6px 0 2px}.mkpi .ladder .band{position:absolute;top:8px;height:10px;opacity:.8}.mkpi .ladder .band:first-child{border-radius:5px 0 0 5px}.mkpi .ladder .band:nth-last-child(2){border-radius:0 5px 5px 0}.mkpi .ladder .mark{position:absolute;top:0;width:3px;height:26px;background:var(--ink);border-radius:2px}.mkpi .ladder-labels{position:relative;height:16px;font-size:10px;color:var(--info);font-weight:700}.mkpi .ladder-labels span{position:absolute;transform:translate(-50%);white-space:nowrap}.mkpi .grade-rules{margin:4px 0 0}.mkpi .grade-rules b{color:var(--ink)}.mkpi .sub2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mkpi .sub2>div{background:var(--surf);border-radius:10px;padding:8px 10px}.mkpi .sub2 .computed{grid-column:1 / -1}.mkpi .sub2 .v{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}.mkpi .sub2 .v small{font-size:12px;color:var(--info);font-weight:500}.mkpi .sub2 .core .v{color:var(--blue)}.mkpi .sub2 .admin .v{color:var(--purple)}.mkpi .sub2 .computed .v{color:var(--info)}.mkpi .adj-banner{margin:0;background:var(--adj-bg);border:1px solid var(--adj-line);color:var(--adj-ink);border-radius:10px;padding:9px 12px;font-size:12.5px;font-weight:700}.mkpi .adj-banner a{color:inherit}.mkpi .adj-banner.warn{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn-ink)}.mkpi .item-card{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px}.mkpi .item-card.adjusted{border-color:var(--adj-line)}.mkpi .item-top{display:flex;gap:10px;align-items:flex-start}.mkpi .item-card .code{flex:none;min-width:32px;height:22px;border-radius:6px;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;background:var(--surf);color:var(--ink2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid var(--line)}.mkpi .item-name{flex:1;min-width:0;font-weight:800;font-size:13px}.mkpi .item-score{flex:none;text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap}.mkpi .item-score small{font-size:11px;color:var(--info);font-weight:500}.mkpi .item-score.zero{color:var(--err)}.mkpi .item-score .na{color:var(--info2)}.mkpi .item-card .bar{height:5px;border-radius:3px;background:var(--line);margin:7px 0 6px;overflow:hidden}.mkpi .item-card .bar i{display:block;height:100%;border-radius:3px;background:var(--ok)}.mkpi .item-card .bar i.warn{background:var(--warn)}.mkpi .item-card .bar i.err{background:var(--err)}.mkpi .item-card .chips{display:flex;gap:4px;flex-wrap:wrap}.mkpi .item-card .chips .state-chip{margin-top:0}.mkpi .state-chip.blue{background:var(--adj-bg);color:var(--adj-ink)}.mkpi .item-card .ta{font-size:11.5px;color:var(--ink2);margin-top:6px;font-weight:700}.mkpi .adj-box{margin-top:8px;background:var(--adj-bg);border:1px solid var(--adj-line);border-radius:8px;padding:8px 10px;color:var(--adj-ink);font-size:12px;line-height:1.6}.mkpi .adj-box .fromto{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;font-size:14px}.mkpi .adj-box .meta{color:var(--info);font-size:11px;margin-top:2px}.mkpi .adj-box .vi-missing{font-style:italic;color:var(--info)}.mkpi .item-card details.why{margin-top:6px}.mkpi .item-card details.why>summary{cursor:pointer;list-style:none;font-size:12px;font-weight:800;color:var(--blue);min-height:32px;display:inline-flex;align-items:center;gap:4px}.mkpi .item-card details.why>summary::-webkit-details-marker{display:none}.mkpi .item-card details.why>summary:before{content:"▸";font-size:11px}.mkpi .item-card details.why[open]>summary:before{content:"▾"}.mkpi .item-card .basis{background:var(--surf);border-radius:8px;padding:8px 10px;font-size:12px;color:var(--ink2);line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}.mkpi .item-card .basis p{margin:0 0 6px}.mkpi .item-card .basis p:last-child{margin:0}.mkpi .item-card .basis .h{font-weight:800;color:var(--ink);display:block}.mkpi .item-card .basis .foot{font-size:11px;color:var(--info)}.mkpi .subtotal{display:flex;justify-content:space-between;align-items:center;background:var(--surf);border-radius:10px;padding:8px 12px;font-weight:800;gap:8px}.mkpi .subtotal .num{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums}.mkpi .section .lab{font-size:11px;color:var(--info);font-weight:700;margin-bottom:4px}.mkpi details.trend-box>summary{cursor:pointer;list-style:none;min-height:32px}.mkpi details.trend-box>summary::-webkit-details-marker{display:none}.mkpi .bottom-note{margin:0 0 12px;padding:0 4px}.mkpi .kpi-rules-panel:not([open]){padding:12px 16px;border-width:1px}.mkpi .kpi-rules-panel:not([open]) .kpi-rules-summary{font-size:14px;min-height:32px}.mkpi .steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:12px}@media(max-width:560px){.mkpi .steps{grid-template-columns:repeat(2,minmax(0,1fr))}}.mkpi .step{background:#fff;border:1px solid var(--line);border-radius:10px;padding:7px 8px;font-size:11.5px;font-weight:800;color:var(--ink2);min-width:0}.mkpi .step b{display:block;font-size:10.5px;color:var(--info)}.mkpi .step.on{border-color:var(--navy-dk);color:var(--ink);box-shadow:inset 0 -3px 0 var(--navy-dk)}.mkpi .step.done{color:var(--ok-ink)}.mkpi .counts{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.mkpi .counts .state-chip{margin-top:0}.mkpi .person{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:8px;background:#fff}.mkpi .person.sel{border-color:var(--navy-dk)}.mkpi .p-top{display:flex;align-items:flex-start;gap:10px}.mkpi .p-top input[type=checkbox]{width:22px;height:22px;margin:2px 0 0;accent-color:var(--navy-dk);flex:none}.mkpi .p-top .ph{width:22px;flex:none}.mkpi .p-name{flex:1;min-width:0}.mkpi .p-name b{font-size:13.5px}.mkpi .p-name .state-chip{margin-top:0}.mkpi .p-name .r{font-size:11px;color:var(--info)}.mkpi .p-score{text-align:right;flex:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;font-size:14px}.mkpi .p-score .arrow{color:var(--info);font-weight:500}.mkpi .p-score .new{color:var(--ink);font-size:16px}.mkpi .p-score small{display:block;font-size:10.5px;color:var(--info);font-weight:600;font-family:inherit}.mkpi .p-changes,.mkpi .p-actions,.mkpi .p-diff,.mkpi .p-return,.mkpi .p-msg{margin:6px 0 0 32px}@media(max-width:560px){.mkpi .p-changes,.mkpi .p-actions,.mkpi .p-diff,.mkpi .p-return,.mkpi .p-msg{margin-left:0}}.mkpi .p-changes,.mkpi .p-actions{display:flex;gap:6px;flex-wrap:wrap}.mkpi .p-changes .state-chip{margin-top:0}.mkpi .p-msg{font-size:12px;font-weight:700}.mkpi .p-msg.err{color:var(--err-ink)}.mkpi .p-return textarea,.mkpi .erow textarea{width:100%;box-sizing:border-box;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:13px;padding:6px 8px}.mkpi .p-return label{display:block;font-size:11.5px;font-weight:800;margin:4px 0;color:var(--ink2)}.mkpi .p-diff{overflow-x:auto}.mkpi .btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:8px;font:inherit;font-weight:800;font-size:13px;cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink2);text-decoration:none}.mkpi .btn.ok{background:var(--btn-ok);color:#fff;border:0}.mkpi .btn.err{color:var(--err-ink);border-color:var(--err-line)}.mkpi .btn.navy{background:var(--navy-dk);color:#fff;border:0}.mkpi .btn[disabled]{opacity:.45;cursor:default}.mkpi .diff{width:100%;border-collapse:collapse;font-size:12px;margin-top:4px}.mkpi .diff th,.mkpi .diff td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.mkpi .diff th{font-size:10.5px;color:var(--info);font-weight:800}.mkpi .diff th.n,.mkpi .diff td.n{text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;white-space:nowrap}.mkpi .diff tr.chg td{background:var(--adj-bg)}.mkpi .diff .code{display:inline-flex;min-width:28px;justify-content:center;border-radius:5px;background:var(--surf);font-size:10.5px;font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .sticky{position:sticky;bottom:0;z-index:5;background:#fff;border:1px solid var(--navy-dk);border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;box-shadow:0 -6px 18px #0f172a1f;margin-top:12px}.mkpi .sticky .grow{flex:1;min-width:150px;font-weight:800}.mkpi .confirm-box{margin-top:10px;border:1px solid var(--warn-line);background:var(--warn-bg);border-radius:12px;padding:12px 14px}.mkpi .confirm-box p{margin:0 0 6px;font-weight:700}.mkpi .confirm-box ul,.mkpi .batch-results ul{margin:0 0 8px;padding-left:18px}.mkpi .batch-results{margin-top:10px}.mkpi .batch-results li.ok{color:var(--ok-ink);font-weight:700}.mkpi .batch-results li.err{color:var(--err-ink);font-weight:700}.mkpi .foot-btns{display:flex;gap:8px;flex-wrap:wrap}.mkpi .msg{font-weight:800;font-size:12.5px;margin:6px 0 0}.mkpi .msg.ok{color:var(--ok-ink)}.mkpi .msg.err{color:var(--err-ink)}.mkpi .dlg-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:flex-end;justify-content:center;z-index:50}@media(min-width:720px){.mkpi .dlg-back{align-items:center}}.mkpi .dlg{background:#fff;color:var(--ink);width:100%;max-width:640px;max-height:92vh;overflow:auto;border-radius:16px 16px 0 0;padding:14px 16px 0;box-sizing:border-box}@media(min-width:720px){.mkpi .dlg{border-radius:16px}}.mkpi .dlg h3{font-size:15px;font-weight:800;margin:0 0 4px}.mkpi .dlg .sub{font-size:12px;color:var(--ink2);margin:0 0 10px}.mkpi .erow{border:1px solid var(--line);border-radius:10px;padding:9px 10px;margin-bottom:8px}.mkpi .erow.changed{border-color:var(--adj-line);background:var(--adj-bg)}.mkpi .erow.bad{border-color:var(--err-line)}.mkpi .erow-top{display:flex;align-items:center;gap:8px}.mkpi .erow .code{flex:none;min-width:32px;height:22px;border-radius:6px;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;background:var(--surf);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .erow-top .nm{flex:1;min-width:0;font-weight:800;font-size:12.5px}.mkpi .erow-top .nm small{display:block;font-size:11px;color:var(--info);font-weight:600}.mkpi .erow input[type=number]{width:86px;min-height:38px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;font-size:15px;text-align:right;padding:0 8px;box-sizing:border-box}.mkpi .erow .mx{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--info);font-size:12px;white-space:nowrap}.mkpi .erow .ft{margin-top:6px;font-size:12px;font-weight:800;color:var(--adj-ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mkpi .erow label{display:block;font-size:11.5px;font-weight:800;margin:6px 0 3px;color:var(--ink2)}.mkpi .erow .err{color:var(--err-ink);font-size:11.5px;font-weight:800;margin-top:4px}.mkpi .dlg-foot{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:10px 0 12px;margin-top:8px}.mkpi .calc{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-weight:800;margin-bottom:8px}.mkpi .calc .big{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px}.mkpi .calc .gap{font-size:11.5px;color:var(--info);font-weight:700}.mkpi .calc .state-chip{margin-top:0;gap:4px}
