:root{
  --black:#080808; --dark:#1a1a1a; --red:#b81c24; --red2:#cf2d33; --grey:#6f6f6f; --light:#f7f7f7; --line:#e1e1e1; --green:#218c5a; --blue:#1f5f96; --orange:#e28b1e;
  --redLight:#fceeef; --greenLight:#eff8f2; --blueLight:#edf5ff; --orangeLight:#fff7ea;
}
*{box-sizing:border-box}
body{margin:0;font-family:Aptos,Segoe UI,Arial,sans-serif;background:#f3f3f3;color:#111}
.topbar{min-height:64px;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 24px;border-bottom:5px solid var(--red)}
.brand{display:flex;align-items:center;gap:10px;font-size:18px}.brand img{width:38px;height:38px;border-radius:50%}.header-title{font-size:14px;color:#ddd;text-align:right}
main{max-width:1440px;margin:0 auto;padding:24px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 2px 12px rgba(0,0,0,.07);padding:22px;margin-bottom:22px}.dark-card{background:var(--black);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:28px}
.hero h1{margin:0 0 8px;font-size:34px}.hero p{margin:0;color:#ddd}.pill-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.pill-row span{background:#232323;border:1px solid #444;border-radius:999px;padding:8px 12px;color:#eee;font-size:12px}
h2{margin:0 0 10px;font-size:23px}h3{margin:12px 0 10px;font-size:15px;color:#111}.section-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.section-title-row p{max-width:640px;margin:0;color:var(--grey);font-size:14px}
.grid{display:grid;gap:22px}.two{grid-template-columns:1fr 1fr}.three{grid-template-columns:repeat(3,1fr)}.five{grid-template-columns:repeat(5,1fr)}.six{grid-template-columns:repeat(6,1fr)}
.input-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.input-grid.compact{grid-template-columns:repeat(2,1fr);gap:9px}.input-grid.single{grid-template-columns:1fr}.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
label{font-size:12px;color:#333;font-weight:700;display:flex;flex-direction:column;gap:5px}input,select{width:100%;padding:9px 10px;border:1px solid #d0d0d0;border-radius:9px;background:#fff;font-size:14px}label input[type=checkbox]{width:auto;margin-right:8px}.checkbox-grid label,.input-grid.single label:last-child{flex-direction:row;align-items:center;font-weight:600}.primary-btn,.secondary-btn{border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer}.primary-btn{background:var(--red);color:#fff;margin:10px 0}.secondary-btn{background:var(--black);color:#fff;margin-right:12px}.note{font-size:13px;color:var(--grey);margin:0 0 12px}.stage-group{border-top:1px solid #eee;padding-top:10px;margin-top:10px}
.metric{background:#fff;border:1px solid var(--line);border-left:8px solid var(--red);border-radius:14px;padding:15px 15px;box-shadow:0 2px 10px rgba(0,0,0,.06)}.metric span{display:block;font-size:24px;font-weight:900}.metric label{display:block;color:var(--grey);font-weight:600;margin-top:7px}.results .status.pass{border-left-color:var(--green)}.results .status.warn{border-left-color:var(--orange)}.results .status.fail{border-left-color:var(--red)}.recommendation-text p{margin:10px 0;line-height:1.45}.recommendation-card{border-left:6px solid var(--red)}
.svg-wrap{width:100%;overflow:auto;background:#fbfbfb;border:1px solid #eee;border-radius:14px;padding:14px}svg{min-width:1080px;width:100%;height:auto}svg text{font-family:Aptos,Segoe UI,Arial,sans-serif;font-size:13px;font-weight:800;text-anchor:middle;dominant-baseline:middle;fill:#111}svg .sub{font-size:11px;font-weight:600;fill:#666}.flow-node rect{fill:#fff;stroke:#d7d7d7;stroke-width:2}.red-node rect{fill:var(--redLight);stroke:var(--red)}.green-node rect{fill:var(--greenLight);stroke:var(--green)}.blue-node rect{fill:var(--blueLight);stroke:var(--blue)}.orange-node rect{fill:var(--orangeLight);stroke:var(--orange)}.flow-line{fill:none;stroke:#9a9a9a;stroke-width:3;marker-end:url(#arrowGrey)}.flow-line-red{fill:none;stroke:var(--red);stroke-width:3;marker-end:url(#arrowRed)}.reject-line{fill:none;stroke:var(--red);stroke-width:3;marker-end:url(#arrowRed)}.data-line{fill:none;stroke:var(--blue);stroke-width:3;marker-end:url(#arrowBlue)}.data-node rect{fill:var(--blueLight);stroke:var(--blue);stroke-width:2}.data-node text{font-size:12px}.disabled{opacity:.28;filter:grayscale(1)}.charge-bars{margin-top:14px;background:#fafafa;border:1px solid #eee;border-radius:12px;padding:12px}.charge-bars div{display:grid;grid-template-columns:80px repeat(9,1fr);gap:4px;align-items:center;margin:6px 0}.charge-bars span{font-size:11px;font-weight:800;color:#555}.charge-bars b{height:16px;border-radius:3px;background:#1f5f96}.charge-bars b.alt{background:#218c5a}.charge-bars b.charge{background:#e28b1e}
table{width:100%;border-collapse:collapse;font-size:13px}th{background:var(--black);color:#fff;text-align:left;padding:10px}td{border-bottom:1px solid #eee;padding:10px;vertical-align:top}tr:nth-child(even) td{background:#fafafa}.amr-results{margin-top:18px}.actions{display:flex;align-items:center}.footnote{text-align:center;color:#777;font-size:12px;padding:22px}
@media(max-width:1050px){.two,.three,.five,.six{grid-template-columns:1fr}.input-grid{grid-template-columns:1fr 1fr}.dark-card{display:block}.pill-row{justify-content:flex-start;margin-top:16px}.section-title-row{display:block}.section-title-row p{margin-top:6px}}
@media(max-width:650px){.input-grid,.input-grid.compact{grid-template-columns:1fr}.checkbox-grid{grid-template-columns:1fr}.topbar{height:auto;align-items:flex-start;flex-direction:column;padding:16px}.header-title{font-size:12px;text-align:left}.hero h1{font-size:28px}.metric span{font-size:20px}}
@media print{body{background:#fff}.topbar,.actions,.footnote{display:none}main{padding:0}.card{box-shadow:none;break-inside:avoid}}


.input-register-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.input-register-grid div{border:1px solid #e28b1e;background:#fff7ea;border-radius:12px;padding:12px;min-height:90px}.input-register-grid strong{display:block;color:#b81c24;font-size:14px;margin-bottom:6px}.input-register-grid span{display:block;color:#555;font-size:12px;line-height:1.35}.input-register-card{border-left:6px solid #e28b1e}
@media(max-width:1050px){.input-register-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.input-register-grid{grid-template-columns:1fr}}
