:root{color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,sans-serif}body{margin:0;background:#f5f6f8;color:#1a1a1a}.app-shell{max-width:960px;margin:0 auto;padding:24px 16px}h1{font-size:1.5rem}form{display:flex;flex-direction:column;gap:8px;max-width:320px}label{font-weight:600;margin-top:8px}input{min-height:44px;font-size:1rem;padding:8px;border:1px solid #ccc;border-radius:6px}button{min-height:44px;min-width:44px;margin-top:12px;font-size:1rem;border-radius:6px;border:none;background:#1d4e89;color:#fff;cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}.submit-result-cta{background:#1e7d32}.submit-result-cta:hover:not(:disabled){background:#17632a}.submit-result-cta:focus-visible{outline:3px solid #17632a;outline-offset:2px}.submit-result-cta:disabled{background:#1e7d32;opacity:.5}.form-error{color:#b00020}.form-warning{color:#8a5a00}.form-status{color:#1d4e89}.admin-form-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.admin-form-row input,.admin-form-row select{min-height:44px;font-size:1rem;padding:8px;border:1px solid #ccc;border-radius:6px}.admin-form-row button{margin-top:0}.admin-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:16px 0;border-bottom:1px solid #ddd}.admin-tab{background:none;color:#1a1a1a;border:none;border-bottom:3px solid transparent;border-radius:0;padding:8px 12px;min-height:44px}.admin-tab.active{border-bottom-color:#1d4e89;font-weight:600}.admin-table{width:100%;border-collapse:collapse;margin:12px 0}.admin-table th,.admin-table td{text-align:left;padding:8px;border-bottom:1px solid #eee}.admin-table button{margin:0 4px 0 0;min-height:36px;padding:4px 10px;font-size:.9rem}.league-table{width:100%;border-collapse:collapse;margin:12px 0;display:block;overflow-x:auto;white-space:nowrap}.league-table th,.league-table td{text-align:left;padding:8px 12px;border-bottom:1px solid #eee}.provisional-note{color:#8a5a00;font-size:.9rem}.status-chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.85rem;background:#eee;color:#333}.status-awaiting_result{background:#eee;color:#555}.status-submitted{background:#dce8fb;color:#1d4e89}.status-flagged{background:#fbe8c6;color:#8a5a00}.status-approved{background:#d9f2df;color:#17703a}.status-cancelled,.status-void{background:#f3d9d9;color:#8a1f1f}.status-provisional{background:#dce8fb;color:#1d4e89}.status-review_required{background:#fbe8c6;color:#8a5a00}.status-rejected,.status-superseded{background:#f3d9d9;color:#8a1f1f}.submit-page fieldset{border:1px solid #ccc;border-radius:6px;margin-top:8px;padding:8px 12px}.submit-page fieldset label{display:block;font-weight:400;margin:4px 0}.submit-page select:disabled,.submit-page fieldset:disabled,.submit-page input:disabled{opacity:.5}.file-preview{font-size:.9rem;color:#555}.receipt-list dt{font-weight:600;margin-top:8px}.receipt-list dd{margin:0}.review-queue-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.review-queue-filters select{min-height:44px;font-size:1rem;padding:8px;border:1px solid #ccc;border-radius:6px}.review-queue-table{width:100%;border-collapse:collapse;margin:12px 0}.review-queue-table th,.review-queue-table td{text-align:left;padding:10px 8px;border-bottom:1px solid #eee;vertical-align:top}.review-queue-action-col{width:90px;white-space:nowrap}.review-queue-fixture-name{font-weight:600}.review-queue-fixture-meta{color:#666;font-size:.85rem;margin-top:2px}.evidence-cell{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.evidence-cell svg{flex-shrink:0;color:#1d4e89}.evidence-none{color:#888;font-size:.85rem}.review-queue-cards{display:none;list-style:none;margin:12px 0;padding:0;flex-direction:column;gap:12px}.review-queue-card{border:1px solid #eee;border-radius:8px;padding:12px}.review-queue-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.review-queue-card-fields{display:flex;gap:24px;margin:10px 0 0}.review-queue-card-fields>div{display:flex;flex-direction:column;gap:2px}.review-queue-card-fields dt{color:#888;font-size:.75rem;text-transform:uppercase;letter-spacing:.02em}.review-queue-card-fields dd{margin:0}.review-queue-card-action{margin-top:12px;width:100%}@media(max-width:768px){.review-queue-table{display:none}.review-queue-cards{display:flex}}.review-detail-wrapper{max-width:1100px;margin:0 auto}.review-detail-back{background:none;color:#1d4e89;min-height:auto;margin:0 0 12px;padding:4px 0;text-decoration:underline}.review-two-pane{display:flex;flex-direction:column;gap:24px}@media(min-width:900px){.review-two-pane{flex-direction:row;align-items:flex-start}}.review-image-pane{flex:0 0 360px;min-width:280px;max-width:420px}.review-image-pane img{max-width:100%;border:1px solid #ddd;border-radius:6px;display:block}.review-image-controls{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.review-image-controls button{min-height:36px;padding:4px 10px;font-size:.9rem;margin:0}.review-grid-pane{flex:1 1 auto;min-width:0;width:100%}.review-summary{background:#eef2f8;border-radius:6px;padding:12px;margin-bottom:12px}.review-summary dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:0}.review-summary dt{font-size:.8rem;color:#555;margin:0}.review-summary dd{font-size:1.1rem;font-weight:600;margin:0}.review-mismatch{color:#8a1f1f;font-weight:600}.score-matrix{display:flex;flex-direction:column;gap:12px;margin:12px 0}.score-matrix-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.score-matrix-ladies .score-matrix-row{grid-template-columns:repeat(2,minmax(0,1fr))}.score-matrix-row-standalone{grid-template-columns:minmax(0,1fr)}.score-matrix-cell-empty{visibility:hidden}.rubber-cell{border:1px solid #ddd;border-radius:6px;padding:10px;background:#fafafa}.rubber-cell-number{font-weight:700;margin:0 0 2px}.rubber-cell-pairs{margin:0 0 8px;color:#555;font-size:.9rem}.rubber-cell-games{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.rubber-cell-game,.rubber-cell-status{display:flex;align-items:center;gap:6px;font-size:.85rem}.rubber-cell-status{margin-bottom:6px}.rubber-cell-game-label{min-width:52px;color:#555}.rubber-cell input[type=number]{width:56px;min-height:36px;padding:4px;border:1px solid #ccc;border-radius:4px;font-size:.95rem}.rubber-cell select{min-height:36px;font-size:.9rem;padding:2px;border:1px solid #ccc;border-radius:4px;flex:1}.rubber-row-undecided{background:#fff7e6}.rubber-row-warning{background:#fbe8c6}.rubber-warnings-cell{white-space:normal;margin-top:6px}.rubber-warning-line{margin:2px 0;font-size:.85rem}@media(max-width:768px){.score-matrix-row,.score-matrix-ladies .score-matrix-row{grid-template-columns:minmax(0,1fr)}}.review-warning-banner{background:#fff7e6;border:1px solid #f0c36d;border-radius:6px;padding:12px 16px;margin:12px 0}.review-warning-banner ul{margin:8px 0;padding-left:20px}.review-warning-banner li{margin-bottom:4px}.review-approve-hint{margin-top:-8px;font-size:.9rem}.admin-build-footer{margin-top:32px;padding-top:8px;border-top:1px solid #eee;color:#999;font-size:.75rem}.review-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.review-actions button{margin:0}.review-action-approve{background:#17703a}.review-action-reject,.review-action-supersede{background:#8a1f1f}.review-action-secondary{background:#6b7280}.review-audit-list{margin:8px 0;padding:0;list-style:none;font-size:.9rem}.review-audit-list li{padding:6px 0;border-bottom:1px solid #eee}.corrected-note{color:#8a5a00;font-weight:600}.declared-score{font-weight:600}.declared-score-pending{color:#5a5a5a;font-style:italic}.back-home-link{margin:0 0 12px}.back-home-link a{color:#1d4e89;text-decoration:underline;font-weight:600}.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#1d4e89;color:#fff}.site-header-brand{color:#fff;font-weight:700;font-size:1.05rem;text-decoration:none;min-height:44px;display:flex;align-items:center}.site-header-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.site-header-link{color:#fff;text-decoration:underline;min-height:44px;display:flex;align-items:center}.site-header-cta{text-decoration:none;background:#ffffff29;border-radius:6px;padding:0 12px;font-weight:600}.site-header-user{font-weight:600;min-height:44px;display:flex;align-items:center}.site-header-signout{background:transparent;border:1px solid rgba(255,255,255,.6);color:#fff;min-height:44px;padding:0 12px;border-radius:6px}.admin-section-hint{color:#555;font-size:.95rem;max-width:60ch}.admin-form-card{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px;margin:12px 0;max-width:none}.admin-form-card select[multiple]{min-height:100px}.admin-table-scroll{overflow-x:auto;box-shadow:inset -8px 0 6px -6px #00000026}.admin-table-actions{white-space:nowrap}.admin-table-muted{color:#888;font-size:.85rem}.season-state-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.8rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.season-state-draft{background:#eee;color:#555}.season-state-active{background:#dff3e3;color:#1a7a34}.season-state-archived{background:#e6e9f5;color:#3c4a8f}.live-tables-division{margin:24px 0 32px;padding-bottom:16px;border-bottom:1px solid #eee}.live-tables-division h3{display:flex;align-items:center;gap:8px;margin-bottom:2px}.season-banner{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;font-weight:600;margin:8px 0 16px}.season-banner.season-state-draft{background:#eee;color:#555;text-transform:none;font-size:1rem}.season-banner.season-state-active{background:#dff3e3;color:#1a7a34;text-transform:none;font-size:1rem}.season-banner.season-state-archived{background:#e6e9f5;color:#3c4a8f;text-transform:none;font-size:1rem}.change-password-page form{max-width:360px}
