:root{--summary-ink:#173b5e;--summary-muted:#5d6b78;--summary-line:#d7e0e8;--summary-soft:#f4f8fb;--summary-gold:#b9851e}.summary-topbar{min-height:64px;padding:10px clamp(18px,4vw,46px);display:flex;align-items:center;justify-content:space-between;gap:18px;background:#173b5e;color:#fff}.summary-topbar a{color:inherit;text-decoration:none}.summary-topbar nav{display:flex;gap:16px;font-weight:700}.summary-brand{display:flex;align-items:center;gap:10px}.summary-brand>span,.summary-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#e7b44d;color:#173b5e;font-weight:900}.summary-page{max-width:1180px;margin:0 auto;padding:26px clamp(16px,4vw,42px) 50px}.summary-controls{border:1px solid var(--summary-line);border-radius:22px;padding:22px;background:linear-gradient(145deg,#fff,#f4f8fb);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:24px;align-items:center;margin-bottom:18px}.summary-controls h1{margin:8px 0}.summary-controls p{color:var(--summary-muted);max-width:72ch}.summary-actions{display:grid;gap:9px}.summary-actions label{display:flex;gap:9px;align-items:center;border:1px solid var(--summary-line);border-radius:12px;padding:11px;background:#fff;font-weight:700}.summary-notice{border:1px solid var(--summary-line);border-radius:14px;padding:14px;background:var(--summary-soft)}.summary-notice.error{border-color:#b84a4a;background:#fff1f1;color:#7b2525}.summary-report-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;border-bottom:4px solid var(--summary-ink);padding:8px 0 18px}.summary-report-header>div:first-child{display:flex;gap:14px;align-items:center}.summary-report-header p,.summary-report-header h1{margin:0}.summary-report-header p{font-weight:800;color:var(--summary-gold);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.summary-report-header h1{font-size:clamp(1.6rem,3vw,2.3rem);color:var(--summary-ink)}.summary-report-header span{display:block;margin-top:5px;color:var(--summary-muted);font-weight:700}.summary-report-header span.muted{font-weight:500}.summary-report-header dl{margin:0;display:grid;gap:8px;min-width:230px}.summary-report-header dl div{display:grid;grid-template-columns:auto 1fr;gap:10px}.summary-report-header dt{font-weight:800;color:var(--summary-ink)}.summary-report-header dd{margin:0;color:var(--summary-muted)}.summary-disclaimer{margin:16px 0;border-left:5px solid var(--summary-gold);padding:12px 15px;background:#fff7df;border-radius:0 12px 12px 0}.summary-section{margin-top:22px;border:1px solid var(--summary-line);border-radius:18px;padding:18px;background:#fff}.summary-heading{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:14px}.summary-heading p,.summary-heading h2{margin:0}.summary-heading p{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:var(--summary-gold);font-weight:900}.summary-heading h2{color:var(--summary-ink);font-size:1.35rem}.summary-heading>span{font-size:.82rem;color:var(--summary-muted)}.summary-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.summary-stat{border:1px solid var(--summary-line);border-radius:13px;background:var(--summary-soft);padding:13px}.summary-stat span,.summary-stat strong{display:block}.summary-stat span{font-size:.78rem;color:var(--summary-muted)}.summary-stat strong{margin-top:4px;font-size:1.35rem;color:var(--summary-ink)}.summary-plan{display:grid;gap:10px}.summary-plan-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;border:1px solid var(--summary-line);border-radius:14px;padding:13px;background:linear-gradient(145deg,#fff,#f7fafc)}.summary-rank{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--summary-ink);color:#fff;font-weight:900}.summary-plan-item h3,.summary-plan-item p{margin:0}.summary-plan-item p{margin-top:5px;color:var(--summary-muted);font-size:.9rem}.summary-empty{border:1px dashed #aebbc7;border-radius:12px;padding:15px;color:var(--summary-muted);background:#fafcfd}.summary-table-wrap{overflow:auto}.summary-table-wrap table{width:100%;border-collapse:collapse}.summary-table-wrap th,.summary-table-wrap td{padding:10px;border-bottom:1px solid var(--summary-line);text-align:left;vertical-align:top}.summary-table-wrap th{background:var(--summary-soft);color:var(--summary-ink);font-size:.8rem}.summary-table-wrap td span{display:block;color:var(--summary-muted);font-size:.82rem;margin-top:2px}.summary-diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.summary-diagnostic{border:1px solid var(--summary-line);border-radius:14px;padding:15px;background:var(--summary-soft)}.summary-diagnostic h3,.summary-diagnostic p{margin:0}.summary-diagnostic>strong{display:block;font-size:2rem;color:var(--summary-ink);margin:8px 0}.summary-diagnostic p{color:var(--summary-muted);margin-top:4px}.summary-diagnostic small{display:block;margin-top:8px;color:var(--summary-muted)}.summary-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.summary-mini-grid>div{border:1px solid var(--summary-line);border-radius:12px;padding:12px;background:var(--summary-soft)}.summary-mini-grid span,.summary-mini-grid strong{display:block}.summary-mini-grid span{font-size:.78rem;color:var(--summary-muted)}.summary-mini-grid strong{font-size:1.25rem;color:var(--summary-ink);margin-top:3px}.summary-domain-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.summary-domain-list>div{border:1px solid var(--summary-line);border-radius:12px;padding:12px}.summary-domain-list strong,.summary-domain-list span{display:block}.summary-domain-list span{font-size:.84rem;color:var(--summary-muted);margin-top:4px}.summary-lab-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.summary-lab-list>div{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border:1px solid var(--summary-line);border-radius:12px;padding:11px}.summary-lab-list strong,.summary-lab-list small{display:block}.summary-lab-list small{color:var(--summary-muted);margin-top:3px}.summary-check{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;border:1px solid #9aa9b6;color:#6f7e8b;font-weight:900}.summary-check.done{background:#e3f4e9;border-color:#6aa980;color:#27603c}.summary-check.started{background:#fff4d5;border-color:#c79935;color:#75530a}.summary-privacy{background:#f8fbfc}.summary-privacy p{color:var(--summary-muted)}.summary-footer{text-align:center;margin-top:18px;padding-top:14px;border-top:1px solid var(--summary-line);color:var(--summary-muted);font-size:.8rem}@media(max-width:850px){.summary-controls{grid-template-columns:1fr}.summary-stat-grid,.summary-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-report-header{grid-template-columns:1fr}.summary-report-header dl{min-width:0}.summary-domain-list,.summary-lab-list{grid-template-columns:1fr}}@media(max-width:560px){.summary-topbar{align-items:flex-start}.summary-topbar nav{display:grid;gap:7px}.summary-stat-grid,.summary-mini-grid,.summary-diagnostic-grid{grid-template-columns:1fr}.summary-heading{align-items:flex-start;flex-direction:column}.summary-page{padding-inline:12px}.summary-section{padding:14px}.summary-report-header>div:first-child{align-items:flex-start}}@page{size:auto;margin:.55in}@media print{body{background:#fff;color:#111}.no-print{display:none!important}.summary-page{max-width:none;margin:0;padding:0}.summary-notice{display:none}.summary-report-header{padding-top:0}.summary-section{box-shadow:none;break-inside:avoid;margin-top:15px;padding:13px}.summary-stat,.summary-plan-item,.summary-diagnostic,.summary-mini-grid>div,.summary-domain-list>div,.summary-lab-list>div{break-inside:avoid}.page-break-before{break-before:page}.summary-table-wrap{overflow:visible}.summary-table-wrap table{font-size:9.5pt}.summary-table-wrap th,.summary-table-wrap td{padding:6px}.summary-footer{margin-top:12px}.summary-heading h2{font-size:15pt}.summary-report-header h1{font-size:20pt}.summary-disclaimer{font-size:9.5pt}.summary-plan-item p,.summary-domain-list span,.summary-lab-list small{font-size:8.5pt}}
