:root{
  --red:#d71920;--red-dark:#990b13;--orange:#ff7a18;--black:#080811;--panel:#11111b;--bg:#f5f6fb;--card:#ffffff;--text:#181821;--muted:#747484;--line:#e7e8ef;--success:#0c8f45;--danger:#c61423;--shadow:0 18px 45px rgba(12,12,20,.10);--radius:22px;
}
*{box-sizing:border-box}html{min-height:100%;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}body{margin:0;min-height:100%;}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-body{background:linear-gradient(180deg,#f8f9fd 0%,#eef0f7 100%);}
.app-shell{min-height:100vh;display:flex}.sidebar{width:290px;background:radial-gradient(circle at top left,rgba(255,122,24,.22),transparent 34%),linear-gradient(180deg,#11111b,#080811);color:white;padding:24px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:10;box-shadow:14px 0 40px rgba(0,0,0,.18)}
.brand-block{display:flex;gap:14px;align-items:center;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-logo{width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(215,25,32,.35))}.brand-block strong{display:block;font-size:20px}.brand-block small{display:block;color:#cfcfda;font-size:12px;margin-top:4px}.side-nav{display:grid;gap:8px;margin:28px 0}.nav-item{display:flex;align-items:center;gap:12px;padding:14px 14px;border-radius:16px;color:#e7e7ed;transition:.18s}.nav-item span{width:28px;text-align:center}.nav-item:hover,.nav-item.active{background:linear-gradient(90deg,var(--red),var(--orange));color:#fff;box-shadow:0 12px 22px rgba(215,25,32,.25)}.sidebar-footer{margin-top:auto;display:grid;gap:14px}.signed-user{border:1px solid rgba(255,255,255,.12);padding:14px;border-radius:18px;background:rgba(255,255,255,.05)}.signed-user small{display:block;color:#b8b8c7}.signed-user strong{display:block;margin-top:3px}
.main-content{margin-left:290px;width:calc(100% - 290px);padding:34px;max-width:1480px}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--red);font-weight:800;font-size:12px;margin:0 0 6px}.page-head h1{font-size:34px;line-height:1.05;margin:0}.page-actions{display:flex;gap:10px;flex-wrap:wrap}.card{background:var(--card);border:1px solid rgba(231,232,239,.9);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);margin-bottom:20px}.hero-card{background:linear-gradient(135deg,#fff 0%,#fff7ef 100%);border-color:#ffd7bb}.hero-card h2,.section-head h2{margin:0 0 6px}.hero-card p{margin:0;color:var(--muted)}
.btn{appearance:none;border:0;border-radius:14px;padding:12px 16px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1;background:#eef0f7;color:var(--text)}.btn-primary{background:linear-gradient(90deg,var(--red),var(--orange));color:#fff;box-shadow:0 12px 24px rgba(215,25,32,.24)}.btn-dark{background:#11111b;color:#fff}.btn-light{background:#f1f2f7;color:#20202b}.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.14)}.btn-danger{background:var(--danger);color:#fff}.btn-full{width:100%}.back-link{display:inline-block;margin-bottom:14px;color:var(--muted);font-weight:800}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card{background:#fff;border-radius:22px;padding:22px;border:1px solid var(--line);box-shadow:var(--shadow);display:grid;gap:8px}.stat-card span{font-size:28px}.stat-card strong{font-size:36px;line-height:1}.stat-card small{color:var(--muted);font-weight:700}.stat-card.flame{background:linear-gradient(135deg,var(--red),var(--orange));color:#fff}.stat-card.flame small{color:#fff6f0}.section-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.pill{display:inline-flex;border-radius:999px;background:#fff0e6;color:#a63d08;padding:7px 12px;font-weight:800;font-size:13px}
.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.category-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.category-card{position:relative;overflow:hidden;min-height:170px;border-radius:24px;padding:22px;background:linear-gradient(145deg,#15151f,#090910);color:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;transition:.18s}.category-card:before{content:"";position:absolute;right:-35px;top:-35px;width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--orange));opacity:.72}.category-card:hover{transform:translateY(-3px)}.category-card small{position:relative;color:#ffd8c2;text-transform:uppercase;letter-spacing:.1em;font-weight:900;font-size:11px}.category-card strong{position:relative;font-size:24px}.category-card span{position:relative;color:#e8e8ef}.category-card em{position:relative;margin-top:auto;font-style:normal;font-weight:800;color:#fff}.category-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.category-meta em{background:rgba(255,255,255,.1);border-radius:999px;padding:7px 10px;font-size:13px}.category-card.large{min-height:210px}.category-hero{display:flex;justify-content:space-between;align-items:center}.hero-numbers{display:flex;gap:12px}.hero-numbers span{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 18px;display:grid;text-align:center}.hero-numbers b{font-size:28px;color:var(--red)}
.responsive-table{width:100%;overflow:auto}table{width:100%;border-collapse:separate;border-spacing:0 10px}th{text-align:left;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:0 12px}td{background:#f8f9fd;padding:14px 12px;border-top:1px solid #eff0f5;border-bottom:1px solid #eff0f5}td:first-child{border-radius:14px 0 0 14px;border-left:1px solid #eff0f5}td:last-child{border-radius:0 14px 14px 0;border-right:1px solid #eff0f5}.table-link{font-weight:900;color:#12121b}.number-badge{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--orange));color:#fff;display:inline-grid;place-items:center;font-weight:900}.row-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}.row-actions a,.link-danger{font-weight:900;color:var(--red);background:none;border:0;padding:0;cursor:pointer}.link-danger{color:var(--danger)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.single{grid-template-columns:1fr}.form-grid label{display:grid;gap:8px;font-weight:800;color:#343442}.form-grid input,.form-grid select,.form-grid textarea,.filters input,.filters select,.search-login-form input{width:100%;border:1px solid #dfe1ea;border-radius:15px;padding:12px 14px;background:#fff;outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.filters input:focus,.filters select:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(255,122,24,.12)}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;gap:10px}.filters{display:grid;grid-template-columns:2fr 1.4fr auto auto;gap:12px;align-items:end}.filters label{font-weight:800;color:#343442}.empty-state{padding:26px;border:1px dashed #d9dce7;border-radius:18px;color:var(--muted);text-align:center;background:#fafbff}.flash{border-radius:16px;padding:14px 16px;margin-bottom:14px;font-weight:800}.flash-success{background:#e8f8ef;color:#067238}.flash-error{background:#ffe9ec;color:#a70716}.flash-info{background:#eaf1ff;color:#1f4d96}.muted{color:var(--muted)}
.person-list{display:grid;gap:12px}.person-card{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fbfcff}.person-card>div:nth-child(2){flex:1}.person-card strong{display:block}.person-card span{display:block;color:var(--muted);margin-top:2px}.avatar{border-radius:50%;background:linear-gradient(135deg,var(--red),var(--orange));color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 10px 18px rgba(215,25,32,.22)}.avatar.small{width:46px;height:46px}.avatar.xl{width:86px;height:86px;font-size:28px}.profile-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.player-profile-card{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:18px}.profile-main{display:flex;align-items:center;gap:18px}.profile-main h2{margin:0;font-size:30px}.profile-main p{margin:4px 0 0;color:var(--muted)}.profile-actions{display:flex;gap:10px;align-items:center}.details-card dl{display:grid;grid-template-columns:160px 1fr;gap:10px;margin:0}.details-card dt{color:var(--muted);font-weight:800}.details-card dd{margin:0;font-weight:700}
.login-body{background:radial-gradient(circle at top left,rgba(255,122,24,.34),transparent 35%),linear-gradient(135deg,#090910,#161622 55%,#2b090c);color:#fff;min-height:100vh}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 430px;gap:34px;align-items:center;max-width:1180px;margin:0 auto;padding:34px}.login-hero h1{font-size:56px;line-height:1;margin:8px 0 16px}.login-hero p{font-size:18px;color:#e9e9f2;max-width:620px}.login-logo{width:86px;height:86px;object-fit:contain}.login-logo.big{width:155px;height:155px;filter:drop-shadow(0 16px 28px rgba(215,25,32,.4))}.login-card{background:rgba(255,255,255,.96);color:var(--text);border-radius:28px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.34)}.login-card.wide{max-width:540px;margin:0 auto}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#f0f1f7;border-radius:16px;padding:5px;margin-bottom:20px}.tab{border:0;border-radius:12px;padding:12px;background:transparent;font-weight:900;cursor:pointer}.tab.active{background:#fff;box-shadow:0 8px 18px rgba(0,0,0,.08)}.tab-panel{display:none}.tab-panel.active{display:block}.search-login-form{display:grid;gap:12px}.search-login-form label{font-weight:800;display:grid;gap:8px}.person-results{display:grid;gap:10px;margin-top:16px}.person-result{display:block;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fafbff}.person-result strong{display:block}.person-result span{display:block;color:var(--muted);margin-top:3px}.pin-form input{text-align:center;font-size:28px;letter-spacing:.5em;font-weight:900}.mobile-topbar,.mobile-bottom-nav{display:none}
@media(max-width:1180px){.category-grid,.category-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:1fr 1fr}.profile-grid{grid-template-columns:1fr}}
@media(max-width:820px){.mobile-topbar{display:flex;position:sticky;top:0;z-index:30;align-items:center;justify-content:space-between;padding:12px 16px;background:rgba(8,8,17,.96);backdrop-filter:blur(12px);color:#fff}.mobile-brand{display:flex;align-items:center;gap:8px;font-weight:900}.mobile-brand img{width:36px;height:36px;object-fit:contain}.menu-toggle{background:linear-gradient(90deg,var(--red),var(--orange));color:#fff;border:0;border-radius:12px;width:42px;height:42px;font-size:20px}.sidebar{transform:translateX(-105%);transition:.22s;width:min(86vw,310px)}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0;width:100%;padding:18px 14px 92px}.page-head{display:block}.page-actions{margin-top:14px}.page-head h1{font-size:28px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px;border-radius:18px}.stat-card strong{font-size:28px}.category-grid,.category-grid.compact{grid-template-columns:1fr;gap:12px}.category-card{min-height:160px}.category-hero,.player-profile-card{display:block}.hero-numbers{margin-top:16px}.form-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.responsive-table table,.responsive-table thead,.responsive-table tbody,.responsive-table th,.responsive-table td,.responsive-table tr{display:block}.responsive-table thead{display:none}.responsive-table tr{background:#f8f9fd;border:1px solid #eff0f5;border-radius:18px;margin-bottom:12px;padding:10px}.responsive-table td{border:0;background:transparent;padding:8px 6px}.responsive-table td:first-child,.responsive-table td:last-child{border:0;border-radius:0}.row-actions{justify-content:flex-start;flex-wrap:wrap}.profile-main{align-items:flex-start}.details-card dl{grid-template-columns:1fr}.login-wrap{grid-template-columns:1fr;padding:18px;align-items:start}.login-hero{text-align:center;padding-top:18px}.login-hero h1{font-size:34px}.login-hero p{font-size:16px}.login-logo.big{width:110px;height:110px}.login-card{border-radius:24px;padding:20px}.mobile-bottom-nav{position:fixed;z-index:25;left:10px;right:10px;bottom:10px;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(8,8,17,.96);color:#fff;border-radius:24px;padding:8px;box-shadow:0 20px 45px rgba(0,0,0,.28)}.mobile-bottom-nav a{display:grid;place-items:center;gap:2px;font-size:18px;padding:8px 4px;border-radius:16px}.mobile-bottom-nav span{font-size:11px;font-weight:800}.card{padding:18px;border-radius:20px}.person-card{align-items:flex-start}.section-head{align-items:flex-start;flex-direction:column}}
@media(display-mode:standalone){.mobile-topbar{padding-top:calc(12px + env(safe-area-inset-top))}.mobile-bottom-nav{bottom:calc(10px + env(safe-area-inset-bottom))}}
.status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;letter-spacing:.04em}.status-badge.ok{background:#e8f8ef;color:#067238}.status-badge.no{background:#fff0f1;color:#a70716}.season-fields,.parent-section{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fbfcff}.season-fields h3,.parent-section h3{margin:0 0 6px}.check-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px;font-weight:900}.check-row input{width:22px!important;height:22px;accent-color:var(--red)}.parent-section.is-hidden{display:none}.form-grid.nested{margin-top:14px}.season-mini-form{display:grid;gap:10px;margin-top:16px}.profile-actions form,.row-actions form{display:inline-flex}.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#f1f2f7;color:#343442;padding:8px 12px;font-weight:900}.filter-card{padding:18px}
@media(max-width:820px){.season-fields,.parent-section{padding:14px}.profile-actions{margin-top:16px;flex-wrap:wrap}.profile-actions form{width:100%}.profile-actions .btn{width:100%}.status-badge{padding:5px 9px}.form-grid.nested{grid-template-columns:1fr}}

/* Wersja 1.3 — pełna szerokość komputera i szybka praca na listach */
.main-content{max-width:none;width:calc(100% - 290px);}
.full-width-card{width:100%;}
.players-table{min-width:1100px;}
.shirt-input{width:58px!important;min-width:58px;text-align:center;border:1px solid #dfe1ea;border-radius:12px;padding:9px 8px!important;background:#fff;font-weight:900;}
.table-check{display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;background:#fff;border:1px solid #dfe1ea;cursor:pointer;position:relative;}
.table-check input{position:absolute;opacity:0;pointer-events:none;}
.table-check span{width:22px;height:22px;border-radius:7px;border:2px solid #cfd2dd;background:#fff;display:inline-block;position:relative;}
.table-check input:checked + span{background:linear-gradient(135deg,var(--red),var(--orange));border-color:transparent;}
.table-check input:checked + span:after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:14px;font-weight:900;}
.table-check.fee input:checked + span{background:#0c8f45;}
.quick-list-form{display:block;}
.sticky-save-bar{position:sticky;bottom:12px;z-index:8;margin-top:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-radius:18px;background:rgba(8,8,17,.94);color:#fff;box-shadow:0 18px 40px rgba(0,0,0,.22);}
.sticky-save-bar span{font-weight:800;color:#f1f1f7;}
.fee-history-box{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fbfcff;margin-top:8px;}
.fee-history-box h4{margin:0 0 6px;}
.fee-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;}
.fee-month{display:flex!important;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fff;font-weight:900;}
.fee-month input[type="checkbox"]{width:20px!important;height:20px;accent-color:var(--red);}
.fee-month.paid{border-color:#bfe9cf;background:#eefaf3;}
.fee-month.unpaid{border-color:#ffd0d4;background:#fff7f8;}
.fees-card{grid-column:1/-1;}
.fee-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;}
.fee-summary-grid div{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fbfcff;display:grid;gap:4px;}
.fee-summary-grid strong{font-size:32px;line-height:1;color:#0c8f45;}
.fee-summary-grid .danger strong{color:var(--danger);}
.fee-summary-grid span{color:var(--muted);font-weight:800;}
.fee-status-list{display:grid;gap:8px;}
.fee-status-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fff;}
.fee-status-row span:first-child{font-weight:900;}
@media(min-width:1600px){.category-grid{grid-template-columns:repeat(5,minmax(0,1fr));}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));}.profile-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:820px){.main-content{width:100%;}.players-table{min-width:0;}.responsive-table td[data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-bottom:4px}.shirt-input{width:74px!important}.sticky-save-bar{left:12px;right:12px;bottom:86px;flex-direction:column;align-items:stretch;text-align:center}.fee-month-grid{grid-template-columns:1fr}.fee-summary-grid{grid-template-columns:1fr}.fee-status-row{align-items:flex-start;flex-direction:column}.table-check{width:44px;height:44px}.row-actions .link-danger{padding:8px 0}}

.profile-lock{display:grid;gap:20px;max-width:980px;margin:0 auto}.profile-lock-card{display:grid;gap:16px}.profile-lock .form-card{max-width:980px;width:100%}.profile-lock-body .page-actions{display:none}
@media(max-width:760px){.profile-lock{max-width:none}.profile-lock .profile-main{align-items:flex-start}.profile-lock .avatar.xl{width:64px;height:64px;font-size:22px}}

/* Wersja 1.5 — powtarzanie treningów do końca miesiąca */
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.team-card{display:grid;gap:16px}.team-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.team-card h2{margin:0;font-size:26px}.team-icon{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--red),var(--orange));display:grid;place-items:center;color:#fff;font-size:24px;box-shadow:0 12px 22px rgba(215,25,32,.24)}.team-coach{border:1px solid var(--line);background:#fbfcff;border-radius:18px;padding:14px}.team-coach span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.team-coach strong{display:block;margin-top:4px}.team-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.team-stats div{border-radius:16px;background:#f8f9fd;border:1px solid var(--line);padding:12px;display:grid;gap:2px}.team-stats strong{font-size:25px;line-height:1;color:var(--red)}.team-stats span{color:var(--muted);font-size:12px;font-weight:800}.team-actions{justify-content:flex-start}.team-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.team-tabs a{border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 20px rgba(12,12,20,.06);padding:11px 16px;font-weight:900;color:#252530}.team-player-picker{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.picker-row{display:flex!important;align-items:center;gap:10px;border:1px solid var(--line);background:#fbfcff;border-radius:16px;padding:11px 12px;font-weight:900}.picker-row input{width:20px!important;height:20px;accent-color:var(--red)}.picker-row span:last-child{display:grid;gap:2px}.picker-row small{color:var(--muted);font-weight:800}.small-badge{width:32px!important;height:32px!important;font-size:13px}.schedule-table td,.attendance-table td{vertical-align:middle}.attendance-confirm-card{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#fff,#fff8f2);border-color:#ffd7bb}.attendance-confirm-card h2{margin:0 0 4px}.attendance-buttons{display:flex;gap:10px;flex-wrap:wrap}.attendance-table select{border:1px solid #dfe1ea;border-radius:12px;background:#fff;padding:9px 10px;font-weight:800}.status-badge.warn{background:#fff4df;color:#9c5400}
@media(min-width:1600px){.team-grid{grid-template-columns:repeat(4,minmax(0,1fr));}.picker-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:1180px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:820px){.team-grid,.picker-grid{grid-template-columns:1fr}.attendance-confirm-card{display:grid}.attendance-buttons{display:grid}.mobile-bottom-nav{grid-template-columns:repeat(6,1fr)}.team-tabs{position:sticky;top:66px;z-index:5;background:rgba(245,246,251,.94);backdrop-filter:blur(10px);padding:8px 0}.team-tabs a{flex:1;text-align:center;padding:10px 8px}}

/* Wersja 1.6 — powiadomienia, informacje drużynowe, składy meczowe */
.nav-item{position:relative}.nav-badge{margin-left:auto;min-width:23px;height:23px;padding:0 7px;border-radius:999px;background:#fff;color:var(--red);font-style:normal;font-size:12px;font-weight:900;display:inline-flex;align-items:center;justify-content:center}.account-lamp{width:14px;height:14px;border-radius:50%;display:inline-block;box-shadow:0 0 0 4px rgba(0,0,0,.05)}.account-lamp.green{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.13),0 0 16px rgba(22,163,74,.45)}.account-lamp.red{background:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.13),0 0 16px rgba(220,38,38,.35)}.attendance-mini{display:inline-flex;align-items:center;gap:4px;border-radius:999px;background:#e8f8ef;color:#067238;font-weight:900;padding:7px 10px;cursor:help}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.info-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fbfcff;display:grid;gap:14px}.info-card.important{border-color:#ffb16b;background:linear-gradient(135deg,#fff,#fff6ed)}.info-card h3{margin:0;font-size:20px}.info-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.team-info-content{font-size:18px;line-height:1.6;white-space:normal}.important-info{border-color:#ffb16b;background:linear-gradient(135deg,#fff,#fff4e8)}.notification-list{display:grid;gap:12px}.notification-card{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line);border-radius:18px;background:#fbfcff;padding:16px}.notification-card.unread{background:linear-gradient(135deg,#fff,#fff4e8);border-color:#ffbf86}.notification-dot{width:13px;height:13px;border-radius:50%;background:#c4c7d3;margin-top:7px;flex:0 0 auto}.notification-card.unread .notification-dot{background:linear-gradient(135deg,var(--red),var(--orange));box-shadow:0 0 0 5px rgba(215,25,32,.12)}.notification-card h3{margin:0}.notification-card p{margin:4px 0;color:var(--muted)}.notification-card small{color:var(--muted);font-weight:800}.lineup-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.lineup-summary>div{border:1px solid var(--line);border-radius:18px;padding:16px;background:#fbfcff}.lineup-summary h3{margin:0 0 10px}.compact-list{margin:0;padding-left:20px}.compact-list li{margin:6px 0}.lineup-form input,.lineup-form select{width:100%;border:1px solid #dfe1ea;border-radius:12px;background:#fff;padding:9px 10px;font-weight:800}.match-only-field{display:block}.league-round-field{display:block}
@media(max-width:1180px){.info-grid,.lineup-summary{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.info-grid,.lineup-summary{grid-template-columns:1fr}.nav-badge{position:absolute;right:10px}.attendance-mini{padding:6px 9px}.team-info-content{font-size:16px}.mobile-bottom-nav{grid-template-columns:repeat(6,1fr)}}

/* Płomień Manager 1.8 */
.inline-actions,
.action-strip {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
.inline-actions form,
.inline-action-form,
.attendance-quick-form {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    margin: 0;
}
.inline-action-form button,
.row-actions .inline-action-form button {
    border: 0;
    border-radius: 999px;
    padding: 7px 10px;
    background: rgba(255, 119, 0, .12);
    color: #9d2f00;
    font-weight: 800;
    cursor: pointer;
}
.inline-action-form button.danger,
.btn-danger {
    background: #b91c1c !important;
    color: #fff !important;
    border-color: #b91c1c !important;
}
.attendance-mini {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    padding: 4px 8px;
    font-weight: 900;
    background: rgba(15, 23, 42, .06);
    margin-right: 4px;
}
.attendance-mini.ok { background: rgba(22, 163, 74, .12); color: #166534; }
.attendance-mini.warn { background: rgba(245, 158, 11, .14); color: #92400e; }
.attendance-quick-form {
    margin-top: 7px;
    flex-wrap: wrap;
}
.btn-mini {
    border: 0;
    border-radius: 999px;
    padding: 5px 9px;
    background: #f2f2f2;
    font-weight: 900;
    cursor: pointer;
}
.btn-mini.primary {
    background: linear-gradient(135deg, #ef4444, #f97316);
    color: #fff;
}
.lineup-summary.three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 900px) {
    .lineup-summary.three { grid-template-columns: 1fr; }
    .action-strip { align-items: stretch; }
    .inline-actions { width: 100%; align-items: stretch; }
    .inline-actions > *, .inline-actions form, .inline-actions .btn { width: 100%; }
    .inline-actions button { width: 100%; }
}

/* Płomień Manager 1.8 — urządzenie i push */
.device-panel{display:flex;flex-direction:column;gap:16px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(215,25,32,.08),rgba(255,122,24,.08));border-radius:20px;padding:18px;margin:14px 0}.device-state{padding:12px 14px;border-radius:14px;background:rgba(0,0,0,.06);font-weight:700}.device-state.ok{background:rgba(23,150,80,.12)}.info-box{border-left:4px solid var(--orange,#ff7a18);background:rgba(255,122,24,.08);padding:14px 16px;border-radius:12px;margin-top:14px}.status-badge.warn{background:rgba(255,122,24,.14);color:#b45309;border-color:rgba(255,122,24,.35)}

/* Płomień Manager 1.9 — treningi i mecze */
.collapsible-card {
    padding: 0;
    overflow: hidden;
}
.collapsible-card summary {
    list-style: none;
}
.collapsible-card summary::-webkit-details-marker {
    display: none;
}
.collapsible-summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px;
}
.collapsible-summary h2 {
    margin: 0 0 5px;
}
.collapsible-summary:after {
    content: "Rozwiń";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 86px;
    border-radius: 999px;
    background: #f1f2f7;
    color: #242432;
    padding: 8px 12px;
    font-weight: 900;
}
.collapsible-card[open] .collapsible-summary:after {
    content: "Zwiń";
    background: linear-gradient(90deg, var(--red), var(--orange));
    color: #fff;
}
.collapsible-body {
    padding: 0 24px 24px;
}
.details-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-bottom: 14px;
}
.lineup-form select {
    min-width: 120px;
}
@media(max-width:820px){
    .collapsible-summary {
        align-items: flex-start;
        flex-direction: column;
        padding: 18px;
    }
    .collapsible-summary:after {
        width: 100%;
    }
    .collapsible-body {
        padding: 0 18px 18px;
    }
    .details-actions {
        justify-content: stretch;
    }
    .details-actions .btn {
        width: 100%;
    }
}

/* Płomień Manager 1.10 — mecze, usuwanie i skład na boisku */
.compact-head{margin-bottom:12px;align-items:center}.team-players-card .collapsible-body{padding-top:0}.lineup-card .collapsible-body{display:grid;gap:18px}.lineup-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:-4px 0 4px}.formation-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:16px}.formation-toolbar label{display:grid;gap:8px;font-weight:900;min-width:240px}.formation-toolbar select{border:1px solid #dfe1ea;border-radius:14px;background:#fff;padding:12px 14px;font-weight:900}.lineup-pitch{position:relative;height:720px;min-height:640px;border-radius:30px;overflow:hidden;background:linear-gradient(180deg,#148042,#0b5d2f);box-shadow:inset 0 0 0 4px rgba(255,255,255,.75),0 24px 50px rgba(8,8,17,.16);border:8px solid #fff}.lineup-pitch:before{content:"";position:absolute;inset:8%;border:3px solid rgba(255,255,255,.75);border-radius:22px}.lineup-pitch:after{content:"";position:absolute;left:8%;right:8%;top:50%;border-top:3px solid rgba(255,255,255,.75)}.pitch-slot{position:absolute;transform:translate(-50%,-50%);width:160px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.7);border-radius:18px;padding:9px;display:grid;gap:7px;box-shadow:0 12px 24px rgba(0,0,0,.16);z-index:2}.slot-position{justify-self:center;min-width:42px;text-align:center;border-radius:999px;background:linear-gradient(90deg,var(--red),var(--orange));color:#fff;font-weight:1000;padding:5px 9px;font-size:13px}.pitch-slot select{width:100%;border:1px solid #dfe1ea;border-radius:12px;background:#fff;padding:8px 9px;font-weight:850;font-size:13px}.bench-panel{border:1px solid var(--line);border-radius:22px;background:#fbfcff;padding:18px}.bench-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.bench-grid label{display:grid;gap:7px;font-weight:900}.bench-grid select{width:100%;border:1px solid #dfe1ea;border-radius:12px;background:#fff;padding:10px;font-weight:850}.btn-danger{background:#b91c1c;color:#fff}.row-actions form button.danger{background:#b91c1c!important;color:#fff!important}.lineup-form .sticky-save-bar{position:sticky;bottom:18px;z-index:5;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px}.lineup-form .sticky-save-bar span{font-weight:900;color:var(--muted)}
@media(max-width:1180px){.lineup-pitch{height:650px}.pitch-slot{width:142px}.bench-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.lineup-pitch{height:620px;border-width:5px}.pitch-slot{width:118px;padding:7px;border-radius:14px}.pitch-slot select{font-size:12px;padding:7px}.slot-position{font-size:12px;padding:4px 7px}.bench-grid{grid-template-columns:1fr}.lineup-form .sticky-save-bar{position:static;display:grid}.lineup-form .sticky-save-bar .btn{width:100%}.formation-toolbar{display:grid}.formation-toolbar label{min-width:0}.lineup-actions{justify-content:stretch}.lineup-actions .btn{width:100%}}

/* Płomień Manager 1.11 — powiadomienia w akcjach i skład meczowy jak PDF */
.notification-action-card{display:grid;gap:18px}.action-strip-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}.notification-action-card .inline-actions{justify-content:flex-end}.scheduled-notifications-card{border:1px solid var(--line);border-radius:20px;background:#fbfcff;overflow:hidden}.scheduled-notifications-card summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;font-weight:1000}.scheduled-notifications-card summary::-webkit-details-marker{display:none}.scheduled-notifications-card summary b{min-width:30px;height:30px;border-radius:999px;background:linear-gradient(90deg,var(--red),var(--orange));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.scheduled-notifications-card .responsive-table{padding:0 12px 12px}.compact-schedule-table th,.compact-schedule-table td{padding-top:10px;padding-bottom:10px}.compact-empty{margin:0 12px 12px}
.lineup-sheet{max-width:980px;margin:0 auto;border:1px solid #111;border-radius:24px;background:#fff;padding:18px;box-shadow:0 20px 50px rgba(12,12,20,.10)}.lineup-sheet-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:4px solid var(--red);padding-bottom:12px;margin-bottom:14px}.lineup-sheet-head h3{margin:4px 0;font-size:30px}.formation-badge,.formation-badge-select{display:inline-grid;gap:6px;border-radius:18px;background:#fff0e6;color:#9a3412;padding:10px 12px;font-weight:1000}.formation-badge-select select{border:1px solid #ffc18a;border-radius:12px;background:#fff;padding:8px 10px;font-weight:1000;color:#111;min-width:140px}.lineup-helper{font-weight:800;margin:-2px 0 12px}.lineup-pitch.printlike-pitch{position:relative;height:690px;min-height:640px;border-radius:28px;overflow:hidden;background:linear-gradient(180deg,#11773a,#0a5b2c);border:8px solid #fff;box-shadow:0 0 0 2px #111 inset,0 20px 40px rgba(0,0,0,.16);margin:14px 0}.lineup-pitch.printlike-pitch:before{content:"";position:absolute;inset:8%;border:3px solid rgba(255,255,255,.75);border-radius:18px}.lineup-pitch.printlike-pitch:after{content:"";position:absolute;left:8%;right:8%;top:50%;border-top:3px solid rgba(255,255,255,.75)}.lineup-pitch .center-circle{position:absolute;left:50%;top:50%;width:130px;height:130px;margin-left:-65px;margin-top:-65px;border:3px solid rgba(255,255,255,.75);border-radius:50%;z-index:1}.pitch-slot.printlike-slot{position:absolute;left:auto;top:auto;transform:translate(-50%,-50%);width:132px;min-height:68px;background:#fff;border:2px solid #111;border-radius:14px;padding:7px;text-align:center;box-shadow:0 10px 20px rgba(0,0,0,.18);display:grid;gap:5px;z-index:2}.pitch-slot.printlike-slot .slot-position{justify-self:center;display:inline-flex;min-width:34px;justify-content:center;border-radius:999px;background:var(--red);color:#fff;font-weight:1000;font-size:13px;padding:4px 7px;margin:0}.pitch-slot.printlike-slot select{width:100%;border:1px solid #dfe1ea;border-radius:10px;background:#fff;padding:7px 8px;font-weight:900;font-size:12px}.pitch-slot.printlike-slot select option[hidden]{display:none}.readonly-slot{min-height:76px}.readonly-shirt{font-weight:1000;font-size:16px}.readonly-name{font-weight:900;font-size:12px;line-height:1.15}.readonly-empty{color:#999;font-weight:900}.printlike-bench{border:2px solid #111;border-radius:16px;padding:12px;margin-top:12px;background:#fff}.readonly-bench-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.bench-readonly-item{border:1px solid #ddd;border-radius:10px;padding:9px;font-weight:900;background:#fff}.lineup-sheet .bench-grid label{background:#fff;border:1px solid #ddd;border-radius:10px;padding:9px}.lineup-sheet .bench-grid select{border:1px solid #dfe1ea;border-radius:10px;padding:8px 9px}
@media(max-width:1180px){.lineup-sheet{max-width:100%}.lineup-pitch.printlike-pitch{height:650px}.pitch-slot.printlike-slot{width:122px}.readonly-bench-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.action-strip-head{display:grid}.notification-action-card .inline-actions{justify-content:stretch}.lineup-sheet{padding:12px;border-radius:18px}.lineup-sheet-head{display:grid}.lineup-sheet-head h3{font-size:24px}.lineup-pitch.printlike-pitch{height:620px;min-height:560px;border-width:5px}.pitch-slot.printlike-slot{width:108px;padding:6px;border-radius:12px}.pitch-slot.printlike-slot select{font-size:11px;padding:6px}.pitch-slot.printlike-slot .slot-position{font-size:11px;padding:3px 6px}.readonly-bench-grid{grid-template-columns:1fr}.formation-badge-select{width:100%}.formation-badge-select select{width:100%}}

/* Płomień Manager 1.12 — skład meczowy jako prawdziwa karta boiska */
.lineup-sheet-graphic-editor{max-width:1040px}.lineup-editor-pitch{isolation:isolate}.pitch-only-lineup-form .lineup-helper{font-weight:900;color:#4b5563}.lineup-picker-card{position:relative;cursor:pointer;user-select:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.lineup-picker-card:hover{transform:translate(-50%,-52%);box-shadow:0 14px 30px rgba(0,0,0,.24);border-color:var(--red)}.bench-picker-card.lineup-picker-card:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(0,0,0,.12)}.lineup-pitch-picker-card{height:86px;min-height:86px;align-content:start;padding:8px 8px 7px}.lineup-picker-card .lineup-player-select{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:4;cursor:pointer;border:0;background:transparent}.lineup-picker-card .picker-preview{display:grid;gap:1px;place-items:center;min-height:34px;margin-top:0}.lineup-picker-card .picker-hint{font-size:10px;line-height:1;color:#7b7b85;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.lineup-picker-card.is-filled .picker-hint{display:none}.lineup-picker-card.is-filled{border-color:#111;background:#fff}.lineup-picker-card:not(.is-filled){background:#fff}.lineup-picker-card:not(.is-filled) .readonly-empty{font-size:20px;color:#9ca3af}.lineup-picker-card .readonly-shirt{font-weight:1000;font-size:16px;line-height:1}.lineup-picker-card .readonly-name{font-weight:950;font-size:11.5px;line-height:1.1;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bench-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bench-picker-card{position:relative!important;display:grid!important;gap:4px;min-height:72px;border:1px solid #d7d9e3!important;border-radius:12px!important;background:#fff!important;padding:9px!important;text-align:left}.bench-picker-card .bench-title{font-weight:1000;color:#111}.bench-picker-card .picker-preview{place-items:start;min-height:30px}.bench-picker-card .readonly-shirt{font-size:14px}.bench-picker-card .readonly-name{font-size:12px}.bench-picker-card .picker-hint{font-size:9px;color:#8b8e9a}.lineup-sheet .bench-grid.bench-picker-grid select{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:0;padding:0}.pitch-lineup-form .sticky-save-bar{max-width:1040px;margin-left:auto;margin-right:auto}.lineup-card .lineup-actions{max-width:1040px;margin-left:auto;margin-right:auto;width:100%}
@media(max-width:1180px){.lineup-sheet-graphic-editor{max-width:100%}.lineup-pitch-picker-card{width:118px;height:82px;min-height:82px}.lineup-picker-card .readonly-name{font-size:11px}.bench-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.lineup-editor-pitch{height:590px!important;min-height:560px!important}.lineup-pitch-picker-card{width:104px;height:78px;min-height:78px;padding:6px}.lineup-picker-card .readonly-shirt{font-size:14px}.lineup-picker-card .readonly-name{font-size:10px}.lineup-picker-card .picker-hint{font-size:9px}.bench-picker-grid{grid-template-columns:1fr}.bench-picker-card{min-height:66px}.lineup-picker-card:hover{transform:translate(-50%,-50%)}.bench-picker-card.lineup-picker-card:hover{transform:none}}
