:root{font-family:Segoe UI,Arial,sans-serif;color:#21312e;background:#f5f6f2;font-size:15px}*{box-sizing:border-box}body{margin:0}header{height:82px;background:#fff;border-bottom:1px solid #ddd;display:flex;align-items:center;padding:0 38px;gap:30px}.brand{font-size:23px;letter-spacing:2px;color:#193d35;text-decoration:none}.badge{margin-left:auto;font-size:12px;border:1px solid #cedbd5;border-radius:20px;padding:8px 14px}.shell{display:grid;grid-template-columns:235px 1fr;min-height:calc(100vh - 82px)}aside{padding:36px 24px;border-right:1px solid #ddd;background:#fafbf8}.eyebrow{font-size:11px;letter-spacing:1.5px;color:#667b70;margin-bottom:20px}nav{display:grid;gap:8px}button,.file{font:inherit;cursor:pointer;border:0;border-radius:7px;padding:12px 18px;background:#1d5747;color:white;display:inline-block}nav button{text-align:left;background:transparent;color:#67736e}nav button.active{background:#e1eae3;color:#1c4e40;font-weight:600}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}.secondary{background:white;border:1px solid #cdd6d0;color:#264b3e}.aside-note{font-size:17px;line-height:1.6;margin:48px 0 34px}.aside-note p{font-size:13px;color:#758178}.file{font-size:13px;margin-top:10px}.file input{display:none}main{padding:36px 44px;max-width:1500px;width:100%}h1{font-family:Georgia,serif;font-size:37px;font-weight:400;margin:8px 0 15px}h2{font-size:19px;font-weight:600}p{line-height:1.6;color:#66736c}.lead{max-width:780px}.card{background:#fff;border:1px solid #dfe4dc;border-radius:12px;padding:24px;margin:22px 0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label.field{display:grid;gap:9px;font-weight:600;margin-bottom:18px}input,select{font:inherit;padding:12px;border:1px solid #c7d1ca;border-radius:6px;background:#fff;width:100%;color:#243b30}small{font-size:13px;color:#69776d;font-weight:400}.notice{background:#faf0db;border-left:3px solid #b58d36;padding:14px 18px;font-size:14px;line-height:1.6}.actions{display:flex;align-items:center;gap:12px;margin-top:24px}.metrics{display:flex;gap:18px}.metric{background:#edf1e8;border-radius:10px;padding:18px 24px;flex:1}.metric strong{display:block;font-size:27px;font-weight:500;margin-bottom:6px}.metric span{font-size:13px;color:#5d7064}.table-wrap{overflow:auto;max-height:560px;border:1px solid #dce1da;border-radius:8px}table{border-collapse:collapse;background:white;width:100%;font-size:14px}th{text-align:left;background:#f0f3ed;padding:13px;position:sticky;top:0;z-index:1}td{padding:11px 13px;border-bottom:1px solid #edf0e9}td.number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.parent td{background:#edf1e8;font-weight:600}.leaf td:nth-child(2){padding-left:28px}.pill{font-size:11px;background:#ecf1ee;padding:4px 8px;border-radius:20px}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.tabs button{background:#e8ede5;color:#345344;font-size:12px;padding:10px}.tabs button.active{background:#1d5747;color:white}.link{background:none;color:#1d5747;padding:0;text-decoration:underline;text-align:left}.muted{color:#819086}.search{max-width:440px;margin:16px 0}.good{color:#386847}.error{color:#a62929}.bottom{margin-top:28px;border-top:1px solid #dde2d8;padding-top:20px}dialog{width:min(900px,90vw);max-height:85vh;border:0;border-radius:12px;padding:30px}dialog::backdrop{background:#152b2488}.close{float:right}#status:not(:empty){padding:12px;background:#e5eddc;margin-bottom:15px}.rule{overflow-wrap:anywhere;font-size:12px;color:#53685b}details{margin:18px 0}summary{cursor:pointer;font-weight:600}li{margin:8px 0;line-height:1.5}@media(max-width:900px){header{padding:20px}.badge{display:none}.shell{grid-template-columns:1fr}aside{padding:15px}nav{display:flex;flex-wrap:wrap}.aside-note,.eyebrow{display:none}main{padding:24px}.grid{grid-template-columns:1fr}h1{font-size:30px}.metrics{flex-wrap:wrap}}

.family-choice{display:flex;gap:12px;align-items:flex-start;padding:10px;border-bottom:1px solid #edf0e9;cursor:pointer}.family-choice input{width:18px;height:18px;margin-top:3px}.family-choice span{line-height:1.5}.grid input[type=checkbox]{flex:none}
