.fclema-scorer-login,.fclema-scorer-app{--lema-red:#e31d2b;--lema-dark:#111;--lema-muted:#6b6b6b;--lema-border:#e5e5e5;--lema-soft:#f7f7f7;--team-red:#c8202f;--team-blue:#245da8;--team-white:#f5f5f5;box-sizing:border-box;color:#202020;margin:28px 0;font-family:inherit}.fclema-scorer-login *,.fclema-scorer-app *{box-sizing:border-box}.fclema-scorer-login{display:flex;justify-content:center;padding:28px 12px}.fclema-scorer-login-card{width:min(520px,100%);border:1px solid var(--lema-border);background:#fff;padding:30px;border-top:5px solid var(--lema-red)}.fclema-scorer-kicker{display:block;color:var(--lema-red);font-size:12px;font-weight:800;letter-spacing:.12em;margin-bottom:4px}.fclema-scorer-login-card h2,.fclema-scorer-topbar h2{margin:0 0 8px;color:var(--lema-dark)}.fclema-scorer-login-card p{color:var(--lema-muted)}.fclema-scorer-login-form label,.fclema-goal-grid label,.fclema-goal-note,.fclema-final-controls label,.fclema-captain-grid label{display:block;font-weight:700;margin:14px 0 0}.fclema-scorer-login-form input,.fclema-scorer-login-form select,.fclema-goal-entry input,.fclema-goal-entry select,.fclema-final-controls select,.fclema-captain-grid select,.fclema-roster-search input,.fclema-roster-table select{width:100%;margin-top:6px;border:1px solid #cfcfcf;background:#fff;padding:10px 11px;font-size:15px;min-height:42px}.fclema-scorer-match-code{background:var(--lema-soft);border-left:3px solid var(--lema-red);padding:10px 12px;margin:14px 0}.fclema-scorer-primary,.fclema-scorer-secondary,.fclema-scorer-danger{border:0;padding:11px 17px;min-height:42px;font-weight:700;cursor:pointer;border-radius:3px}.fclema-scorer-primary{background:var(--lema-red);color:#fff}.fclema-scorer-secondary{background:#202020;color:#fff}.fclema-scorer-danger{background:#8d131e;color:#fff}.fclema-scorer-primary:disabled,.fclema-scorer-secondary:disabled,.fclema-scorer-danger:disabled{opacity:.55;cursor:not-allowed}.fclema-scorer-login-form .fclema-scorer-primary{width:100%;margin-top:18px}.fclema-scorer-feedback{min-height:22px;margin-top:10px;font-size:14px}.fclema-scorer-feedback.is-error,.fclema-scorer-message.is-error{color:#a91521}.fclema-scorer-feedback.is-success{color:#1e6c3a}.fclema-scorer-message{background:#f5f5f5;border-left:4px solid #999;padding:12px 14px;margin:12px 0}.fclema-scorer-app{max-width:1180px}.fclema-scorer-topbar{background:var(--lema-dark);color:#fff;padding:22px;display:flex;justify-content:space-between;gap:22px;align-items:center}.fclema-scorer-topbar h2{color:#fff}.fclema-scorer-meta{display:flex;gap:10px 16px;flex-wrap:wrap;font-size:13px;color:#d7d7d7}.fclema-status-badge{border-radius:999px;padding:2px 9px;background:#555;color:#fff}.fclema-status-badge.is-open{background:#177447}.fclema-status-badge.is-submitted{background:var(--lema-red)}.fclema-scorer-top-actions{display:flex;gap:8px;flex-wrap:wrap}.fclema-scorer-top-actions .fclema-scorer-secondary{background:#333;border:1px solid #555}.fclema-scorer-staff{display:flex;gap:18px;align-items:flex-start;background:#fafafa;border:1px solid var(--lema-border);border-top:0;padding:14px 18px}.fclema-scorer-staff>strong{white-space:nowrap}.fclema-scorer-staff>div{display:flex;gap:8px 16px;flex-wrap:wrap}.fclema-scorer-staff span{font-size:14px}.fclema-scorer-staff small{color:var(--lema-red);font-weight:700}.fclema-roster-editor{border:1px solid var(--lema-border);margin:20px 0;background:#fff}.fclema-roster-editor summary{cursor:pointer;padding:16px 18px;background:#fafafa;display:flex;justify-content:space-between;align-items:center;gap:16px;list-style:none}.fclema-roster-editor summary::-webkit-details-marker{display:none}.fclema-roster-editor summary span:first-child{display:flex;flex-direction:column}.fclema-roster-editor summary small{font-size:12px;color:var(--lema-muted);margin-top:3px}.fclema-team-counts{display:flex;gap:6px}.fclema-team-counts b{border:1px solid var(--lema-border);padding:5px 9px;background:#fff;font-size:13px}.fclema-roster-body{padding:18px}.fclema-captain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.fclema-captain-grid label{margin:0}.fclema-roster-search{max-width:420px;margin:10px 0}.fclema-roster-search label{font-weight:700}.fclema-roster-table-wrap{max-height:430px;overflow:auto;border:1px solid var(--lema-border)}.fclema-roster-table{width:100%;border-collapse:collapse}.fclema-roster-table th,.fclema-roster-table td{padding:9px 11px;border-bottom:1px solid var(--lema-border);text-align:left}.fclema-roster-table th{background:#222;color:#fff;position:sticky;top:0;z-index:1}.fclema-roster-table select{margin:0;max-width:190px}.fclema-roster-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:14px}.fclema-roster-footer span{color:var(--lema-muted);font-size:13px}.fclema-scorer-section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;border-left:4px solid var(--lema-red);padding-left:12px;margin:25px 0 14px}.fclema-scorer-section-title span{display:block;font-size:12px;color:var(--lema-muted);text-transform:uppercase}.fclema-scorer-section-title h3{margin:2px 0 0;color:var(--lema-dark)}.fclema-team-score-cards,.fclema-team-roster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fclema-team-score-card,.fclema-team-roster{border:1px solid var(--lema-border);background:#fff;padding:16px;position:relative;overflow:hidden}.fclema-team-score-card:before,.fclema-team-roster:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#999}.fclema-team-score-card.is-red:before,.fclema-team-roster.is-red:before{background:var(--team-red)}.fclema-team-score-card.is-blue:before,.fclema-team-roster.is-blue:before{background:var(--team-blue)}.fclema-team-score-card.is-white:before,.fclema-team-roster.is-white:before{background:#aaa}.fclema-team-score-card>div{display:flex;justify-content:space-between;align-items:center}.fclema-team-score-card>b{font-size:38px;line-height:1.1;display:inline-block;margin-top:8px}.fclema-team-score-card>small{margin-left:5px;color:var(--lema-muted)}.fclema-team-score-card p{margin:7px 0 0;color:var(--lema-muted);font-size:13px}.fclema-team-roster h4{margin:0 0 6px}.fclema-team-roster h4 small{font-weight:400;color:var(--lema-muted)}.fclema-team-roster .captain{font-size:13px;color:var(--lema-red);margin:0 0 8px}.fclema-section-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-bottom:10px}.fclema-section-tab{border:1px solid var(--lema-border);background:#fff;padding:9px 5px;font-weight:700;cursor:pointer}.fclema-section-tab small{display:block;font-size:10px;color:var(--lema-muted);font-weight:400}.fclema-section-tab.is-active{background:var(--lema-dark);color:#fff;border-color:var(--lema-dark)}.fclema-section-tab.is-active small{color:#ddd}.fclema-section-panel{border:1px solid var(--lema-border);background:#fff;padding:18px}.fclema-section-panel[hidden]{display:none}.fclema-section-panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--lema-border);padding-bottom:12px}.fclema-section-panel-head>div:first-child>span{color:var(--lema-red);font-size:12px;font-weight:800}.fclema-section-panel-head h4{margin:2px 0 0;font-size:25px}.fclema-section-panel-head h4 b{font-size:32px}.fclema-section-clock{text-align:right}.fclema-section-clock span{display:block;font-size:11px;color:var(--lema-muted)}.fclema-section-clock strong{font-size:22px}.fclema-section-times{font-size:12px;color:var(--lema-muted);margin:8px 0 14px}.fclema-goal-entry{background:#f8f8f8;border:1px solid #e0e0e0;padding:15px;margin:14px 0}.fclema-goal-entry-title{display:flex;justify-content:space-between}.fclema-goal-entry-title span{font-size:12px;color:var(--lema-muted)}.fclema-goal-grid{display:grid;grid-template-columns:1fr 1.5fr 1.5fr 1fr;gap:10px}.fclema-goal-grid label,.fclema-goal-note{font-size:13px}.fclema-goal-actions{display:flex;gap:8px;margin-top:12px}.fclema-event-list{margin-top:15px}.fclema-event-list-head{display:flex;justify-content:space-between;border-bottom:2px solid #222;padding-bottom:7px}.fclema-no-events{color:var(--lema-muted);background:#fafafa;padding:12px}.fclema-goal-event{display:grid;grid-template-columns:70px minmax(0,1fr) 60px auto;gap:12px;align-items:center;border-bottom:1px solid var(--lema-border);padding:10px 6px;border-left:4px solid #999}.fclema-goal-event.is-red{border-left-color:var(--team-red)}.fclema-goal-event.is-blue{border-left-color:var(--team-blue)}.fclema-goal-event time{font-weight:800;font-variant-numeric:tabular-nums}.fclema-goal-event strong{display:block}.fclema-goal-event small{display:block;color:var(--lema-muted)}.fclema-goal-event>b{text-align:center}.fclema-event-actions{display:flex;gap:4px}.fclema-event-actions button{border:1px solid #ccc;background:#fff;padding:5px 8px;cursor:pointer;color:#222!important;min-width:48px}.fclema-event-actions button.is-delete{color:#a91521!important}.fclema-end-section-row{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff6f6;border:1px solid #f0d0d3;padding:12px;margin-top:16px}.fclema-end-section-row span{font-size:13px;color:#6d4044}.fclema-final-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.fclema-final-summary-grid>div{border:1px solid var(--lema-border);padding:14px;text-align:center}.fclema-final-summary-grid span,.fclema-final-summary-grid small{display:block;color:var(--lema-muted);font-size:12px}.fclema-final-summary-grid strong{display:block;font-size:24px}.fclema-final-controls{display:flex;align-items:flex-end;gap:10px;margin-top:16px}.fclema-final-controls label{flex:1;margin:0}.fclema-final-submit{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;background:#111;color:#fff;padding:16px}.fclema-final-submit span{display:block;color:#ccc;font-size:13px}.fclema-submitted-note{margin-top:16px;padding:15px;border-left:4px solid var(--lema-red);background:#f7f7f7}.fclema-submitted-note p{margin:5px 0 0;color:var(--lema-muted)}.fclema-scorer-save-state{text-align:center;color:var(--lema-muted);font-size:12px;margin:18px 0}.fclema-scorer-app>.fclema-scorer-feedback.is-global{position:sticky;top:10px;z-index:10;background:#fff;border:1px solid transparent;padding:0;min-height:0}.fclema-scorer-app>.fclema-scorer-feedback.is-global.is-error,.fclema-scorer-app>.fclema-scorer-feedback.is-global.is-success{padding:9px 12px;border-color:var(--lema-border)}
@media(max-width:800px){.fclema-scorer-topbar{align-items:flex-start;display:block}.fclema-scorer-top-actions{margin-top:12px}.fclema-captain-grid,.fclema-team-score-cards,.fclema-team-roster-grid{grid-template-columns:1fr}.fclema-section-tabs{grid-template-columns:repeat(3,1fr)}.fclema-goal-grid{grid-template-columns:1fr 1fr}.fclema-final-summary-grid{grid-template-columns:1fr 1fr}.fclema-roster-footer,.fclema-end-section-row,.fclema-final-submit{align-items:stretch;flex-direction:column}.fclema-scorer-staff{display:block}.fclema-scorer-staff>div{margin-top:7px}.fclema-goal-event{grid-template-columns:58px minmax(0,1fr) 45px}.fclema-event-actions{grid-column:2/4}.fclema-section-panel-head h4{font-size:21px}.fclema-section-panel-head h4 b{font-size:27px}}
@media(max-width:520px){.fclema-scorer-app{margin-left:-4px;margin-right:-4px}.fclema-scorer-topbar,.fclema-section-panel,.fclema-roster-body{padding:14px}.fclema-roster-editor summary{padding:13px}.fclema-roster-editor summary{align-items:flex-start;flex-direction:column}.fclema-goal-grid{grid-template-columns:1fr}.fclema-section-tabs{grid-template-columns:repeat(3,1fr)}.fclema-final-controls{align-items:stretch;flex-direction:column}.fclema-scorer-section-title{align-items:flex-start;flex-direction:column}.fclema-section-panel-head{align-items:flex-start}.fclema-section-clock strong{font-size:18px}.fclema-scorer-primary,.fclema-scorer-secondary,.fclema-scorer-danger{width:100%}.fclema-goal-actions{flex-direction:column}.fclema-scorer-login-card{padding:22px 18px}}
@media print{body{background:#fff!important}.fclema-scorer-app{max-width:none!important;margin:0!important}.fclema-scorer-top-actions,.fclema-roster-editor,.fclema-goal-entry,.fclema-end-section-row,.fclema-final-controls,.fclema-final-submit,.fclema-scorer-save-state,.fclema-scorer-feedback,.fclema-section-tabs,.scroll-top,.menu-area,.rts-header-one,.site-header,header,footer{display:none!important}.fclema-section-panel{display:block!important;page-break-inside:avoid;margin:8px 0}.fclema-section-panel[hidden]{display:block!important}.fclema-team-score-cards,.fclema-team-roster-grid{grid-template-columns:repeat(3,1fr)!important}.fclema-scorer-app *{color:#111!important;background:#fff!important;box-shadow:none!important}.fclema-scorer-topbar{border:1px solid #ddd}.fclema-goal-event{page-break-inside:avoid}}
.fclema-provisional-points{margin:8px 0 12px;padding:8px 10px;background:#fff8e8;border-left:3px solid #d69a18;font-size:13px}.fclema-provisional-points strong{color:#6d4b00}
.fclema-member-badge{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:999px;background:#f0f0f0;color:#666;font-size:11px;font-weight:600;vertical-align:middle}.fclema-match-clockboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 8px}.fclema-match-clockboard>div{border:1px solid var(--lema-border);background:#111;color:#fff;padding:12px 10px;text-align:center}.fclema-match-clockboard span{display:block;color:#bbb;font-size:11px}.fclema-match-clockboard strong{display:block;margin-top:3px;font-size:26px;font-variant-numeric:tabular-nums;line-height:1.1}.fclema-match-clockboard [data-switch-remaining].is-due{color:#ffd166}.fclema-match-clockboard.is-overtime>div{background:#5f1017}.fclema-time-alert{margin:8px 0 12px;padding:11px 13px;border-left:4px solid #d69a18;background:#fff8e8;font-weight:700}.fclema-time-alert.is-warning{border-left-color:#d69a18;background:#fff8e8;color:#624600}.fclema-time-alert.is-critical{border-left-color:var(--lema-red);background:#fff0f1;color:#8d131e}.fclema-time-alert[hidden]{display:none!important}@media(max-width:520px){.fclema-match-clockboard{grid-template-columns:1fr 1fr}.fclema-match-clockboard>div:first-child{grid-column:1/3}.fclema-match-clockboard strong{font-size:24px}}

/* v1.7.19: explicit modify/delete actions for own external-match goals */
.fclema-event-actions button.is-edit{border-color:#b9c8dc;background:#eef4fb;color:#17395f!important}.fclema-event-actions button.is-edit:hover,.fclema-event-actions button.is-edit:focus{border-color:#17395f;background:#17395f;color:#fff!important}.fclema-event-actions button.is-delete{border-color:#f3c5ca;background:#fff0f1;color:#c82030!important}.fclema-event-actions button.is-delete:hover,.fclema-event-actions button.is-delete:focus{border-color:#c82030;background:#c82030;color:#fff!important}@media(max-width:800px){.fclema-event-actions{display:flex;justify-content:flex-end;gap:8px}.fclema-event-actions button{min-width:64px;padding:8px 12px;border-radius:8px;font-weight:700}}

.fclema-cancelled-public .fclema-scorer-message{margin:16px 0;background:#fff4f4;border-color:#e6b8b8;color:#8a2424}

/* v1.6.17: local goal-save feedback so errors are visible at the action area. */
.fclema-goal-feedback{
    margin-top:12px;
    padding:10px 12px;
    border-left:3px solid #d7d7d7;
    background:#f7f7f7;
    color:#222;
    font-size:14px;
}
.fclema-goal-feedback.is-success{
    border-left-color:#1d7a39;
}
.fclema-goal-feedback.is-error{
    border-left-color:#d9232e;
    background:#fff3f3;
    color:#9e1620;
}

/* v1.6.27 roster position reference */
.fclema-roster-position b,.fclema-roster-position small,.fclema-roster-position span{display:block}.fclema-roster-position b{color:#b51e29;font-size:13px}.fclema-roster-position small{margin-top:2px;color:var(--lema-muted);font-size:12px}.fclema-roster-position span{color:var(--lema-muted);font-size:12px}
.fclema-external-scoreboard{display:flex;align-items:center;justify-content:center;gap:34px;margin:22px 0;padding:28px;border-radius:16px;background:#111d2d;color:#fff;text-align:center}.fclema-external-scoreboard div{min-width:180px}.fclema-external-scoreboard span{display:block;font-size:18px;font-weight:700}.fclema-external-scoreboard strong{display:block;font-size:64px;line-height:1.1}.fclema-external-scoreboard>b{font-size:44px;color:#e12a39}.fclema-external-scorer .fclema-roster-summary{padding:22px}.fclema-external-scorer .fclema-roster-summary>p{line-height:1.8;color:#4c5969}
.fclema-mobile-match-actions{display:none}@media(max-width:520px){.fclema-mobile-match-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 12px;padding:10px 12px;border:1px solid #f0d0d3;border-radius:8px;background:#fff6f6}.fclema-mobile-match-actions>div{display:flex;align-items:baseline;gap:8px}.fclema-mobile-match-actions span{font-size:12px;color:#8d131e}.fclema-mobile-match-actions strong{font-size:22px;color:#8d131e;font-variant-numeric:tabular-nums}.fclema-mobile-match-actions strong.is-due{color:#d4202f}.fclema-mobile-match-actions button{padding:8px 12px;min-height:38px;white-space:nowrap}.fclema-section-panel>.fclema-end-section-row{display:none}}
