.manual-results-dashboard {margin-block: 0 1rem}
.manual-results {padding: clamp(.8rem, 2vw, 1.5rem)}
.manual-results-title {display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; margin-block-end:1rem}
.manual-results-title h2 {margin:0}
.manual-results-title label {display:grid; gap:.25rem}
.manual-results-rows {display:grid; gap:.45rem}
.manual-result-row {display:flex; align-items:center; gap:1rem; padding:.65rem .8rem; border:1px solid rgb(113 174 231 / .25); border-radius:.55rem; background:rgb(52 108 163 / .08); margin:0}
.manual-lottery-name {display:grid; gap:.2rem; flex:0 0 7.5rem}
.manual-lottery-name strong {font-size:1rem}
.manual-lottery-name small {opacity:.75; font-variant-numeric:tabular-nums}
.manual-results .manual-row-fields {display:flex; flex:1; align-items:end; gap:1.2rem; flex-wrap:wrap; min-width:0; border:0; margin:0; padding:0}
.manual-result-inputs {display:flex; align-items:end; gap:.35rem; position:relative; padding-top:1rem}
.manual-game-label {position:absolute; top:0; left:0; white-space:nowrap; font-size:.7rem; opacity:.8}
.manual-result-inputs label {display:grid; gap:.15rem; font-size:.75rem}
.manual-results .manual-result-inputs input {box-sizing:border-box; width:4.2rem; min-width:0; padding:.4rem .3rem; height:2.25rem; text-align:center; font-variant-numeric:tabular-nums; font-weight:700}
.manual-row-action {display:grid; gap:.2rem; flex:0 0 6rem}
.manual-row-action button {width:100%; padding:.5rem .65rem}
.manual-row-message {font-size:.75rem; overflow-wrap:anywhere}
.manual-row-message:empty,.manual-results-status:empty {display:none}
.manual-results-status {margin:0 0 .6rem}
.manual-results-saved ul {padding-left:1.2rem}
.manual-visually-hidden {position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0}
@media(max-width:760px){
 .manual-result-row {flex-wrap:wrap; gap:.5rem}
 .manual-lottery-name {flex:1; display:flex; align-items:center; gap:.6rem}
 .manual-results .manual-row-fields {order:3; flex-basis:100%; gap:.6rem}
 .manual-results .manual-result-inputs input {width:3.8rem}
 .manual-row-action {flex-basis:6rem}
}
/* Compact results list: shared surface and thin row dividers. */
.manual-results-rows {gap:0; border-block:1px solid #dbe5ed}
.manual-results .manual-result-row {min-height:0; padding:.35rem .2rem; gap:.8rem; border:0; border-bottom:1px solid #e5ebf1; border-radius:0; background:transparent; box-shadow:none}
.manual-results .manual-result-row:last-child {border-bottom:0}
.manual-results .manual-lottery-name {flex-basis:7rem; gap:.08rem}
.manual-results .manual-lottery-name strong {font-size:.85rem}
.manual-results .manual-lottery-name small {font-size:.65rem}
.manual-results .manual-row-fields {flex:0 1 auto; gap:.8rem}
.manual-results .manual-result-inputs {gap:.25rem; padding-top:.7rem}
.manual-results .manual-game-label {font-size:.6rem; line-height:1}
.manual-results .manual-result-inputs label {font-size:.65rem; gap:.05rem; line-height:1.15}
.manual-results .manual-result-inputs input {width:3.3rem; height:1.65rem; padding:.15rem .2rem; border-radius:.3rem; font-size:.8rem}
.manual-results .manual-row-action {flex:0 0 4.8rem}
.manual-results .manual-row-action button {min-height:0; padding:.35rem .45rem; font-size:.75rem; border-radius:.35rem; line-height:1.2}
.manual-results .manual-results-title {margin-bottom:.5rem}
@media(max-width:760px){
 .manual-results .manual-lottery-name {flex:1}
 .manual-results .manual-row-fields {flex-basis:100%}
}
body.admin-mode .manual-results .manual-result-inputs label {margin:0!important}
body.admin-mode .manual-results .manual-result-inputs input {min-height:28px!important;height:28px!important;padding:3px 5px!important}
body.admin-mode .manual-results .manual-row-action button {min-height:30px!important;height:30px!important;padding:4px 8px!important}
body.admin-mode .manual-results-title label {margin:0!important}
.manual-row-totals {display:flex;gap:1.2rem;margin:0 0 0 auto;flex-shrink:0;align-items:center}
.manual-row-totals>div {min-width:3.5rem;text-align:right}
.manual-row-totals dt {font-size:.7rem;font-weight:600}
.manual-row-totals dd {margin:.2rem 0 0;font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums}
.manual-report-entry {color:#1767a3}.manual-report-out {color:#b32c35}.manual-report-balance {color:#197040}
@media(max-width:1050px){.manual-row-totals{gap:.6rem}.manual-results .manual-result-row{flex-wrap:wrap}.manual-row-totals>div{min-width:3rem}}
@media(max-width:760px){.manual-row-totals{order:4;margin-left:0;width:100%;justify-content:flex-end}}
/* Dedicated results page: stable columns for quick entry and comparison. */
.manual-list-columns,.manual-results .manual-result-row {display:grid;grid-template-columns:7.5rem minmax(22rem,1fr) 5rem repeat(3,5rem);gap:.75rem;align-items:center}
.manual-list-columns {padding:.65rem .4rem;background:#edf4fa;border-radius:.4rem .4rem 0 0;color:#49637c;font-size:.7rem;font-weight:700;letter-spacing:.02em}
.manual-list-columns span:nth-last-child(-n+3) {text-align:right}
.manual-results .manual-result-row {padding:.45rem .4rem}
.manual-results .manual-result-row:nth-child(odd) {background:#f8fafc}
.manual-results .manual-result-row:focus-within {background:#edf6ff;box-shadow:inset 3px 0 #2182bd}
.manual-results .manual-row-fields {flex-wrap:nowrap;gap:.65rem}
.manual-row-totals {display:contents}
.manual-row-totals dt {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.manual-row-totals dd {margin:0;font-size:.85rem}
.manual-results .manual-row-action {align-self:center}
body.admin-mode .manual-results .manual-result-inputs input:focus {outline:2px solid #2182bd;outline-offset:1px}
@media(max-width:1100px){
 .manual-list-columns {display:none}
 .manual-results .manual-result-row {display:flex;flex-wrap:wrap;gap:.7rem;padding:.6rem .4rem}
 .manual-row-totals {display:flex;margin-left:auto}
 .manual-row-totals dt {position:static;width:auto;height:auto;clip:auto;overflow:visible}
 .manual-row-totals dd {margin-top:.15rem}
 .manual-results .manual-row-fields {flex-wrap:wrap}
}
@media(max-width:760px){.manual-row-totals{width:100%;justify-content:flex-end}.manual-results .manual-row-fields{flex-basis:100%}}
.manual-sample-dates {display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin:0 0 .6rem;font-size:.75rem;color:#526980}
body.admin-mode .manual-sample-dates button {min-height:28px!important;padding:3px 9px!important;font-size:.75rem!important}
.manual-demo-badge {color:#8a6318;font-size:.55rem!important;font-weight:700;letter-spacing:.04em}
.manual-results .manual-results-status {font-size:.75rem;color:#85601b}
.manual-row-totals dd {white-space:nowrap}
/* Readable compact scale for the dedicated results page. */
.manual-list-columns {font-size:.8rem}
.manual-results .manual-lottery-name strong {font-size:.95rem}
.manual-results .manual-lottery-name small {font-size:.72rem}
.manual-results .manual-result-inputs label {font-size:.75rem}
.manual-results .manual-game-label {font-size:.68rem}
.manual-results .manual-result-inputs {padding-top:.85rem}
body.admin-mode .manual-results .manual-result-inputs input {font-size:.95rem!important;min-height:33px!important;height:33px!important}
body.admin-mode .manual-results .manual-row-action button {font-size:.85rem!important;min-height:33px!important;height:33px!important}
.manual-row-totals dd {font-size:.95rem}
.manual-results .manual-result-row {padding-block:.5rem}
/* Shared admin touch and contrast baseline, including result acceptance. */
body.admin-mode :is(button,input:not([type=checkbox]):not([type=radio]),select){min-height:48px!important}
body.admin-mode button{min-width:48px!important}
body.admin-mode .manual-results .manual-result-inputs input,body.admin-mode .manual-results .manual-row-action button{height:48px!important;min-height:48px!important}
body.admin-mode .primary{background:#126aa4!important;color:#fff!important}
body.admin-mode input::placeholder{color:#526579;opacity:1}
body.admin-mode :is(button,input,select):focus-visible{outline:3px solid #135fa6;outline-offset:3px}
@media(max-width:700px){body.admin-mode dialog{max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;overflow:auto!important}.manual-results .manual-row-fields{gap:10px!important}}
