:root{
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  background:#0b0f14;color:#eef2f7;--card:#151b23;--card2:#0f1720;--line:#273241;--muted:#93a4b8;--blue:#2563eb;--green:#166534;--red:#991b1b;
}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#182235 0,#0b0f14 38%,#070a0f 100%);min-height:100vh}a{color:#9bd1ff;text-decoration:none}a:hover{text-decoration:underline}
header,main{max-width:1280px;margin:auto;padding:24px}.hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:34px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#9bd1ff;font-weight:700;margin:0 0 8px}.hero h1{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:0 0 12px}.hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.frontpage{padding-top:4px}
.card{background:rgba(21,27,35,.92);border:1px solid var(--line);border-radius:24px;padding:22px;margin:18px 0;box-shadow:0 18px 45px rgba(0,0,0,.22);backdrop-filter:blur(8px)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.section-head h2,.card h2{margin:0 0 4px}.muted{color:var(--muted)}.small-note{font-size:.9rem}.mt{margin-top:18px}
.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.row.space{justify-content:space-between}.stack{display:grid;gap:12px;max-width:720px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.two-col{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}
input,select,textarea,button,.button{border-radius:12px;border:1px solid #334155;background:#0f1720;color:#eef2f7;padding:10px 12px}textarea{width:100%}button,.button{cursor:pointer;text-decoration:none;background:var(--blue);border-color:var(--blue);display:inline-flex;align-items:center;justify-content:center;gap:8px}button.secondary,.button.secondary{background:#263445;border-color:#3b4a5f}.button.primary{font-weight:800}.danger{background:var(--red);border-color:var(--red)}
.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.summary-card{background:linear-gradient(180deg,#1a2432,#101720);border:1px solid #2b3a4e;border-radius:22px;padding:18px}.summary-card span{display:block;color:var(--muted);font-size:.92rem}.summary-card strong{display:block;font-size:2rem;margin:8px 0 4px}.summary-card small{color:var(--muted)}
.member-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.status-card{background:var(--card2);border:1px solid var(--line);border-radius:20px;padding:18px}.status-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:14px}.status-card h3{font-size:1.25rem;margin:0}.pill,.badge{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:.78rem;border:1px solid #34445a;color:#cbd5e1;background:#182232}.metric-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #233044;padding:10px 0}.metric-row span{color:var(--muted)}.metric-row small{color:var(--muted);font-weight:500}
.round-fines.compact{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.fine-box{background:var(--card2);border:1px solid var(--line);border-radius:18px;padding:14px}.fine-head{display:flex;justify-content:space-between;gap:10px}.fine-box p{margin:8px 0 0;color:var(--muted)}
.round-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:8px}.round-chip{display:flex;align-items:center;justify-content:center;min-height:38px;background:#101722;border:1px solid #273241;border-radius:12px;color:#dbeafe;font-weight:800}.round-chip.active{background:#2563eb;color:white;border-color:#2563eb}.round-chip:hover{text-decoration:none;transform:translateY(-1px)}
.member-list,.fine-list{display:grid;gap:10px}.member-line,.fine-line{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--card2);border:1px solid var(--line);border-radius:16px;padding:13px}.member-line span,.fine-line span{display:block;color:var(--muted);font-size:.92rem}.fine-line.warning{border-color:#7c2d12;background:#1c1210}.badge.good{background:#12341f;border-color:#166534;color:#bbf7d0}.badge.bad{background:#3a1414;border-color:#991b1b;color:#fecaca}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:separate;border-spacing:0 8px}th{color:var(--muted);font-size:.85rem;font-weight:700;text-align:left;padding:6px 10px}td{padding:11px 10px;background:#0f1720;border-top:1px solid #273241;border-bottom:1px solid #273241}td:first-child{border-left:1px solid #273241;border-radius:12px 0 0 12px}td:last-child{border-right:1px solid #273241;border-radius:0 12px 12px 0}.total td{background:#172033;font-weight:800;border-color:#3b4a5f}.coupon-card{background:#0f1720;border:1px solid #334155;border-radius:20px;padding:18px;margin:18px 0}.coupon-card h3{margin:.2rem 0}.nowrap{flex-wrap:nowrap}.small-input{max-width:90px}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;align-items:end}.add-leg{margin-top:12px}.coupon-card input,.coupon-card select{min-width:120px}.coupon-card td{vertical-align:top}.add-member{margin-top:14px}
@media(max-width:1000px){.summary-grid,.member-status-grid,.round-fines.compact{grid-template-columns:repeat(2,1fr)}.hero{align-items:flex-start;flex-direction:column}}@media(max-width:650px){header,main{padding:16px}.summary-grid,.member-status-grid,.round-fines.compact{grid-template-columns:1fr}.member-line,.fine-line{align-items:flex-start;flex-direction:column}.section-head{align-items:flex-start;flex-direction:column}}


details summary{cursor:pointer;user-select:none;display:inline-flex;align-items:center;gap:8px}
details summary:hover{color:#9bd1ff}
.notice{background:#11243a;border:1px solid #31567d;color:#cfe8ff;border-radius:14px;padding:12px 14px;margin:14px 0}.ocr-box{margin:10px 0 14px}.ocr-box pre{white-space:pre-wrap;background:#07101b;border:1px solid #273241;border-radius:14px;padding:14px;max-height:260px;overflow:auto;color:#cbd5e1}input[type=file]{cursor:pointer}

.center{text-align:center}.checkbox-label{display:flex;gap:.5rem;align-items:center}

.coupon-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;margin:14px 0 18px}
.coupon-summary-card{background:linear-gradient(180deg,#172033,#101722);border:1px solid #334155;border-radius:18px;padding:14px 16px}
.coupon-summary-card span{display:block;color:var(--muted);font-size:.84rem;font-weight:700;margin-bottom:6px}
.coupon-summary-card strong{display:block;font-size:1.35rem}
.coupon-summary-card small,.subline{display:block;color:var(--muted);font-size:.78rem;margin-top:3px}.early-check{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:#12341f;border:1px solid #16a34a;color:#bbf7d0;font-weight:900;font-size:1.1rem;box-shadow:0 0 0 3px rgba(22,163,74,.08)}.early-empty{color:#526176}.compact-coupon-form{max-width:520px}.compact-coupon-form input[type=file]{width:100%}
@media(max-width:900px){.coupon-summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.coupon-summary-grid{grid-template-columns:1fr}}

/* Historiske runder 1-48 */
.legacy-hero{display:grid;grid-template-columns:minmax(220px,1fr) 3fr;gap:18px;align-items:stretch}
.legacy-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}
.legacy-bet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.legacy-bet-card{background:#0f1720;border:1px solid #273241;border-radius:18px;padding:16px}
.legacy-bet-card.won{border-color:#166534;background:linear-gradient(180deg,#102219,#0f1720)}
.legacy-bet-card.lost{border-color:#4a2530;background:linear-gradient(180deg,#211319,#0f1720)}
.legacy-bet-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.legacy-bet-head strong{font-size:1.1rem}
.legacy-fines{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
@media(max-width:900px){.legacy-hero{grid-template-columns:1fr}.legacy-summary-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.legacy-summary-grid{grid-template-columns:1fr}}

/* v17: Låst, kompakt kuponvisning uden vandret scrollbar */
.coupon-leg-list{display:grid;gap:12px;margin-top:16px}
.coupon-leg-card{display:grid;grid-template-columns:190px 1fr 330px;gap:14px;align-items:stretch;background:#0f1720;border:1px solid #273241;border-radius:18px;padding:14px}
.leg-member label,.status-control{display:grid;gap:7px;color:var(--muted);font-size:.82rem;font-weight:800}
.leg-member select,.status-control select{width:100%;min-width:0;cursor:pointer}
.leg-info{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:10px;min-width:0}
.leg-field{background:#111a27;border:1px solid #243145;border-radius:14px;padding:10px 12px;min-width:0}
.leg-field span,.odds-pill span,.early-display span,.single-box span{display:block;color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:5px}
.leg-field strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem}
.leg-match strong{font-size:1rem}
.leg-side{display:grid;grid-template-columns:76px 76px 1fr 94px;gap:10px;align-items:center;min-width:0}
.odds-pill,.early-display,.single-box{background:#111a27;border:1px solid #243145;border-radius:14px;padding:10px 12px;min-height:66px}
.odds-pill strong{font-size:1.1rem}.single-box strong{font-size:1rem}.single-box small{display:block;color:var(--muted);font-size:.74rem;margin-top:3px;white-space:nowrap}
.save-indicator{display:block;color:#9bd1ff;font-size:.78rem;min-height:1rem;margin-top:6px}.empty-state{border:1px dashed #334155;border-radius:16px;padding:18px;background:#0f1720}.coupon-card .table-wrap{overflow-x:visible}
@media(max-width:1150px){.coupon-leg-card{grid-template-columns:1fr}.leg-side{grid-template-columns:repeat(4,minmax(80px,1fr))}.leg-info{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.leg-info,.leg-side{grid-template-columns:1fr}.coupon-leg-card{padding:12px}}


/* v18: kompakt kupon-tabel som det tidligere layout, men uden redigeringsfelter */
.compact-coupon-wrap{overflow-x:visible;margin-top:12px}
.compact-coupon-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0 7px;font-size:.88rem}
.compact-coupon-table th{font-size:.78rem;color:var(--muted);padding:6px 8px;text-align:left;border-bottom:1px solid #253244}
.compact-coupon-table td{background:#0f1720;border-top:1px solid #273241;border-bottom:1px solid #273241;padding:8px;vertical-align:middle}
.compact-coupon-table tr td:first-child{border-left:1px solid #273241;border-radius:12px 0 0 12px}
.compact-coupon-table tr td:last-child{border-right:1px solid #273241;border-radius:0 12px 12px 0}
.compact-coupon-table .col-member{width:15%}
.compact-coupon-table .col-match{width:18%}
.compact-coupon-table .col-market{width:15%}
.compact-coupon-table .col-selection{width:14%}
.compact-coupon-table .col-time{width:13%}
.compact-coupon-table .col-early{width:5%}
.compact-coupon-table .col-odds{width:6%}
.compact-coupon-table .col-status{width:9%}
.compact-coupon-table .col-single{width:8%}
.compact-select{width:100%;min-width:0;padding:8px 9px;border-radius:12px;font-size:.86rem}
.clip-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nowrap{white-space:nowrap}.center{text-align:center}.odds-cell{font-weight:800}.early-check.small{width:24px;height:24px;font-size:.95rem}.save-indicator{display:block;color:var(--muted);font-size:.72rem;min-height:.9rem;margin-top:2px}
@media(max-width:1050px){.compact-coupon-table{font-size:.82rem}.compact-coupon-table th,.compact-coupon-table td{padding:7px 5px}.compact-select{font-size:.8rem;padding:7px 6px}.coupon-summary-grid{gap:8px}.coupon-summary-card{padding:12px}}
.api-status-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid #dfe7ef;border-radius:16px;background:#f8fbff;margin:1rem 0}
.api-status-card button:disabled{opacity:.5;cursor:not-allowed}.api-mini{font-size:.82rem;line-height:1.25;max-width:120px}.good-text{color:#16803a;font-weight:700}.compact-coupon-table .col-score{width:70px}

/* v27: Tidlig udbetaling vises som ren tekst */
.early-yes,.early-no{display:inline;font-weight:900;font-size:.9rem;color:#f8fafc;background:transparent;border:0;padding:0;border-radius:0}.early-no{background:#1a2432;border-color:#334155;color:#94a3b8}
.status-icon{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:999px;font-weight:950;font-size:1rem;border:1px solid #334155;background:#182232;color:#cbd5e1}
.status-win{background:#12341f;border-color:#16a34a;color:#bbf7d0}.status-lost{background:#3a1414;border-color:#dc2626;color:#fecaca}.status-pending{background:#1e293b;border-color:#64748b;color:#e2e8f0}.status-void{background:#24212b;border-color:#6b7280;color:#cbd5e1}
.compact-coupon-table .col-early{width:9%}.compact-coupon-table .col-status{width:5.5%}.compact-coupon-table .col-single{width:9%}.compact-coupon-table th{vertical-align:bottom}

.result-actions {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  flex-wrap: wrap;
  margin: 0.35rem 0 1rem;
}
.result-actions .small-note { margin: 0; }
