/* FLM v0.21 — widżety strony głównej */
.flm-home-widget-host .widget-title{margin:0 0 1.15rem;color:#17251f;font-size:1.38rem;font-weight:700}
.flm-home-widget-host{--flmw-green:#11663d;--flmw-green-dark:#0d5130;--flmw-yellow:#f3d439;--flmw-border:#d9e3dd;--flmw-soft:#f8faf8;--flmw-muted:#5b6c64;--flmw-ink:#17251f;color:var(--flmw-ink)}
.flm-widget-empty{padding:1rem;background:var(--flmw-soft);color:var(--flmw-muted);text-align:center;border:1px solid var(--flmw-border)}
.flm-home-match{background:var(--flmw-soft);border:1px solid var(--flmw-border);padding:1rem;text-align:center;position:relative}
.flm-widget-competition{margin:0 0 .9rem;font-size:.86rem;color:var(--flmw-muted)}
.flm-widget-competition a{color:var(--flmw-green-dark);font-weight:700;text-decoration:none}.flm-widget-competition span{margin-left:.25rem}
.flm-widget-fixture{display:grid;grid-template-columns:minmax(100px,1fr) 54px minmax(100px,1fr);gap:.7rem;align-items:center;margin:.4rem auto 1rem;max-width:520px}
.flm-widget-fixture>strong{color:var(--flmw-muted);font-size:.85rem}
.flm-widget-team{display:flex;flex-direction:column;align-items:center;gap:.45rem;font-size:.93rem;font-weight:650}.flm-widget-team img{height:70px;width:70px;object-fit:contain}.flm-widget-team a{color:var(--flmw-ink);text-decoration:none}
.flm-widget-team-link.is-dynamic-source{color:var(--flmw-green-dark);font-weight:800;text-decoration:none}.flm-widget-team-link.is-dynamic-source:hover,.flm-widget-team-link.is-dynamic-source:focus{text-decoration:none;color:var(--flmw-green)}
.flm-widget-date{font-size:.86rem;margin:.35rem 0 .85rem;color:var(--flmw-muted)}
.flm-countdown{display:flex;justify-content:center;gap:.62rem;margin:1rem auto 1.1rem}
.flm-countdown span{height:70px;width:70px;border:4px solid var(--flmw-green);border-radius:50%;display:flex;flex-direction:column;justify-content:center;background:#fff}
.flm-countdown b{font-size:1.55rem;line-height:1;font-variant-numeric:tabular-nums}.flm-countdown small{font-size:.64rem;color:var(--flmw-muted)}
.flm-widget-details{display:inline-flex;align-items:center;justify-content:center;padding:.48rem 1.1rem;color:var(--flmw-green-dark)!important;text-decoration:none!important;font-weight:800;text-transform:uppercase;font-size:.86rem}
.flm-home-match-last .flm-widget-fixture{margin-bottom:.6rem}.flm-widget-score{padding:.4rem .55rem;border:1px solid #b6c7bd;background:#fff;font-size:1.25rem;font-weight:750;color:var(--flmw-ink)!important;text-decoration:none!important;white-space:nowrap}
/* Kalendarz */
.flm-calendar-widget{border:1px solid var(--flmw-border);background:#fff}.flm-calendar-widget header{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;padding:.55rem .45rem;border-bottom:1px solid var(--flmw-border)}
.flm-calendar-widget header strong{text-align:center;text-transform:lowercase;font-size:1.06rem}.flm-calendar-widget button{border:0;background:none;color:var(--flmw-muted);font-size:1.6rem;cursor:pointer;line-height:1}
.flm-calendar-weekdays,.flm-calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}
.flm-calendar-weekdays span{text-align:center;padding:.45rem .1rem;color:var(--flmw-muted);font-size:.73rem;font-weight:700}
.flm-calendar-day{position:relative;min-height:52px;border:1px solid #edf1ee;border-bottom:0;border-left:0;background:#fff;padding:.25rem;cursor:pointer;color:var(--flmw-ink)}
.flm-calendar-day:nth-child(7n+1){border-left:0}.flm-calendar-day.is-other{color:#b7bfbb;background:#fafbfb}.flm-calendar-day.has-events{background:#eef5f0}.flm-calendar-day.is-selected{background:#18734a;color:#fff}.flm-calendar-day b{font-size:.79rem;font-weight:500}.flm-calendar-markers{position:absolute;right:4px;top:4px;display:flex;gap:2px}.flm-calendar-marker{display:block;width:6px;height:6px;border-radius:50%;background:var(--flmw-green)}.flm-calendar-day.is-selected .flm-calendar-marker{background:var(--flmw-yellow)}
.flm-calendar-details{border-top:1px solid var(--flmw-border);padding:.55rem}.flm-calendar-details h4{font-size:.84rem;text-transform:uppercase;margin:.2rem 0 .45rem;border-bottom:2px solid #d9e3dd;padding-bottom:.35rem}
.flm-calendar-event{display:grid;grid-template-columns:62px 1fr auto;gap:.55rem;align-items:center;border-bottom:1px solid #edf1ee;padding:.55rem 0}.flm-calendar-event:last-child{border-bottom:0}.flm-calendar-event time{font-weight:700;font-size:.85rem}.flm-calendar-event div{display:flex;flex-direction:column;gap:.28rem}.flm-calendar-event span{display:flex;align-items:center;gap:.4rem;font-size:.87rem}.flm-calendar-event img{width:23px;height:23px;object-fit:contain}.flm-calendar-event a{color:var(--flmw-green-dark);font-weight:700;text-decoration:none}.flm-calendar-event strong{font-size:.88rem}
/* Urodziny */
.flm-birthday-list{display:flex;flex-direction:column;gap:.62rem}.flm-birthday-card{display:grid;grid-template-columns:1fr 66px 2fr auto;gap:.65rem;align-items:center;padding:.58rem;border:1px solid var(--flmw-border);background:#fff}.flm-birthday-date{grid-column:1 / -1;padding-bottom:.38rem;border-bottom:1px solid #edf1ee;color:var(--flmw-muted);font-size:.82rem;font-weight:700}.flm-birthday-card img{width:62px;height:62px;object-fit:cover}.flm-birthday-card strong,.flm-birthday-card span,.flm-birthday-card small{display:block}.flm-birthday-card strong a{color:var(--flmw-ink);text-decoration:none}.flm-birthday-card small{color:var(--flmw-muted);font-size:.78rem}.flm-birthday-card span a{color:var(--flmw-green-dark);font-size:.8rem;text-decoration:none}.flm-birthday-card>b{font-size:1.15rem;color:var(--flmw-muted)}
/* Skróty */
.flm-highlights-list{display:grid;gap:.8rem}.flm-highlight-card{position:relative}.flm-highlight-card a{display:block;position:relative;color:var(--flmw-ink);text-decoration:none}.flm-highlight-card img,.flm-video-placeholder{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#e7eee9}.flm-video-placeholder{display:grid;place-items:center;font-size:2rem;color:var(--flmw-green)}.flm-highlight-card strong,.flm-highlight-card small{display:block;padding:.3rem .15rem 0}.flm-highlight-card strong{font-size:.9rem}.flm-highlight-card small{color:var(--flmw-muted);font-size:.78rem}.flm-play-badge{position:absolute;left:50%;top:calc(50% - 26px);transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(17,102,61,.9);color:#fff;font-size:1.1rem;padding-left:3px}
@media(max-width:520px){.flm-widget-fixture{grid-template-columns:1fr 45px 1fr}.flm-widget-team img{height:55px;width:55px}.flm-countdown span{height:62px;width:62px}.flm-countdown b{font-size:1.3rem}.flm-birthday-card{grid-template-columns:58px 1fr auto}.flm-birthday-card img{width:54px;height:54px}.flm-birthday-card .flm-birthday-date{grid-column:1 / -1}}

/* FLM v0.23 — dopracowanie widgetów strony głównej */
.flm-widget-team-link{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--flmw-ink)!important;text-decoration:none!important}
.flm-widget-team img{width:var(--flmw-crest-size,105px);height:var(--flmw-crest-size,105px);max-width:100%;object-fit:contain}
.flm-widget-date a{color:var(--flmw-muted);text-decoration:none;font-weight:650}
.flm-widget-date a:hover{color:var(--flmw-green-dark)}
.flm-home-match-last{padding-top:1.15rem;padding-bottom:1.15rem}
.flm-home-match-last .flm-widget-fixture{margin:.75rem auto .85rem;grid-template-columns:minmax(92px,1fr) auto minmax(92px,1fr);gap:1rem}
.flm-widget-score{display:inline-flex!important;align-items:center;justify-content:center;gap:.38rem;min-width:116px;padding:.48rem .72rem!important;border:2px solid var(--flmw-green-dark)!important;border-radius:5px;background:var(--flmw-green)!important;color:#fff!important;box-shadow:inset 0 -4px 0 rgba(0,0,0,.13),0 2px 8px rgba(13,81,48,.17);font-size:var(--flmw-score-size,42px)!important;font-weight:800!important;line-height:1!important}
.flm-widget-score span{font-variant-numeric:tabular-nums;min-width:.58em}
.flm-widget-score i{font-size:.68em;font-style:normal;color:var(--flmw-yellow)}
.flm-calendar-markers{right:2px;top:2px;gap:1px}
.flm-calendar-marker{display:inline-flex;width:auto;height:auto;border-radius:0;background:none!important;color:var(--flmw-green-dark);font-size:.68rem;line-height:1;font-style:normal}
.flm-calendar-day.is-selected .flm-calendar-marker{color:#fff}
.flm-birthday-list{gap:.75rem}
.flm-birthday-card{grid-template-columns:76px minmax(0,1fr) 48px;gap:.7rem;align-items:center;padding:.7rem;border:1px solid var(--flmw-border);background:#fff}
.flm-birthday-date{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;grid-column:1/-1;padding:0 0 .62rem;margin-bottom:.05rem;border-bottom:1px solid #edf1ee}
.flm-birthday-date strong{font-size:1.05rem;color:var(--flmw-green-dark);font-weight:800;text-transform:lowercase}
.flm-birthday-date small{font-size:.76rem;color:var(--flmw-muted);font-weight:650}
.flm-birthday-photo{width:70px!important;height:70px!important;border-radius:3px;border:1px solid var(--flmw-border);object-fit:cover}
.flm-birthday-copy{min-width:0}
.flm-birthday-copy>strong a{display:block;font-size:1rem;line-height:1.22;overflow-wrap:normal;word-break:normal}
.flm-birthday-copy>small{font-size:.82rem;margin:.18rem 0 .32rem}
.flm-widget-inline-team{display:inline-flex!important;align-items:center;gap:.35rem;min-width:0}
.flm-widget-inline-team img{display:block!important;width:22px!important;height:22px!important;object-fit:contain}
.flm-widget-inline-team a{font-size:.83rem!important;font-weight:650;line-height:1.2}
.flm-birthday-age{display:flex!important;flex-direction:column;align-items:center;justify-content:center;color:var(--flmw-green-dark)!important;line-height:1}
.flm-birthday-age strong{font-size:1.28rem}
.flm-birthday-age small{font-size:.7rem!important;text-transform:uppercase;letter-spacing:.04em;margin-top:.22rem}
.flm-highlight-card strong,.flm-highlight-card small{display:none}
.flm-play-badge{top:50%}
@media(max-width:520px){
 .flm-widget-team img{width:var(--flmw-crest-size,92px);height:var(--flmw-crest-size,92px)}
 .flm-birthday-card{grid-template-columns:62px minmax(0,1fr) 40px;gap:.58rem}
 .flm-birthday-photo{width:58px!important;height:58px!important}
 .flm-birthday-date strong{font-size:1rem}
 .flm-birthday-copy>strong a{font-size:.94rem}
 .flm-birthday-age strong{font-size:1.15rem}
}

.flm-calendar-marker{display:block!important;width:12px!important;height:12px!important;object-fit:contain;background:none!important}
.flm-calendar-marker-fallback{display:inline-flex;font-size:.68rem;line-height:1;font-style:normal;color:var(--flmw-green-dark)}
.flm-calendar-day.is-selected .flm-calendar-marker{filter:brightness(0) invert(1)}

/* v0.23.1 — lekka, sportowa tablica wyniku ostatniego meczu */
.flm-home-match-last .flm-widget-fixture.has-score{
    grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr);
    align-items:center;
    gap:clamp(.75rem,3vw,1.55rem);
}
.flm-widget-score-modern{
    display:grid!important;
    grid-template-columns:auto auto auto;
    grid-template-rows:auto auto;
    grid-template-areas:"label label label" "home colon away";
    align-items:center;
    justify-items:center;
    column-gap:.35rem;
    row-gap:.35rem;
    min-width:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:var(--flmw-ink)!important;
    text-decoration:none!important;
}
.flm-widget-score-modern small{
    grid-area:label;
    color:var(--flmw-muted);
    font-size:.68rem;
    font-weight:750;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.flm-widget-score-modern .flm-score-home{grid-area:home}
.flm-widget-score-modern .flm-score-away{grid-area:away}
.flm-widget-score-modern i{
    grid-area:colon;
    display:block;
    color:var(--flmw-green-dark)!important;
    font-size:calc(var(--flmw-score-size,42px) * .68)!important;
    line-height:1;
    font-weight:800;
    font-style:normal;
}
.flm-widget-score-modern .flm-score-tile{
    display:grid;
    place-items:center;
    width:clamp(52px,5.4vw,66px);
    height:clamp(58px,5.8vw,72px);
    background:#fff;
    border:1px solid #c9d6cf;
    border-radius:4px;
    color:#17251f;
    font-size:var(--flmw-score-size,42px)!important;
    font-weight:800!important;
    line-height:1;
    font-variant-numeric:tabular-nums;
    box-shadow:0 1px 3px rgba(16,24,40,.06);
}
.flm-widget-score-modern .flm-score-tile.is-winner{
    border-color:var(--flmw-green);
    box-shadow:inset 0 -4px 0 var(--flmw-yellow),0 1px 4px rgba(13,81,48,.12);
}
.flm-widget-score-modern:hover .flm-score-tile{
    border-color:var(--flmw-green);
}
@media(max-width:520px){
    .flm-home-match-last .flm-widget-fixture.has-score{gap:.55rem}
    .flm-widget-score-modern .flm-score-tile{width:48px;height:56px}
}

/* v1.0.7 — linkowane herby i nazwy drużyn w szczegółach kalendarza */
.flm-calendar-event .flm-calendar-team{display:inline-flex;align-items:center;gap:.4rem;color:inherit;text-decoration:none}
.flm-calendar-event .flm-calendar-team:hover,.flm-calendar-event .flm-calendar-team:focus{color:var(--flm-green-dark);text-decoration:underline}
.flm-calendar-event .flm-calendar-team.is-dynamic-source{color:var(--flmw-green-dark);font-weight:800;text-decoration:none}
.flm-calendar-event .flm-calendar-team.is-dynamic-source:hover,.flm-calendar-event .flm-calendar-team.is-dynamic-source:focus{text-decoration:none;color:var(--flmw-green)}


/* v1.0.39 — strona typera z kartami kolejki i modalem typu */
.flm-typer-page,.flm-typer-widget{--flmw-green:#11663d;--flmw-green-dark:#0d5130;--flmw-yellow:#f3d439;--flmw-border:#d9e3dd;--flmw-soft:#f7faf8;--flmw-muted:#5b6c64;--flmw-ink:#17251f;color:var(--flmw-ink);font-family:inherit;box-sizing:border-box}
.flm-typer-page *,.flm-typer-widget *{box-sizing:border-box}
.flm-typer-page{display:flex;flex-direction:column;gap:1.25rem;max-width:1120px;margin:0 auto}
.flm-typer-scope{display:inline-flex;align-items:center;max-width:max-content;margin:0;padding:.55rem .85rem;border:1px solid var(--flmw-border);border-radius:999px;background:var(--flmw-soft);font-size:.84rem;font-weight:750;color:var(--flmw-green-dark)}
.flm-typer-notice{padding:.72rem .9rem;margin:0 0 1rem;border-left:4px solid var(--flmw-green);background:#edf7f1;color:var(--flmw-ink);font-size:.9rem}
.flm-typer-notice.is-error{border-left-color:#b42318;background:#fff1f1;color:#922018}
.flm-typer-account{padding:clamp(1rem,2.4vw,1.45rem);border:1px solid var(--flmw-border);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(23,37,31,.04)}
.flm-typer-account-head{display:flex;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding-bottom:.85rem;border-bottom:1px solid #edf1ee}
.flm-typer-account-head h2{margin:0 0 .2rem;font-size:1.16rem;color:var(--flmw-ink)}
.flm-typer-account-head p{margin:0;color:var(--flmw-muted);font-size:.88rem}
.flm-typer-account-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:1rem}
.flm-typer-account-grid.is-single{grid-template-columns:minmax(260px,470px)}
.flm-typer-account-card{padding:1rem;border:1px solid var(--flmw-border);border-radius:10px;background:var(--flmw-soft)}
.flm-typer-account-card h3{margin:0 0 .85rem;font-size:1rem;color:var(--flmw-green-dark)}
.flm-typer-form{display:grid;gap:.72rem;margin:0}
.flm-typer-field{display:grid;gap:.3rem;font-size:.82rem;font-weight:700;color:var(--flmw-muted)}
.flm-typer-field input{display:block;width:100%;min-height:43px;padding:.55rem .65rem;border:1px solid #c7d4cd;border-radius:7px;background:#fff;color:var(--flmw-ink);font:inherit}
.flm-typer-field input:focus{outline:2px solid rgba(17,102,61,.2);border-color:var(--flmw-green)}
.flm-typer-primary,.flm-typer-secondary,.flm-typer-pick{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:0;border-radius:7px;padding:.6rem .95rem;font-size:.9rem;font-weight:750;cursor:pointer;text-decoration:none}
.flm-typer-primary,.flm-typer-pick{background:var(--flmw-green);color:#fff}
.flm-typer-primary:hover,.flm-typer-primary:focus,.flm-typer-pick:hover,.flm-typer-pick:focus{background:var(--flmw-green-dark);color:#fff}
.flm-typer-secondary{border:1px solid var(--flmw-green);background:#fff;color:var(--flmw-green-dark)}
.flm-typer-secondary:hover,.flm-typer-secondary:focus{background:#edf7f1}
.flm-typer-mail{margin-top:.95rem;padding-top:.95rem;border-top:1px solid var(--flmw-border)}
.flm-typer-check{display:flex!important;align-items:flex-start;gap:.45rem!important;font-size:.84rem!important;font-weight:500!important;color:var(--flmw-ink)!important}
.flm-typer-check input{flex:0 0 auto;width:auto!important;margin-top:.2rem}
.flm-typer-session{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;border:1px solid var(--flmw-border);border-radius:10px;background:var(--flmw-soft)}
.flm-typer-session small{display:block;margin-bottom:.2rem;color:var(--flmw-muted);font-size:.78rem}
.flm-typer-session strong{display:block;font-size:1.04rem;color:var(--flmw-green-dark)}
.flm-typer-session form{margin:0}
.flm-typer-options{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1rem 0 0;padding:.8rem 1rem;border:1px solid var(--flmw-border);border-radius:10px;background:#fff}
.flm-typer-matches{padding:clamp(1rem,2.4vw,1.45rem);border:1px solid var(--flmw-border);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(23,37,31,.04)}
.flm-typer-round-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding-bottom:.9rem;border-bottom:1px solid #edf1ee}
.flm-typer-round-head span{display:block;margin-bottom:.25rem;color:var(--flmw-muted);font-size:.76rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.flm-typer-round-head h2{margin:0;color:var(--flmw-ink);font-size:1.35rem}
.flm-typer-round-head p{margin:0;color:var(--flmw-muted);font-size:.84rem;text-align:right}
.flm-typer-match-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));align-items:stretch;gap:.82rem;padding:.05rem 0 .25rem}
.flm-typer-match{display:flex;min-width:0;flex-direction:column;min-height:312px;padding:.85rem;border:1px solid var(--flmw-border);border-radius:10px;background:#fff}
.flm-typer-match.is-open{border-color:#bfdbc9;box-shadow:inset 0 3px 0 var(--flmw-green)}
.flm-typer-match time{display:block;margin:0 0 .78rem;color:var(--flmw-muted);font-size:.77rem;font-weight:700;text-align:center}
.flm-typer-fixture{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);gap:.4rem;align-items:center;margin-bottom:.8rem;text-align:center}
.flm-typer-fixture a{display:flex;flex-direction:column;align-items:center;gap:.42rem;color:var(--flmw-ink);font-size:.8rem;font-weight:700;line-height:1.22;text-decoration:none}
.flm-typer-fixture a:hover,.flm-typer-fixture a:focus{color:var(--flmw-green-dark);text-decoration:underline}
.flm-typer-fixture img{display:block;width:46px;height:46px;object-fit:contain}
.flm-typer-fixture b{font-size:1.05rem;color:var(--flmw-muted)}
.flm-typer-current{margin:.2rem 0 .68rem;padding:.43rem .52rem;border-radius:6px;background:var(--flmw-soft);font-size:.82rem;text-align:center;color:var(--flmw-muted)}
.flm-typer-current strong{color:var(--flmw-green-dark)}
.flm-typer-pick{width:100%;text-transform:uppercase;letter-spacing:.03em}
.flm-typer-state{display:flex;align-items:center;justify-content:center;min-height:42px;padding:.55rem .6rem;border-radius:7px;background:#eef2f0;color:var(--flmw-muted);font-size:.82rem;font-weight:700;text-align:center}
.flm-widget-empty{padding:1rem;border:1px solid var(--flmw-border);background:var(--flmw-soft);color:var(--flmw-muted);text-align:center}
.flm-typer-ranking{max-width:520px;padding:1.05rem 1.15rem;border:1px solid var(--flmw-border);border-radius:12px;background:#fff}
.flm-typer-ranking h3,.flm-typer-ranking h4{margin:0 0 .72rem;color:var(--flmw-ink);font-size:1rem;text-transform:uppercase;letter-spacing:.04em}
.flm-typer-ranking ol{list-style:none;counter-reset:flm-typer;margin:0;padding:0;border:1px solid var(--flmw-border);border-radius:8px;overflow:hidden;background:#fff}
.flm-typer-ranking li{counter-increment:flm-typer;display:grid;grid-template-columns:32px 1fr auto;gap:.45rem;align-items:center;padding:.62rem .7rem;border-bottom:1px solid #edf1ee;font-size:.88rem}
.flm-typer-ranking li:last-child{border-bottom:0}
.flm-typer-ranking li:before{content:counter(flm-typer) '.';font-weight:750;color:var(--flmw-muted)}
.flm-typer-ranking li strong{color:var(--flmw-green-dark)}
.flm-typer-ranking-full{max-width:none;padding:clamp(1rem,2.4vw,1.45rem);border-radius:14px;box-shadow:0 2px 10px rgba(23,37,31,.04)}
.flm-typer-ranking-head{margin:0 0 1rem;padding-bottom:.9rem;border-bottom:1px solid #edf1ee}
.flm-typer-ranking-head h2{margin:0 0 .28rem;color:var(--flmw-ink);font-size:1.25rem}
.flm-typer-ranking-head p{margin:0;color:var(--flmw-muted);font-size:.86rem}
.flm-typer-ranking-full li{padding:.74rem .82rem}
.flm-typer-ranking-user{display:flex;flex-direction:column;gap:.12rem;min-width:0;color:var(--flmw-ink);font-weight:750}
.flm-typer-ranking-user small{color:var(--flmw-muted);font-size:.76rem;font-weight:650}
.flm-typer-modal[hidden]{display:none}
.flm-typer-modal{position:fixed;z-index:100001;inset:0;display:grid;place-items:center;padding:1rem;background:rgba(15,24,20,.52)}
.flm-typer-modal-dialog{position:relative;width:min(470px,100%);padding:1.3rem 1.2rem 1.2rem;border-radius:14px;background:#fff;box-shadow:0 20px 56px rgba(0,0,0,.22)}
.flm-typer-modal-close{position:absolute;right:.7rem;top:.55rem;width:40px;height:40px;border:0;background:none;color:var(--flmw-muted);font-size:1.75rem;line-height:1;cursor:pointer}
.flm-typer-modal-overline{margin:0 0 .28rem;color:var(--flmw-muted);font-size:.76rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.flm-typer-modal-dialog h3{margin:0 2rem 1.15rem 0;color:var(--flmw-ink);font-size:1.16rem}
.flm-typer-modal-form{display:grid;gap:1.05rem}
.flm-typer-score{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.65rem;align-items:end}
.flm-typer-score label{display:flex;flex-direction:column;gap:.45rem;align-items:center;color:var(--flmw-muted);font-size:.78rem;font-weight:650;text-align:center}
.flm-typer-score input{display:block;width:72px;height:62px;padding:.3rem;border:1px solid #bfd1c7;border-radius:8px;background:#fff;color:var(--flmw-ink);font-size:1.65rem;font-weight:800;text-align:center}
.flm-typer-score b{padding-bottom:1.05rem;color:var(--flmw-green-dark);font-size:1.4rem}
.flm-typer-modal-login{display:grid;gap:1rem;color:var(--flmw-muted)}
.flm-typer-modal-login p{margin:0}
html.flm-typer-modal-open{overflow:hidden}
.flm-typer-widget{display:flex;flex-direction:column;gap:.9rem}
.flm-typer-widget .flm-typer-ranking{max-width:none;padding:0;border:0;border-radius:0}
.flm-typer-page-link{display:block;margin-top:.1rem;padding:.68rem .8rem;border-radius:7px;text-align:center;text-decoration:none;background:var(--flmw-green);color:#fff;font-weight:750}
.flm-typer-page-link:hover,.flm-typer-page-link:focus{background:var(--flmw-green-dark);color:#fff}
@media(max-width:700px){.flm-typer-account-grid{grid-template-columns:1fr}.flm-typer-round-head{display:block}.flm-typer-round-head p{margin-top:.55rem;text-align:left}.flm-typer-match{flex-basis:230px}.flm-typer-session{align-items:flex-start;flex-direction:column}.flm-typer-options{align-items:flex-start;flex-direction:column}}


/* v1.0.40 — zakładki, historia typów i zawijane karty spotkań */
.flm-typer-tabs{display:flex;gap:.45rem;flex-wrap:wrap;padding:.35rem;border:1px solid var(--flmw-border);border-radius:12px;background:var(--flmw-soft)}
.flm-typer-tab{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.65rem 1.2rem;border:0;border-radius:9px;background:transparent;color:var(--flmw-muted);font:inherit;font-size:.94rem;font-weight:750;cursor:pointer}
.flm-typer-tab:hover,.flm-typer-tab:focus-visible{background:#edf5f0;color:var(--flmw-green-dark);outline:none}
.flm-typer-tab.is-active{background:var(--flmw-green);color:#fff;box-shadow:0 1px 3px rgba(13,81,48,.15)}
.flm-typer-panel[hidden]{display:none}
.flm-typer-panel{display:flex;flex-direction:column;gap:1.2rem}
.flm-typer-match-actions{display:grid;gap:.52rem;margin-top:auto}
.flm-typer-report{display:flex;align-items:center;justify-content:center;min-height:40px;padding:.52rem .72rem;border:1px solid var(--flmw-green);border-radius:7px;background:#fff;color:var(--flmw-green-dark);font-size:.82rem;font-weight:720;line-height:1.2;text-align:center;text-decoration:none}
.flm-typer-report:hover,.flm-typer-report:focus{background:#edf7f1;color:var(--flmw-green-dark)}
.flm-typer-history{padding:clamp(1rem,2.4vw,1.45rem);border:1px solid var(--flmw-border);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(23,37,31,.04)}
.flm-typer-history-head{margin:0 0 1rem;padding-bottom:.9rem;border-bottom:1px solid #edf1ee}
.flm-typer-history-head h2{margin:0 0 .28rem;font-size:1.25rem;color:var(--flmw-ink)}
.flm-typer-history-head p{margin:0;color:var(--flmw-muted);font-size:.86rem}
.flm-typer-history-list{display:grid;gap:.65rem}
.flm-typer-history-item{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:.8rem;align-items:center;padding:.8rem .9rem;border:1px solid var(--flmw-border);border-radius:9px;background:var(--flmw-soft)}
.flm-typer-history-item time{display:block;margin:0 0 .24rem;color:var(--flmw-muted);font-size:.75rem;font-weight:700}
.flm-typer-history-item strong{display:block;font-size:.9rem;color:var(--flmw-ink)}
.flm-typer-history-pick,.flm-typer-history-result{margin:0;padding:.42rem .58rem;border-radius:6px;background:#fff;color:var(--flmw-muted);font-size:.82rem;white-space:nowrap}
.flm-typer-history-pick b{margin-left:.3rem;color:var(--flmw-green-dark);font-size:.92rem}
.flm-typer-history-result strong{display:inline;margin-left:.45rem;color:var(--flmw-green-dark)}
.flm-typer-history-result.is-pending{background:#eef2f0}
@media(max-width:700px){.flm-typer-tab{flex:1 1 calc(50% - .45rem);padding:.6rem .7rem}.flm-typer-match-row{grid-template-columns:1fr}.flm-typer-match{min-height:0}.flm-typer-history-item{grid-template-columns:1fr;gap:.55rem}.flm-typer-history-pick,.flm-typer-history-result{white-space:normal}}

/* v1.0.41 — sezon punktacyjny i ustawienia konta typera */
.flm-typer-badges{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.flm-typer-season,.flm-typer-widget-season{display:inline-flex;align-items:center;max-width:max-content;margin:0;padding:.55rem .85rem;border:1px solid #e8d79a;border-radius:999px;background:#fff8de;color:#69540a;font-size:.84rem;font-weight:750}
.flm-typer-login-modes{display:grid;gap:.48rem;margin:.15rem 0 0;padding:.75rem;border:1px solid var(--flmw-border);border-radius:8px;background:#fff}
.flm-typer-login-modes legend{padding:0 .35rem;color:var(--flmw-muted);font-size:.82rem;font-weight:750}
.flm-typer-choice{display:flex;gap:.55rem;align-items:flex-start;padding:.52rem .58rem;border:1px solid var(--flmw-border);border-radius:7px;background:#fff;color:var(--flmw-ink);font-size:.84rem;font-weight:650;cursor:pointer}
.flm-typer-choice input{width:auto;min-height:0;margin:.16rem 0 0;accent-color:var(--flmw-green)}
.flm-typer-choice:has(input:checked){border-color:var(--flmw-green);background:#edf7f1}
.flm-typer-widget-season{padding:.42rem .7rem;font-size:.78rem}

.flm-typer-recovery{display:grid;gap:.72rem;margin-top:.95rem;padding-top:.95rem;border-top:1px solid var(--flmw-border)}
.flm-typer-recovery h4{margin:0;color:var(--flmw-green-dark);font-size:.94rem;line-height:1.35}
.flm-typer-recovery-user{margin:0;padding:.72rem .78rem;border-radius:7px;background:#fff;color:var(--flmw-muted);font-size:.88rem}
.flm-typer-recovery-user strong{color:var(--flmw-green-dark)}

/* v1.0.44 — czas zamknięcia typowania i licznik kart meczu */
.flm-typer-countdown{margin:.15rem 0 .68rem;padding:.48rem .55rem;border-radius:7px;background:#fff8de;color:#69540a;font-size:.8rem;font-weight:700;text-align:center}
.flm-typer-countdown strong{display:block;margin-top:.16rem;color:var(--flmw-green-dark);font-size:1rem;font-variant-numeric:tabular-nums}
.flm-typer-countdown.is-closed{background:#eef2f0;color:var(--flmw-muted)}

/* v1.0.45 — regulamin sezonu typera i akceptacja przed pierwszym typem */
.flm-typer-rules-prompt{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin:0;padding:.82rem .92rem;border:1px solid #e8d79a;border-radius:10px;background:#fff8de;color:#69540a;font-size:.9rem;font-weight:650}
.flm-typer-rules-prompt button{appearance:none;padding:0;border:0;background:transparent;color:var(--flmw-green-dark);font:inherit;font-weight:750;text-decoration:underline;cursor:pointer}
.flm-typer-rules-accept{display:flex;gap:.58rem;align-items:flex-start;padding:.72rem .76rem;border:1px solid #dcebe2;border-radius:8px;background:var(--flmw-soft);color:var(--flmw-ink);font-size:.88rem;font-weight:650}
.flm-typer-rules-accept input{width:auto;min-height:0;margin:.17rem 0 0;accent-color:var(--flmw-green)}
.flm-typer-rules-accept button{appearance:none;padding:0;border:0;background:transparent;color:var(--flmw-green-dark);font:inherit;font-weight:750;text-decoration:underline;cursor:pointer}
.flm-typer-rules{padding:clamp(1rem,2.4vw,1.45rem);border:1px solid var(--flmw-border);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(23,37,31,.04)}
.flm-typer-rules-head{margin:0 0 1rem;padding-bottom:.9rem;border-bottom:1px solid #edf1ee}
.flm-typer-rules-head h2{margin:0 0 .28rem;font-size:1.25rem;color:var(--flmw-ink)}
.flm-typer-rules-head p{margin:0;color:var(--flmw-muted);font-size:.86rem}
.flm-typer-rules h3{margin:0 0 .9rem;color:var(--flmw-green-dark);font-size:1.08rem}
.flm-typer-rules-content{color:var(--flmw-ink);font-size:.94rem;line-height:1.62}
.flm-typer-rules-content p,.flm-typer-rules-content ul,.flm-typer-rules-content ol{margin:.7rem 0}
.flm-typer-rules-content ul,.flm-typer-rules-content ol{padding-left:1.35rem}
.flm-typer-rules-status{margin:1.15rem 0 0;padding:.7rem .8rem;border-radius:8px;background:#fff8de;color:#69540a;font-size:.88rem;font-weight:700}
.flm-typer-rules-status.is-accepted{background:#e7f5ec;color:var(--flmw-green-dark)}

.flm-typer-fixture.has-result b{font-size:1.08rem;color:var(--flmw-green-dark);font-weight:800;white-space:nowrap}
.flm-typer-points{margin:-.38rem 0 .68rem;padding:.4rem .52rem;border-radius:6px;background:#edf7f1;color:var(--flmw-muted);font-size:.82rem;text-align:center}
.flm-typer-points strong{color:var(--flmw-green-dark);font-size:1rem}
.flm-calendar-event time small,.flm-calendar-event time span{display:block;font-size:inherit;font-weight:inherit;color:inherit;line-height:1.12}.flm-calendar-event small{font-size:.72rem;color:var(--flmw-muted);line-height:1.25}.flm-calendar-event .flm-calendar-training-status{font-size:.72rem;font-weight:700;text-align:right;color:var(--flmw-muted)}.flm-calendar-training strong{font-size:.85rem}.flm-calendar-marker-training{opacity:.92}.flm-calendar-day.is-selected .flm-calendar-marker-training{filter:brightness(0) invert(1)}
.flm-calendar-match .flm-calendar-match-meta{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap;width:max-content;max-width:100%;margin:0 0 .08rem;padding:.18rem .48rem;border-left:3px solid var(--flmw-yellow);background:#eef7f1;color:var(--flmw-green-dark);font-size:.72rem;font-weight:800;line-height:1.22}
.flm-calendar-match .flm-calendar-match-meta strong{font-size:inherit;font-weight:800;line-height:1.22}
.flm-calendar-match .flm-calendar-match-meta small{font-size:.7rem;color:var(--flmw-muted);font-weight:700;line-height:1.22}
.flm-calendar-event .flm-calendar-team img{flex:0 0 23px}
@media(max-width:520px){.flm-calendar-match .flm-calendar-match-meta{width:100%;font-size:.69rem}.flm-calendar-event{grid-template-columns:54px minmax(0,1fr) auto}.flm-calendar-event .flm-calendar-team{min-width:0}.flm-calendar-event .flm-calendar-team img{flex-basis:21px;width:21px;height:21px}}
.flm-calendar-event .flm-calendar-match-action{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.18rem;min-width:5.8rem;text-align:right}.flm-calendar-event .flm-calendar-match-score{font-size:1rem;line-height:1.05}.flm-calendar-event .flm-calendar-prematch-link{font-size:.72rem;line-height:1.15;color:var(--flmw-muted);font-weight:800;text-align:right}.flm-calendar-event .flm-calendar-prematch-link:hover,.flm-calendar-event .flm-calendar-prematch-link:focus{color:var(--flmw-green-dark);text-decoration:underline}@media(max-width:520px){.flm-calendar-event .flm-calendar-match-action{min-width:4.6rem}.flm-calendar-event .flm-calendar-prematch-link{font-size:.67rem;max-width:5.8rem}}

/* v1.0.103 — publiczna widoczność typów uczestnika */
.flm-typer-help{margin:.1rem 0 0;color:var(--flmw-muted);font-size:.84rem;line-height:1.45}
.flm-typer-ranking-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.34rem;min-width:86px}
.flm-typer-public-open{appearance:none;padding:.34rem .58rem;border:1px solid var(--flmw-green);border-radius:999px;background:#fff;color:var(--flmw-green-dark);font-size:.74rem;font-weight:800;line-height:1;cursor:pointer;white-space:nowrap}
.flm-typer-public-open:hover,.flm-typer-public-open:focus{background:var(--flmw-green);color:#fff}
.flm-typer-public-dialog{width:min(760px,100%);max-height:min(86vh,820px);overflow:auto}
.flm-typer-public-season{margin:-.75rem 2rem 1rem 0;color:var(--flmw-muted);font-size:.86rem;font-weight:700}
.flm-typer-public-list{gap:.55rem}
.flm-typer-public-pick-item{grid-template-columns:minmax(190px,1fr) auto auto;background:#fff}
@media(max-width:700px){.flm-typer-ranking-actions{align-items:flex-start}.flm-typer-public-open{white-space:normal}.flm-typer-public-pick-item{grid-template-columns:1fr}}
