:root{--bg:#f3f3ed;--ink:#172523;--muted:#65716b;--green:#c4f06a;--border:#d7ddd4}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.shell{max-width:1150px;margin:auto;padding:0 36px}header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}a{color:inherit}.brand{text-decoration:none;font-size:32px;font-weight:850;letter-spacing:-2px;display:flex;gap:15px;align-items:center}.brand span{font-size:10px;letter-spacing:2px;max-width:100px;line-height:1.5}.private,.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:750}.private{color:var(--muted)}.hero{display:flex;justify-content:space-between;align-items:center;padding:52px 0 40px;gap:30px}.eyebrow{color:var(--muted);margin:0 0 12px}h1{font-size:64px;line-height:1.02;letter-spacing:-3px;margin:16px 0 22px;font-weight:750}h1 em{font-family:Georgia,serif;font-weight:400}.sub{color:var(--muted);margin:8px 0}.scorecard{background:var(--ink);color:white;min-width:240px;padding:30px;border-radius:18px;display:flex;flex-direction:column}.scorecard strong{font-size:70px;line-height:1.1;letter-spacing:-3px;color:var(--green)}.scorecard span{font-size:18px;margin:12px 0}.scorecard small{color:#c2cdc5;font-size:11px}.toolbar{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--border);padding:16px 0}.notice{padding:14px 18px;background:#dbeabd;border-radius:8px;font-size:13px;margin:16px 0}.notice.quiet{background:#e7eae2;color:#45524a}.league-nav{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}.league-nav a{font-size:12px;text-decoration:none;border:1px solid #bbc5b7;border-radius:30px;padding:10px 16px}.league{padding:30px 0;border-top:1px solid var(--border);scroll-margin-top:20px}.league-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.league-title .eyebrow{margin:0 0 8px}h2{font-size:26px;letter-spacing:-.8px;line-height:1.15;margin:0} .versus{font-size:10px;font-weight:bold;padding:0 6px}.chip{font-size:11px;padding:8px 12px;background:#e1e6db;border-radius:20px;white-space:nowrap}.chip.alert{background:#f1d9b0}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.move{background:white;border:1px solid #d6ddd2;border-radius:12px;padding:24px;box-shadow:0 3px 10px #1c332004}.card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.card-top .eyebrow{font-size:9px;margin:0}.status{font-size:10px;text-transform:uppercase;background:#eff2e9;border-radius:5px;padding:4px 7px;letter-spacing:.7px}.approved .status{background:#d7eeb3}.player-pair{margin:25px 0 18px}.player-pair small{font-size:9px;letter-spacing:1.8px;color:var(--muted);font-weight:700}h3{font-size:25px;letter-spacing:-.7px;margin:3px 0 14px;line-height:1.15}.outgoing{display:flex;gap:10px;align-items:baseline}.outgoing p{font-size:15px;margin:0;color:#67736d}.reason{font-size:13px;color:#59675e;line-height:1.65;overflow-wrap:anywhere}.actions{display:flex;gap:8px;margin-top:18px}button{min-height:44px;border:0;border-radius:7px;padding:10px 17px;font:600 13px inherit;cursor:pointer}.primary{background:var(--ink);color:var(--green);flex:1;font-weight:700}.secondary{background:#eef0e9;color:var(--ink)}.text-button{background:none;color:inherit;padding:0;min-height:24px;font-size:12px}.bid{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:650;border-top:1px solid #e7eae2;padding-top:14px;margin-top:20px}.bid input{width:75px;padding:9px;border:1px solid #bcc7b6;border-radius:6px;font-size:16px}.expiry{display:block;color:#7b847e;font-size:10px;line-height:1.5;margin-top:12px}.data-note{font-size:12px;color:#626f65;overflow-wrap:anywhere}.error{padding:12px;background:#f5e0ce;color:#743c24;border-radius:6px;font-size:13px}.result{font-size:13px;font-weight:600}.empty{padding:30px;background:#e9ede3;border-radius:10px;color:var(--muted);font-size:14px;grid-column:1/-1}details{margin-top:16px;background:#e9ede3;border-radius:8px;padding:16px 20px}summary{cursor:pointer;font-size:13px;font-weight:650;min-height:24px}summary span{float:right;color:var(--muted);font-weight:400}.lineup-list>div{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid #d5dccc}.lineup-list b{width:45px;font-size:12px}.lineup-list span{flex:1;font-size:14px}.lineup-list small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.activity p{font-size:12px}.activity small{display:block;color:var(--muted)}footer{margin-top:50px;padding:25px 0 35px;border-top:1px solid var(--border);font-size:11px;color:var(--muted);line-height:1.8}.login{max-width:430px;padding:90px 0;margin:auto}.login h1{font-size:45px}.login form{margin-top:30px}.login label{display:block;font-size:12px;margin-bottom:8px}.login input{width:100%;padding:15px;font-size:16px;border:1px solid #bbc7b3;border-radius:7px}.login button{width:100%;margin-top:16px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #6b962d;outline-offset:3px}@media(max-width:700px){.shell{padding:0 20px}header{height:78px}.private{font-size:8px;letter-spacing:1px;max-width:85px;text-align:right}.hero{padding:30px 0;align-items:stretch;gap:20px;flex-direction:column}h1{font-size:48px;letter-spacing:-2px}.hero .sub{max-width:310px}.scorecard{min-width:0;display:grid;grid-template-columns:80px 1fr;padding:18px 22px;gap:0 16px}.scorecard strong{font-size:54px;grid-row:1/3}.scorecard span{font-size:15px;margin:5px 0}.scorecard small{font-size:10px}.cards{grid-template-columns:1fr}.league-title{align-items:flex-start;flex-direction:column;gap:10px}h2{font-size:25px}.league-title .sub{font-size:13px}.league-nav{margin:20px 0}.league-nav a{font-size:11px;padding:9px 12px}.move{padding:20px}.reason{font-size:13px}.actions button{min-height:48px}.login{padding:65px 0}.notice{font-size:12px}}

.reconcile{border:1px solid var(--border);padding:16px;margin-bottom:20px;border-radius:8px}.reconcile label{display:block;font-size:12px;margin-bottom:10px}.reconcile input[name=note]{display:block;width:100%;padding:12px;font-size:16px;border:1px solid #bbc7b3;border-radius:6px;margin-bottom:12px}
