/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */:root{--primary:#1d4ed8;--primary-dark:#0b3c6d;--danger:#dc2626;--success:#16a34a;--bg:#e9eef5;--card:#fff;--text:#111827;--subtext:#6b7280;--border:#e5e7eb;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 2px 6px #0000000d;--shadow-md:0 6px 16px #00000014}*,:after,:before{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}input,select{border-radius:var(--radius-sm);border:1px solid var(--border);background:#f9fafb;padding:8px 10px;font-size:14px;transition:all .15s}input:focus,select:focus{border-color:var(--primary);background:#fff;outline:none;box-shadow:0 0 0 2px #1d4ed81a}tbody tr{transition:background .15s}tbody tr:not(:last-child){border-bottom:1px solid var(--border)}tbody tr:hover{background-color:#f3f4f6}.icon-xs{width:14px;height:14px}.icon-sm{width:16px;height:16px}.icon-md{width:20px;height:20px}.icon-lg{width:24px;height:24px}.icon-lg,.icon-md,.icon-sm,.icon-xs{vertical-align:middle;display:inline-block}.btn{background:var(--primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;padding:8px 14px;transition:all .15s}.btn:hover{opacity:.9}.btn-secondary{color:var(--text);border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;padding:8px 14px}.btn-danger{background:var(--danger)}.btn-ghost{background:0 0;border:1px solid #e5e7eb;border-radius:8px;padding:6px 10px}.btn-icon{border:1px solid var(--border);color:#6b7280;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:inline-flex}.btn-icon:hover{color:var(--primary);background:#eff6ff;border-color:#3b82f6;transform:translateY(-1px)}.btn-icon:active{transform:scale(.95)}.btn-icon svg{width:16px;height:16px}.table{border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #e5e7eb;border-radius:16px;width:100%;box-shadow:0 6px 20px #0000000d}.table th{color:#64748b;text-align:left;text-transform:uppercase;letter-spacing:.06em;background:#f8fafc;padding:12px 14px;font-size:12px;font-weight:600}.table-container{border-radius:16px;max-height:500px;overflow:auto}.table thead th{z-index:10;background:#f9fafb;position:sticky;top:0}.table td{text-align:left;padding:12px 14px;font-size:12px}.table tbody tr{cursor:pointer;transition:all .15s}.table tbody tr:hover{box-shadow:inset 3px 0 0 var(--primary);background:#eff6ff;transform:translate(4px)}.table tbody tr:not(:last-child){border-bottom:1px solid #f1f5f9}.table tbody tr.selected{border-left:3px solid var(--primary);background:#1d4ed814}.table td:first-child,.table th:first-child{width:40px}.table-actions{gap:6px;display:flex}.action-btn{border:1px solid var(--border);color:#374151;cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;height:28px;padding:6px 10px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.action-btn:hover{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6}.action-btn.danger:hover{color:#dc2626;background:#fef2f2;border-color:#dc2626}.action-icon{flex-shrink:0;width:16px;height:16px}.action-icon,.page-toolbar{align-items:center;display:flex}.page-toolbar{justify-content:space-between;gap:12px;margin-bottom:18px}.toolbar-right{gap:8px}.action-link{color:#111827;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:6px;height:28px;padding:4px 8px;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.action-link:hover{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6}.action-link .action-icon{width:14px;height:14px}.action-link{background:var(--primary);color:#fff;border:none}.view-toggle{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;height:34px;padding:4px;display:inline-flex}.view-toggle button{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:500;transition:all .2s}.view-toggle button.active{color:#111827;background:#fff;font-weight:600;box-shadow:0 2px 6px #00000014}.view-toggle button:hover{color:#111827}.toggle-slider{background:#fff;transition:all .25s;box-shadow:0 4px 12px #0000001f}.toggle-btn.active{color:#111827;font-weight:600}.toggle-btn{z-index:2;color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:6px 18px;font-size:13px;font-weight:500;transition:all .2s;display:flex;position:relative}.toggle-btn:hover{color:#111827}.view-toggle:active .toggle-slider{transform:scale(.97)}.badge-poste{color:#fff;background:#2563eb;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.badge-poste.secondary{color:#374151;background:#e5e7eb}.section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px;box-shadow:0 10px 30px #0000000f}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-icon{margin-bottom:12px;font-size:40px}.empty-title{margin-bottom:6px;font-size:18px;font-weight:600}.empty-description{color:var(--subtext);margin-bottom:12px;font-size:14px}.empty-action{margin-top:10px}.search-input{background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:10px 12px;font-size:14px}.search-input:focus{border-color:#4f46e5;outline:none}.actions-bar{justify-content:flex-end;align-items:center;gap:8px;padding:4px 0;display:flex}.action-btn:hover{background:#f3f4f6}.action-btn.primary{color:#fff;background:#4f46e5;border:none}.action-btn.primary:hover{background:#4338ca}.btn-danger{color:#fff;border-radius:var(--radius-md);cursor:pointer;background:#dc2626;border:none;padding:8px 14px;font-weight:500;transition:all .2s}.card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 12px #0000000d}.btn.primary{color:#fff;background-color:#0b3c6d}.search-bar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px;transition:all .2s;box-shadow:0 2px 8px #0000000d}.search-bar:focus-within{border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81a}.search-icon{opacity:.6;margin-right:8px;font-size:14px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-clear{cursor:pointer;color:#6b7280;background:0 0;border:none;font-size:14px}.view-toggle-container{align-items:center;display:flex}.table-actions-btns{gap:6px;display:flex}.nav{flex-direction:column;gap:4px;height:100vh;display:flex;position:sticky;top:0}.nav-link{color:#fff;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s;display:flex}.nav-link:hover{background:#ffffff1f}.nav-link.active{background:#ffffff26;font-weight:600;box-shadow:inset 0 0 0 1px #fff3}.nav-icon{opacity:.75;flex-shrink:0;max-width:16px;max-height:16px;font-size:16px;width:16px!important;height:16px!important}.nav-link.active .nav-icon{opacity:1}.context-badge .icon{color:#64748b;width:16px;height:16px}.context-badge svg{flex-shrink:0}.context-badge:first-child .icon{color:#2563eb}.context-badge:nth-child(2) .icon{color:#dc2626}.context-badge:nth-child(3) .icon{color:#16a34a}.context-header{color:#111827;margin-bottom:8px;font-size:14px;font-weight:600}.context-inline{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.club-badge{color:#fff;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex;box-shadow:0 2px 6px #00000014}.disabled{opacity:.5;cursor:not-allowed}.logout-link{cursor:pointer;color:#fff;background:0 0;border:none;width:100%;margin-top:12px;padding:0}tooltip{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#111827;border-radius:4px;padding:4px 8px;font-size:12px;transition:opacity .2s;position:absolute;bottom:110%;left:50%;transform:translate(-50%)}.action-btn:hover .tooltip{opacity:1}.tooltip:after{content:"";border:5px solid #0000;border-top-color:#111827;position:absolute;top:100%;left:50%;transform:translate(-50%)}.clickable{cursor:pointer;transition:all .15s}.clickable:hover{background:#e5e7eb;transform:translateY(-1px)}.icon{width:20px;height:20px}.icon.success{color:#16a34a;background:#dcfce7}.icon.danger,.icon.success{border-radius:6px;padding:4px}.icon.danger{color:#dc2626;background:#fee2e2}.icon.warning{color:#f59e0b;background:#fef3c7;border-radius:6px;padding:4px}.icon:hover{transition:all .15s;transform:scale(1.1)}.title-icon{background:#f9fafb;border:1px solid #e5e7eb;flex-shrink:0;align-items:center;gap:6px;width:30px;height:30px;padding:4px 8px;display:inline-flex}.table-actions.compact{gap:6px;display:flex}.table-actions.compact a,.table-actions.compact button{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.card-action{background:#fff;border-radius:6px;padding:4px;position:absolute;top:6px;right:6px;box-shadow:0 2px 6px #0003}.sub-info{color:#6b7280;margin-top:2px;font-size:12px}.app-layout{height:100vh;display:flex;overflow:hidden}body,html{height:100%}.main-area{flex-direction:column;flex:1;display:flex}.context-badges{flex-wrap:nowrap;gap:8px;min-width:0;display:flex}.context-badge{color:#0b3c6d;white-space:nowrap;text-overflow:ellipsis;background:#f8fafc;border:1px solid #dbe4f0;border-radius:999px;flex-shrink:1;align-items:center;gap:6px;max-width:220px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex;overflow:hidden}.context-badge:before{content:"";background:#2563eb;border-radius:50%;width:6px;height:6px}.app-content{background:var(--bg);flex:1;overflow-y:auto}.content-inner{padding:12px 20px 20px}.app-footer{color:#64748b;background:#fffffff2;border-top:1px solid #e5e7eb;flex-shrink:0;justify-content:center;align-items:center;gap:10px;height:38px;font-size:12px;display:flex}.footer-brand{color:#0b3c6d;letter-spacing:.3px;font-weight:700}.footer-version{color:#475569;font-weight:500}.footer-copyright{color:#64748b}.footer-separator{color:#cbd5e1}.footer-version-badge{color:#3730a3;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translate(5px)}to{opacity:1;transform:translate(0)}}.table td{vertical-align:middle}.mini-map{flex-shrink:0;width:180px}.mini-map,.poste-visual{justify-content:center}.context-pill{color:#fff;background:#1d4ed8;border-radius:999px;padding:4px 10px;font-size:13px}.floating-actions{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:999;background:#fffffff2;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000026}.floating-actions button{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.floating-actions .btn-danger{color:#fff;background:#dc2626}.floating-actions .btn-secondary{background:#f3f4f6}.players-grid{scroll-behavior:smooth;gap:12px}.players-grid::-webkit-scrollbar{display:none}input[type=range]{width:120px;margin-right:10px}.poste-visual{align-items:center;height:240px;display:flex}.badge.absent{color:#374151;background:#e5e7eb}.actions-column{white-space:nowrap;width:1%}.actions-column,.table td.actions-column,.table th.actions-column{text-align:right}.action-card{box-shadow:none;background:0 0;border:none;justify-content:flex-end;width:100%;min-width:auto;margin:0 0 0 auto;padding:0;display:flex}.action-card-title{text-transform:uppercase;color:#64748b;margin-bottom:10px;font-size:11px;font-weight:700}.action-card-content{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.action-card-content>:not(:last-child){border-right:1px solid #e5e7eb;flex-shrink:0;padding-right:12px}.action-card-render{align-items:center;display:flex}.action-card-render>*{flex-shrink:0}.equipes-layout{justify-content:space-between;gap:20px;width:100%}.equipes-layout,.equipes-left{align-items:center;display:flex}.equipes-left{flex:1;min-width:0}.equipes-right{flex-shrink:0;gap:12px}.equipes-right,.message{align-items:center;display:flex}.message{border-radius:10px;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500}.message-icon{flex-shrink:0;width:18px;height:18px}.message.success{color:#166534;background:#ecfdf5;border:1px solid #bbf7d0}.message.error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.admin-card{cursor:pointer;text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:12px;gap:16px;padding:20px;transition:all .2s;display:flex}.admin-card:hover:not(:disabled){border-color:#cbd5e1;transform:translateY(-2px)}.admin-card:disabled{cursor:default;opacity:.7}.admin-card-icon{color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.admin-card-icon svg{width:24px;height:24px}.admin-card h3{margin:0 0 6px;font-size:16px}.admin-card p{color:#6b7280;margin:0;font-size:14px}.badge-soon{color:#92400e;background:#fef3c7;border-radius:999px;margin-top:10px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-block}.filter-bar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px 14px;box-shadow:0 2px 6px #0000000a}.filter-bar-secondary{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.filter-bar-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.filter-bar-action-card{margin-left:auto}.filter-bar-main{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.filter-action-card{border-left:1px solid #e5e7eb;justify-content:center;align-items:center;width:100%;padding-left:20px;display:flex}@media (max-width:1024px){.filter-bar-top{grid-template-columns:1fr}.filter-action-card{border-top:1px solid #e5e7eb;border-left:none;padding-top:12px;padding-left:0}}.filter-group{flex-direction:column;gap:4px;display:flex}.filter-group label{color:#6b7280;font-size:12px;font-weight:600}.selection-count{color:#2563eb;background:#dbeafe;border-radius:999px;align-items:center;height:32px;padding:0 16px;font-size:12px;font-weight:600;display:flex}.filter-select{background:#fff;border:1px solid #d1d5db;border-radius:10px;min-width:140px;height:30px;padding:0 12px}.filter-select:focus{border-color:#0b3c6d;outline:none;box-shadow:0 0 0 2px #0b3c6d1a}.filter-bar-pro{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.filter-bar-row{flex-wrap:wrap}.filter-bar-bottom,.filter-bar-row{align-items:center;gap:10px;display:flex}.filter-bar-bottom{min-height:40px}.filter-bar-left{flex-wrap:wrap;flex:1}.filter-bar-left,.filter-bar-right{align-items:center;gap:8px;display:flex}.filter-bar-right{margin-left:auto}.comment-input,.filter-search{border:1px solid #d1d5db;border-radius:10px;font-size:14px}.filter-search{flex:1;min-width:260px;height:30px;padding:0 14px}.comment-input{width:100%;min-height:120px;font-family:inherit;font-weight:inherit;resize:vertical;padding:14px;line-height:1.4}.filter-bar-action{justify-content:flex-end;align-self:start;align-items:flex-start;margin-left:auto;padding-top:0;display:flex}.filter-bar-pro select{background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;padding:6px 8px;font-size:13px}.filter-more{cursor:pointer;background:#f8fafc;border:1px solid #d1d5db;border-radius:10px;height:30px;padding:0 14px;font-weight:500}@media (max-width:1100px){.filter-bar-bottom{flex-wrap:wrap}.filter-bar-right{justify-content:flex-end;width:100%;margin-left:0}}@media (max-width:768px){.filter-bar-row{flex-direction:column;align-items:stretch}.filter-more,.filter-search,.filter-select{width:100%}.filter-bar-bottom{flex-direction:column;align-items:stretch}.filter-bar-right{justify-content:center}}@media (max-width:1024px){.filter-bar-pro{flex-direction:column;align-items:stretch}.filter-bar-right{justify-content:flex-end;width:100%}}@media (max-width:768px){.filter-bar-left{flex-direction:column;align-items:stretch}.filter-bar-left input,.filter-bar-left select{width:100%}.filter-bar-right{justify-content:center;width:100%}.filter-search{width:100%;min-width:250px}}@media (min-width:769px){.filter-search{min-width:320px}}.filter-item{align-items:center;gap:6px;display:flex}.filter-item label{color:#6b7280;font-size:11px}.filter-item select{background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;padding:6px 10px;font-size:13px;transition:all .15s}.filter-item select:hover{border-color:#1d4ed8}@media (max-width:768px){.filter-bar{flex-wrap:nowrap;padding:8px;overflow-x:auto}.filter-item{flex-shrink:0}.filter-item.search{min-width:180px}}.filter-chip.add{cursor:pointer;background:#f9fafb;border:1px dashed #d1d5db;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .2s;display:flex}.filter-chip.add:hover{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6}.filter-bar-top-full{justify-content:flex-end;align-items:center;width:100%;display:flex}.filter-bar-top-full .filter-bar-action-card{width:100%}.filters-wrapper{flex-direction:column;gap:10px;display:flex}.filters-main,.filters-secondary{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .15s}.filter-chip.active,.filter-chip:hover{border-color:#0b3c6d}.filter-chip.active{color:#fff;background:#0b3c6d}.filter-dropdown{position:relative}.filter-dropdown-menu{z-index:100;background:#fff;border:1px solid #d1d5db;border-radius:10px;flex-direction:column;gap:6px;min-width:180px;padding:10px;display:flex;position:absolute;top:100%;left:0;box-shadow:0 4px 12px #0000001a}.filter-option{cursor:pointer}.filter-option,.filter-select{align-items:center;gap:8px;display:flex}.filter-multi-icon{color:#0b3c6d;flex-shrink:0;width:16px;height:16px}.context-bar{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#fffe;justify-content:space-between;height:50px;padding:0 16px;position:sticky;top:0;box-shadow:0 2px 8px #00000014}.context-bar,.context-controls{align-items:center;display:flex}.context-controls{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;gap:10px;padding:4px}.context-select{border-radius:10px;align-items:center;gap:6px;padding:4px 8px;display:flex}.context-select label{color:#6b7280;font-size:11px}.context-select select{cursor:pointer;background:0 0;border:none;padding:2px;font-size:13px;font-weight:500}.context-select select:focus{outline:none}.context-reset{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;display:flex}.context-reset:hover{color:#2563eb;background:#eff6ff}@media (max-width:1024px){.context-bar{flex-wrap:wrap;gap:8px;height:auto;min-height:50px}.context-controls{justify-content:center;width:100%}}@media (max-width:768px){.context-bar{padding:8px 12px!important}.user-email{display:none}.context-controls{flex-wrap:wrap}}@media (max-width:480px){.context-select label{display:none}}.context-locked{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500}.context-center,.context-locked{align-items:center;gap:8px;display:flex}.btn-reset,.context-right{font-size:13px}.btn-reset{cursor:pointer;background:0 0;border:none}.context-title{color:#111827;font-size:20px;font-weight:600}.back-link{cursor:pointer;color:#6b7280;background:0 0;border:none;margin-right:4px;font-size:16px}.context-right{gap:8px;display:flex}.context-filters select{background:#fff;font-size:14px}.context-filters button,.context-filters select{border:1px solid #e5e7eb;border-radius:10px;padding:6px 10px}.context-filters button{cursor:pointer;background:#f9fafb}.page-header{background:linear-gradient(#fff,#f8fafc);border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:8px 24px;display:flex;box-shadow:0 2px 10px #0000000d}.page-header h1{color:#0b3c6d;font-size:24px;font-weight:700}.header-title,.page-header h1{align-items:center;gap:12px;display:flex}.header-title{flex-wrap:nowrap}.header-main-title{white-space:nowrap}.header-left{flex-direction:column;gap:2px;display:flex}.header-right{align-items:center;gap:8px;display:flex}.header-subtitle{color:var(--text-secondary);opacity:.8;margin-top:4px;font-size:13px}@media (max-width:1024px){.page-header{flex-wrap:wrap;gap:12px}.header-right{justify-content:flex-end;width:100%;display:flex}.context-badges{flex-wrap:wrap}}@media (max-width:768px){.page-header{flex-direction:column;align-items:flex-start;margin:12px;padding:12px 16px}.header-title{flex-wrap:wrap;align-items:center;width:100%}.header-right{justify-content:stretch;width:100%}.header-right>*{width:100%}.context-badges{flex-wrap:wrap;gap:6px;width:100%}.header-main-title{white-space:normal}}@media (max-width:480px){.context-badge{max-width:100%;font-size:12px}}.role-badge{display:inline-block}.role-badge.dev{color:#7c3aed;background:#ede9fe}.role-badge.admin{color:#b91c1c;background:#fee2e2}.role-badge.observateur{color:#0369a1;background:#e0f2fe}.role-badge.ctn{color:#1d4ed8;background:#dbeafe}.role-badge.ctr{color:#15803d;background:#dcfce7}.role-badge.ctd{color:#b45309;background:#fef3c7}.role-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.role-badge:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px}.role-badge.dev:before{background:#7c3aed}.role-badge.admin:before{background:#dc2626}.role-badge.observateur:before{background:#0284c7}.role-badge.ctn:before{background:#2563eb}.role-badge.ctr:before{background:#16a34a}.role-badge.ctd:before{background:#d97706}.user-info{align-items:center;gap:10px;display:flex}.user-email{color:#6b7280;font-size:14px;font-weight:500}.equipes-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:16px;display:grid}.equipe-card{background:#fff;border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:0 4px 12px #0000000f}.equipe-card-header{align-items:center;gap:8px;display:flex}.equipe-color-dot{background:var(--team-color);border-radius:50%;flex-shrink:0;width:10px;height:10px}.equipe-name{color:#111827;font-size:14px;font-weight:600}.equipe-card-info{color:#6b7280;font-size:13px}.equipe-card-actions{justify-content:space-between;align-items:center;display:flex}.equipe-card:hover{transform:translateY(-3px);box-shadow:0 8px 18px #0000001a}.equipe-players{flex-direction:column;gap:6px;display:flex}.equipe-player-row{background:#f9fafb;border-radius:6px;justify-content:space-between;align-items:center;padding:6px 8px;display:flex}.player-name{color:#111827;flex:1;font-size:13px;font-weight:600}.remove-btn{cursor:pointer;color:#9ca3af;background:0 0;border:none;font-size:14px}.remove-btn:hover{color:#dc2626}.empty{color:#9ca3af;font-size:12px}.draggable{cursor:grab}.draggable:active{cursor:grabbing;background:#e0f2fe}.team-switch{scrollbar-width:none;align-items:center;gap:8px;margin-right:32px;padding:10px 0;display:flex;overflow-x:auto}.team-switch::-webkit-scrollbar{display:none}.team-btn{white-space:nowrap;cursor:pointer;border:1px solid var(--border);color:#374151;background:0 0;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.team-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0000001a}.team-btn.active{color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px #00000026}.team-dot{border-radius:50%;width:8px;height:8px}.equipe-hero{background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:12px;padding:12px 16px;display:flex;position:relative;box-shadow:0 2px 6px #0000000f}.equipe-hero:before{content:"";background:var(--team-color);border-radius:10px 0 0 10px;width:4px;position:absolute;top:0;bottom:0;left:0}.equipe-hero-content{align-items:center;gap:10px;display:flex}.equipe-text{flex-direction:column;display:flex}.equipe-subtitle{color:#6b7280;font-size:12px}.equipe-left{flex-direction:column;flex:1;gap:12px;display:flex}.equipe-hero-header{align-items:center;gap:10px;display:flex}.team-badge{border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600}.team-counter{color:#fff;background:#2563eb;border-radius:6px;padding:2px 6px;font-size:12px}.team-kpis{flex-wrap:wrap;gap:10px;display:flex}.kpi-item{background:#fff;border:1px solid #e5e7eb;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;display:flex}.kpi-item.success{color:#16a34a}.kpi-item.warning{color:#f59e0b}.kpi-item.danger{color:#dc2626}.kpi-progress-card{flex-shrink:0;width:320px}.kpi-progress-header{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.kpi-progress-footer{color:#64748b;margin-top:6px;font-size:12px}.progress-bar{background:#e5e7eb;border-radius:999px;width:100%;height:8px;overflow:hidden}.progress-fill{background:#2563eb;border-radius:999px;height:100%;transition:width .3s}.kpi-icon{flex-shrink:0;width:16px;height:16px}.kpi-item.success .kpi-icon{color:#16a34a}.kpi-item.warning .kpi-icon{color:#f59e0b}.kpi-item.danger .kpi-icon{color:#dc2626}.poste-chip{color:#64748b;font-size:12px;font-weight:600}.equipe-summary{flex-direction:column;gap:6px;display:flex}.equipe-roster{color:#64748b;flex-wrap:wrap;gap:12px;font-size:13px;font-weight:600;display:flex}.team-kpis-inline{flex-wrap:wrap;gap:16px;display:flex}.kpi-inline{align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.kpi-inline.success{color:#16a34a}.kpi-inline.warning{color:#f59e0b}.kpi-inline.danger{color:#dc2626}.equipe-title-row{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.equipe-title{color:#111827;font-size:32px;font-weight:700}.equipe-roster span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:2px 8px;font-size:12px}.observateurs-title{color:#64748b;margin-right:4px;font-size:10px;font-weight:600}.equipe-postes{flex-wrap:wrap;gap:8px;margin:4px 0;display:flex}.badge-poste-resume{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:600}.badge-poste-resume.success{color:#15803d;background:#ecfdf5;border-color:#86efac}.badge-poste-resume.danger{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.badge-poste-resume.warning{color:#ea580c;background:#fff7ed;border-color:#fdba74}.badge-poste-resume.total{color:#0f172a;background:#f8fafc;border-color:#cbd5e1;align-items:center;gap:4px;margin-left:auto;font-weight:700;display:flex}.equipe-divider{background:#e5e7eb;height:1px;margin:6px 0}.equipe-observateurs{flex-wrap:wrap;align-items:center;gap:8px;margin-top:0;display:flex}.observateur-icon{color:#64748b;flex-shrink:0;width:16px;height:16px}.composer-container{flex-direction:column;gap:16px;display:flex}.composer-team{border:1px solid #e5e7eb;border-radius:10px;padding:10px}.composer-team-header{border-left:6px solid #2563eb;margin-bottom:6px;padding:6px 8px;font-weight:600}.composer-row,.composer-team-header{grid-template-columns:50px 1fr 80px 140px;align-items:center;display:grid}.composer-row{border-bottom:1px solid #f1f5f9;gap:10px;padding:8px}.player-meta{opacity:.6;font-size:11px}.input-numero{border:1px solid #d1d5db;border-radius:6px;width:70px;padding:4px}.input-numero.error{background:#fee2e2;border:2px solid #dc2626}.select-equipe{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:4px}.composer-columns{border-bottom:2px solid #e5e7eb;grid-template-columns:50px 1fr 80px 140px;align-items:center;margin-bottom:10px;padding:6px 8px;font-weight:600;display:grid}.draft-teams{grid-template-columns:repeat(3,minmax(220px,1fr));gap:16px;max-height:500px;margin-top:20px;display:grid;overflow-y:auto}.draft-team-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px}.draft-team-header{align-items:center;gap:8px;margin-bottom:12px;display:flex}.color-picker{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.color-dot{cursor:pointer;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.color-dot:hover{transform:scale(1.08)}.color-dot.active{outline-offset:2px;border-color:#111827;outline:3px solid #111827}.color-check{color:#fff;font-weight:700}.color-dot[style*=\#ffffff]{border:1px solid #d1d5db}.color-selector-btn{margin-top:10px}.inline-color-picker{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.color-selector-btn{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.color-selector-btn:hover{color:#2563eb}.equipe-header{align-items:center;gap:10px;display:flex}.equipe-dot{border-radius:50%;width:12px;height:12px}.equipe-player-row{cursor:grab}.equipe-player-row:active{cursor:grabbing}.equipe-card:hover{outline:2px dashed #2563eb}.equipe-players.non-affectes{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;max-height:260px;display:grid;overflow-y:auto}.player-pick{cursor:grab;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;justify-content:center;padding:6px 8px;font-size:13px;transition:all .15s;display:flex}.player-pick:hover{background:#eff6ff;border-color:#3b82f6}.player-pick:active{cursor:grabbing;transform:scale(.95)}.player-pick:after{content:"⠿";color:#9ca3af;font-size:10px;position:absolute;top:4px;right:6px}.player-pick.dragging{opacity:.5}.player-team{white-space:nowrap;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:6px 10px;font-size:13px;display:flex}.player-team:hover{background-color:#3b82f61f;transform:scale(1.01)}.player-team button,.player-team div,.player-team span{align-items:center;display:inline-flex}.player-number-equipes{background:#fff;border:2px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;transition:all .15s;display:flex;box-shadow:0 2px 6px #00000026}.player-number-equipes:hover{transform:scale(1.1)}.create-team-bar{align-items:center;gap:12px;display:flex}.team-count-grid{justify-content:center;gap:12px;margin:24px 0;display:flex}.count-btn{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:12px;width:60px;height:60px;font-size:18px;font-weight:600;transition:all .2s}.count-btn.active,.count-btn:hover{border-color:#2563eb}.count-btn.active{color:#fff;background:#2563eb}.equipe-toolbar{justify-content:flex-end;align-items:center;gap:12px;width:100%;display:flex}.badge-convocation{cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;transition:all .2s;display:inline-flex}.badge-convocation.on{color:#166534;background:#dcfce7}.badge-convocation.off{color:#991b1b;background:#fee2e2}.badge-convocation:hover{opacity:.85;transform:scale(1.05)}.badge-convocation:active{transform:scale(.95)}.badge-convocation.off{opacity:.8}.badge-convocation.suggested{color:#92400e;background:#fef3c7}.presence-icons{justify-content:center;gap:8px;display:flex}.presence-icon{cursor:pointer;color:#9ca3af;width:30px;height:30px;transition:all .15s}.presence-icon:hover{opacity:1;transform:scale(1.1)}.presence-icon.active.success{color:#16a34a}.presence-icon.active.danger{color:#dc2626;opacity:1}.presence-icons.disabled{opacity:.4;pointer-events:none}.absence-details{align-items:center;gap:6px;display:flex}.filter-select.small{min-width:110px;padding:4px 6px;font-size:12px}.badge-equipe-simple{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-equipe-simple:hover{opacity:.8}.badge-equipe-empty{color:#6b7280;background:#f3f4f6;border:1px dashed #d1d5db;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;display:inline-flex}.badge-selection{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500}.badge-selection.on{color:#166534;background:#dcfce7;border-color:#16a34a}.badge-selection.off{color:#6b7280;background:#f3f4f6}.badge-selection.disabled{opacity:.5;cursor:not-allowed}.row-next{background-color:#eff6ff}.row-out{background-color:#fef2f2}.row-valid{background-color:#ecfdf5}.row-review{background-color:#fef2f2}.active-filters{flex-wrap:wrap;gap:6px}.active-filters,.filter-badge{align-items:center;display:flex}.filter-badge{color:#2563eb;cursor:pointer;background:#e5e7eb;border-radius:999px;height:34px;padding:0 10px;font-size:12px;transition:background .2s}.filter-badge:hover{background:#d1d5db}.clear-all{color:#2563eb;cursor:pointer;margin-left:8px;font-size:12px}.filter-counter{align-items:center;gap:6px;font-weight:500;display:flex}.counter-icon{width:18px;height:18px}.counter-icon.success{color:#16a34a}.counter-icon.warning{color:#f59e0b}.counter-icon.neutral{color:#6b7280}.map-container{aspect-ratio:1;width:220px;position:relative}.map-image{object-fit:contain;width:100%;height:100%}.map-dot{opacity:.6;background:#00f;width:3px;height:3px}.map-dot,.map-pin{border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.map-pin{background:red;width:12px;height:12px;box-shadow:0 0 10px #0009}.map-dot:hover{background:#0ff;transform:translate(-50%,-50%)scale(2)}.map-dot-2{opacity:.6;background:#00f;border-radius:50%;width:8px;height:8px;position:absolute;transform:translate(-50%,-50%)}.map-dot-2:hover{background:#0ff;transform:translate(-50%,-50%)scale(2)}.mini-map{align-items:center;height:240px;display:flex}.mini-map-container{border-radius:12px;width:100%;height:280px;position:relative;overflow:hidden}.map-image,.mini-map-image{object-fit:contain;width:100%;height:100%;display:block}.mini-map-pin{background:red;width:8px;height:8px}.mini-map-container:hover{transition:all .2s;transform:scale(1.1)}.mini-map-pin{background:#dc143c;width:14px;height:14px;box-shadow:0 0 10px #0009}.mini-map-pin,.mini-map-pin:after{border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.mini-map-pin:after{content:"";background:#dc000033;width:25px;height:25px;top:50%;left:50%}.map-cartographie{width:700px;max-width:100%;margin:0 auto;position:relative}.map-city{z-index:3;background:orange;border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;transform:translate(-50%,-50%)}.map-city:hover:after{content:attr(title);white-space:nowrap;background:#fff;border-radius:4px;padding:2px 6px;font-size:10px;position:absolute;top:-20px;left:10px}.map-city-2{z-index:5;background:orange;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;transform:translate(-50%,-50%)}.map-city-2:hover:after{content:attr(title);color:#fff;white-space:nowrap;background:#000;border-radius:4px;padding:2px 6px;font-size:10px;position:absolute;top:-18px;left:10px}.player-club{background:var(--district-color);border-radius:999px;align-items:center;gap:8px;margin-top:8px;padding:4px 10px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.player-club{background:color-mix(in srgb,var(--district-color) 12%,white)}}.player-club{border:1px solid var(--district-color)}@supports (color:color-mix(in lab,red,red)){.player-club{border:1px solid color-mix(in srgb,var(--district-color) 25%,white)}}.district-dot{background:var(--district-color);border-radius:50%;flex-shrink:0;width:8px;height:8px}.player-club-text{color:#475569;font-size:12px;font-weight:500;line-height:1.2}.field{aspect-ratio:2/3;background-image:url(/maps/terrain.png);background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:12px;width:150px;position:relative}.leaflet-interactive{filter:drop-shadow(0 0 6px #00000040)}.cartographie-kpis{grid-template-columns:repeat(7,1fr);gap:12px;margin-bottom:16px;display:grid}.carto-kpi{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px;box-shadow:0 2px 8px #0000000d}.carto-kpi-label{color:#6b7280;margin-bottom:6px;font-size:12px;display:block}.carto-kpi-value{color:#144b84;font-size:26px;font-weight:700}@media (max-width:900px){.cartographie-kpis{grid-template-columns:repeat(2,1fr)}}.leaflet-tooltip{box-shadow:none!important;background:0 0!important;border:none!important}.leaflet-tooltip:before{display:none!important}.cartographie-legend{background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;gap:12px;margin-bottom:16px;padding:16px;display:flex}.legend-row{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.legend-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex}.legend-title{color:#111827;margin-bottom:8px;font-size:15px;font-weight:600}@media (max-width:768px){.cartographie-legend{grid-template-columns:1fr}}.legend-item{align-items:center;gap:8px;font-size:13px;display:flex}.legend-dot{width:14px;height:14px}.legend-dot,.legend-ring{border-radius:50%;flex-shrink:0}.legend-ring{background:#fff;width:16px;height:16px}.legend-ring.good{border:3px solid #16a34a}.legend-ring.medium{border:3px solid #f59e0b}.legend-ring.low{border:3px solid #dc2626}.legend-help{color:#6b7280;margin-top:10px;font-size:12px;line-height:1.4}.club-item{cursor:pointer;background:#f9fafb;border-radius:8px;margin-top:8px;padding:8px}.club-item:hover{background:#eff6ff}.club-header{justify-content:space-between;align-items:center;display:flex}.club-players{border-top:1px solid #e5e7eb;margin-top:8px;padding-top:8px}.club-player{padding:2px 0;font-size:12px}.popup-row{justify-content:space-between;gap:10px;padding:4px 0}.popup-row,.popup-row-left{align-items:center;display:flex}.popup-row-left{gap:8px}.popup-icon{color:#6b7280;width:18px;height:18px}.popup-title{align-items:center;display:flex}.popup-title svg{margin-right:8px}.popup-row.observed strong{color:#16a34a}.popup-row.non-observed strong{color:#dc2626}.leaflet-popup-content-wrapper{max-height:500px}.leaflet-popup-content{max-height:460px;overflow:hidden}.popup-content-scroll{max-height:320px;overflow-y:auto}.match-timer-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-bottom:16px;padding:16px 20px}.match-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.match-label{color:#111827;font-weight:600}.match-period{color:#64748b;font-size:14px}.match-time{text-align:center;color:#0f172a;margin-bottom:10px;font-family:monospace;font-size:48px;font-weight:800;line-height:1}.match-controls{gap:12px;margin-bottom:10px}.match-btn,.match-controls{justify-content:center;display:flex}.match-btn{cursor:pointer;background:#f3f4f6;border:none;border-radius:999px;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s}.match-btn:hover{transform:scale(1.08)}.match-btn.pause,.match-btn.reset{color:#111827;background:#f3f4f6}.match-infos{text-align:center;color:#64748b;margin-top:10px;font-size:13px}.match-config{justify-content:center;gap:20px;margin-top:14px;display:flex}.config-item{align-items:center;gap:8px;display:flex}.config-item label{color:#64748b;font-size:13px}.config-item input,.config-item select{background:#fff;border:1px solid #d1d5db;border-radius:8px;height:32px;padding:0 10px}.config-item input{width:70px}.match-dashboard{grid-template-columns:1fr .9fr 1fr;gap:16px;margin-bottom:16px;display:grid}.dashboard-card.center{text-align:center}.dashboard-stats{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.stat-chip{background:#f8fafc;border-radius:999px;padding:6px 10px;font-size:13px}.roster-line{color:#64748b;gap:10px;font-weight:600;display:flex}.period-label{color:#64748b;margin-bottom:4px;font-size:14px}.match-btn.play{color:#fff;background:#2563eb}.match-config-mini{justify-content:center;align-items:center;gap:8px;display:flex}.match-config-mini input,.match-config-mini select{border:1px solid #d1d5db;border-radius:8px;height:32px;padding:0 8px}.match-config-mini input{width:65px}.progress-line{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.bench-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;width:100%;margin-bottom:12px;padding:10px}.dashboard-toolbar{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.dashboard-toolbar-title{color:#374151;font-size:14px;font-weight:700}.dashboard-collapsed{background:#fff;border:1px solid #e5e7eb;border-radius:16px;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:20px;margin-bottom:12px;padding:12px 16px;display:grid}.collapsed-section{align-items:center;gap:12px;display:flex}.collapsed-section.center{justify-content:center}.collapsed-team{color:#111827;font-size:16px;font-weight:700}.collapsed-kpi{background:#f3f4f6;border-radius:999px;padding:6px 10px;font-size:13px}.collapsed-bench-btn,.collapsed-kpi{align-items:center;gap:6px;display:flex}.collapsed-bench-btn{white-space:nowrap;color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:999px;padding:6px 12px}.mini-icon{width:14px;height:14px}.collapsed-timer{font-family:monospace;font-size:28px;font-weight:800;line-height:1}.collapsed-period{color:#64748b;font-weight:600}.collapsed-controls{gap:6px;display:flex}.collapsed-match-btn{cursor:pointer;background:#f3f4f6;border:none;border-radius:999px;width:32px;height:32px}.collapsed-match-btn.play{color:#fff;background:#2563eb}.collapsed-progress{align-items:center;gap:6px;margin-bottom:4px;display:flex}.collapsed-progress span{color:#64748b;font-size:13px;font-weight:500}.collapsed-progress strong{color:#111827;font-weight:700}.progress-bar.compact{width:80px;height:8px}.dashboard-collapse-btn{cursor:pointer;background:#f3f4f6;border:none;border-radius:8px;width:32px;height:32px}.collapsed-score{align-items:center;gap:6px;display:flex}.score-value{text-align:center;min-width:85px;font-size:32px;font-weight:800}.score-btn{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-weight:700;display:flex}.score-btn.plus{color:#2563eb;background:#dbeafe}.score-btn.minus{color:#dc2626;background:#fee2e2}.collapsed-score span{text-align:center;min-width:90px;font-size:1.5rem;font-weight:800}.match-scoreboard{justify-content:center;align-items:center;gap:20px;display:flex}.score-side{gap:8px;display:flex}.bench-overlay{z-index:99998;background:#00000073;position:fixed;inset:0}.bench-drawer{z-index:99999;background:#fff;flex-direction:column;width:380px;max-width:90vw;height:100vh;display:flex;position:fixed;top:0;right:0;box-shadow:-8px 0 24px #00000026}.bench-header{justify-content:space-between;align-items:center;padding:16px;display:flex}.bench-count,.bench-header{border-bottom:1px solid #e5e7eb}.bench-count{color:#64748b;padding:12px 16px}.bench-target{color:#1e293b;background:#eff6ff;border-bottom:1px solid #dbeafe;padding:16px;font-size:18px;font-weight:700}.bench-list{flex:1;padding:12px;overflow-y:auto}.bench-player{cursor:pointer;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:8px;padding:12px;transition:all .2s}.bench-player:hover{background:#f8fafc}.bench-player-left{align-items:center;gap:12px;display:flex}.bench-numero{color:#fff;background:#2563eb;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-weight:600;display:flex}.substitutions-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-top:16px;padding:16px}.substitution-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:8px 0;display:flex}.substitution-row:last-child{border-bottom:none}.sub-time{color:#64748b;width:60px;font-weight:600}.sub-out{color:#dc2626;font-weight:500}.sub-in{color:#16a34a;font-weight:500}.event-goal{border-left:4px solid #16a34a}.event-assist{border-left:4px solid #2563eb}.event-yellow{border-left:4px solid #facc15}.event-red{border-left:4px solid #dc2626}.event-injury{border-left:4px solid #6b7280}.card-icon{border-radius:2px;flex-shrink:0;width:16px;height:20px;margin-right:10px;display:inline-block}.card-icon.yellow{background:#facc15}.card-icon.red{background:#dc2626}.event-icon{flex-shrink:0;width:18px;height:18px;margin-right:10px}.event-goal .event-icon{color:#16a34a}.event-assist .event-icon{color:#2563eb}.event-yellow .card-icon{background:#facc15}.event-red .card-icon{background:#dc2626}.event-injury .event-icon{color:#6b7280}.player-sub-icon{color:#fff;cursor:pointer;z-index:20;background:#2563eb;border:none;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;bottom:26px;right:-14px;box-shadow:0 2px 8px #0003}.player-sub-icon svg{width:14px;height:14px}.player-event-icon{color:#fff;cursor:pointer;z-index:20;background:#f59e0b;border:none;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;bottom:5px;right:-30px;box-shadow:0 2px 8px #0003}.player-event-icon svg{width:14px;height:14px}.player-status{text-transform:uppercase;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.player-status.titulaire{color:#166534;background:#dcfce7}.player-status.remplacant{color:#1d4ed8;background:#dbeafe}.player-status-icons svg{border-radius:999px;padding:2px}.player-status-icons .success{color:#166534;background:#dcfce7}.player-status-icons .primary{color:#1d4ed8;background:#dbeafe}.player-status-icons .warning{color:#92400e;background:#fef3c7}.player-status-icons .danger{color:#b91c1c;background:#fee2e2}.observers-list{flex-wrap:wrap;gap:6px;display:flex}.player-header{justify-content:space-between;gap:30px}.player-header,.player-header-card,.player-header>div{align-items:center;display:flex}.player-header-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;padding:20px}.player-card-left{align-items:center;gap:16px;display:flex}.player-main-layout{grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;display:grid}.player-left,.player-right{flex-direction:column;gap:20px;display:flex}.player-summary-stats{gap:16px;margin-top:10px;display:flex}.mini-stat{color:#6b7280;font-size:12px}.mini-stat strong{color:#111827;font-size:16px;display:block}.player-name-2{margin-bottom:6px;font-size:28px;font-weight:700}.player-sub-infos{color:#6b7280;gap:6px;font-size:13px;display:flex}.player-meta-2{flex-direction:column;gap:6px;margin-top:8px;display:flex}.club-line{gap:8px}.club-line,.player-main{align-items:center;display:flex}.player-main{gap:20px}.player-sub{color:#6b7280;font-size:12px}.avatar{background:linear-gradient(135deg,#1d4ed8,#3b82f6);width:70px;height:70px;font-size:24px;font-weight:700}.avatar,.avatar-large:hover:after{color:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.avatar-large:hover:after{content:"Changer";background:#0009;font-size:12px;font-weight:500;position:absolute;inset:0}.avatar-large{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#60a5fa);border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;font-size:20px;font-weight:700;display:flex;position:relative;overflow:hidden}.avatar-img{object-fit:cover;width:100%;height:100%}.avatar-text{color:#fff;font-size:18px;font-weight:600}.avatar-large:after{opacity:0;transition:opacity .2s}.avatar-large:hover:after{opacity:1}.club-badge.main{color:#fff;font-weight:600}.club-badge.secondary{color:#374151;background:#f3f4f6}.badge-club{color:#fff;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.club-inline{color:#374151;align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.club-dot{border-radius:50%;width:10px;height:10px}.tags{gap:10px;margin-top:5px;display:flex}.tag{background:#e2e8f0;border-radius:10px;padding:4px 10px;font-size:12px}.tag.district{background:#dcfce7}.tag.birth{align-items:center;gap:8px;display:flex}.tag.birth .icon{color:#6b7280;width:18px;height:18px}.grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.info{justify-content:space-between;margin:8px 0;display:flex}.stats{justify-content:space-around;display:flex}.stat{text-align:center}.tests{gap:20px;display:flex}.row-main{gap:10px;margin-bottom:6px;display:flex}.row.secondary{opacity:.9}.badge.club{color:#1d4ed8;background:#dbeafe}.poste-visual{flex-shrink:0;width:140px;height:180px}.player-position{background:#ffffff26;border-radius:10px;margin-top:2px;padding:2px 6px;font-size:10px;font-weight:700}.player-name-small{color:#fff;text-align:center;text-shadow:0 1px 2px #00000080;background:0 0;width:110px;font-size:12px;font-weight:600;position:absolute;top:60px;left:-30px}.player-note-badge{justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;top:85px;left:-30px}.player-note-badge span{border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700;box-shadow:0 2px 6px #00000040}.player-note-badge button{cursor:pointer;background:#ffffffd9;border:none;border-radius:8px;width:24px;height:24px;font-weight:700}.player-note-badge.flip-y{top:auto;bottom:70px}.player-card{cursor:grab;color:#fff;border:2px solid #fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .12s;display:flex;position:absolute;overflow:visible;transform:translate(-50%,-50%);box-shadow:0 4px 12px #00000040,0 0 0 1px #fff3,inset 0 2px 4px #fff3}.player-card:hover{transform:translate(-50%,-50%)scale(1.05)}.player-card.active{z-index:99999;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #fff,0 5px 15px #00000059}.player-card:active{cursor:grabbing;z-index:50;transform:translate(-50%,-50%)scale(.95);box-shadow:0 0 0 3px #fff,0 6px 12px #0000004d}.player-card.active .player-name-small{font-weight:700}.player-dot{color:#fff;cursor:grab;background:#0b3c6d;border:2px solid #fff;justify-content:center;align-items:center;width:42px;height:42px;font-size:12px;font-weight:700;display:flex}.player-dot,.player-dot.main{border-radius:50%;position:absolute}.player-dot.main{background:#2563eb;width:14px;height:14px;transform:translate(-50%,-50%);box-shadow:0 0 8px #0009}.player-dot.secondary{opacity:.8;background:#9ca3af;border-radius:50%;width:12px;height:12px}.player-dot.secondary,.player-flower{position:absolute;transform:translate(-50%,-50%)}.player-flower{width:160px;height:160px;top:50%;left:50%}.flower-item{cursor:pointer;background:#fff;border:none;border-radius:50%;width:32px;height:32px;font-size:12px;font-weight:600;position:absolute;box-shadow:0 2px 6px #0003}.flower-item.top{top:0;left:50%;transform:translate(-50%)}.flower-item.bottom{bottom:0;left:50%;transform:translate(-50%)}.flower-item.left{top:50%;left:0;transform:translateY(-50%)}.flower-item.right{top:50%;right:0;transform:translateY(-50%)}.player-arc{pointer-events:none;width:120px;height:120px;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.arc-item{pointer-events:auto;cursor:pointer;border:none;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:600;box-shadow:0 2px 6px #0000004d}.player-items{z-index:100000;max-height:220px;transition:all .15s;position:absolute;top:100%;left:0;overflow-y:auto}.player-items::-webkit-scrollbar{width:4px}.player-items::-webkit-scrollbar-track{background:0 0}.player-items::-webkit-scrollbar-thumb{background:#0003;border-radius:999px}.player-items::-webkit-scrollbar-thumb:hover{background:#00000080}.player-items.flip-y{top:auto;bottom:100%}.player-items.flip-x-right{left:auto;right:0}.player-items.flip-x-left{left:0}.item-pill{cursor:pointer;white-space:nowrap;border:none;border-radius:20px;font-size:11px;font-weight:600;box-shadow:0 2px 6px #0003}.item-pill:hover{transform:scale(1.05)}.item-pill.back{color:#fff;background:#111827}.item-title{color:#fff;margin-bottom:4px;font-size:10px;font-weight:700}.player-observations{margin-top:6px}.obs-row{flex-wrap:wrap;gap:6px;display:flex}.badge{border-radius:8px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:500;display:inline-flex}.badge.good{color:#166534;background:#dcfce7}.badge.bad{color:#991b1b;background:#fee2e2}.badge.warning{color:#92400e;background:#fef3c7}.axe-label{opacity:.5;margin-left:6px;font-size:10px;font-weight:600}.history-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:6px;box-shadow:0 0 0 3px #00000008}.history-dot.present{background:#16a34a}.history-dot.absent{background:#dc2626}.history-dot.non-renseigné{background:#9ca3af}.history-item{transition:background .2s,transform .1s}.history-item:hover{background:#f9fafb;border-radius:6px}.history-item:hover .history-dot{transform:scale(1.2)}.history-content{flex-direction:column;flex:1;display:flex}.history-top{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.history-lieu{color:#6b7280;font-size:13px}.history-objectif{color:#6b7280;margin-top:2px;font-size:12px}.history-status{align-items:center;display:flex}.status-badge{text-transform:capitalize;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:600}.status-badge.present{color:#16a34a;background:#dcfce7}.status-badge.absent{color:#dc2626;background:#fee2e2}.status-badge.non-renseigné{color:#6b7280;background:#f3f4f6}.player-card-mini{background:#f9fafb;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:8px;display:flex}.player-rank-2{color:#6b7280;width:30px;font-weight:700}.player-infos-2{flex:1}.player-sub-2{color:#6b7280;font-size:12px}.player-badge-2{color:#0369a1;background:#e0f2fe;border-radius:999px;padding:4px 8px;font-size:12px}.ranking-row{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:6px;display:flex}.ranking-name{flex:1;font-size:14px}.ranking-stats{color:#6b7280}.ranking-rate,.ranking-stats{text-align:center;width:60px;font-size:12px}.ranking-rate{border-radius:999px;padding:2px 6px}.player-info{gap:15px}.player-info,.player-note{align-items:center;display:flex}.player-note{gap:6px}.player-note button{padding:4px 8px}.players-list{flex-direction:column;gap:2px;display:flex}.player-row{border-radius:10px;padding:10px 14px}.player-row.enhanced{background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:10px 14px;display:flex}.note-btn{cursor:pointer;background:#fff;border:none;border-radius:6px;width:26px;height:26px;font-weight:600;transition:all .15s}.note-btn:hover{background:#e5e7eb}.note-btn:active{transform:scale(.95)}.player-note.enhanced{align-items:center;gap:8px;display:flex}.note-stepper{background:#f3f4f6;border-radius:8px;align-items:center;gap:4px;padding:2px;display:flex}.badge-note{text-align:center;color:#fff;border-radius:6px;min-width:42px;padding:4px 6px;font-size:13px;font-weight:600}.badge-note.neutral{color:#374151;background:#e5e7eb;font-weight:700}.players-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;display:grid}.player-card-item{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-direction:column;gap:6px;padding:12px;transition:all .2s;display:flex}.player-card-item:hover{transform:translateY(-3px);box-shadow:0 10px 24px #00000014}.poste-badges{gap:6px;display:flex}.card-top{justify-content:space-between;display:flex}.player-card-item.selected{background:#eff6ff;border:2px solid #1d4ed8}.player-card-item:active{transform:scale(.97)}.player-absent-icon{z-index:5;color:#fff;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 6px #0003}.player-absent-icon svg{width:12px;height:12px}.player-number{background:0 0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:flex}.poste{margin-left:auto}.badge-poste.team{border-radius:8px;min-width:28px;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 2px 4px #00000026}.badge-poste.team,.player-numero{justify-content:center;align-items:center}.player-numero{color:#fff;background:#111827;border-radius:50%;width:18px;height:18px;font-size:10px;display:flex;position:absolute;top:-6px;left:-6px}.player-number,.player-position{text-shadow:0 1px 2px #0006}.player-replace-icon{color:#2563eb;z-index:30;cursor:pointer;background:#fff;border:2px solid #2563eb;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:-8px;left:-8px;box-shadow:0 2px 6px #00000026}.dashboard-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px #00000014}.dashboard-card-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.dashboard-card-icon{color:#1e5cb3;font-size:20px}.dashboard-card-title{letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-size:13px;font-weight:600}.dashboard-card-value{color:#0b3c6d;font-size:32px;font-weight:700;line-height:1.1}.dashboard-card-subtitle{color:#64748b;margin-top:6px;font-size:14px}.dashboard-section{margin-bottom:24px}.dashboard-title{color:#0b3c6d;opacity:.9;margin-bottom:14px;font-size:16px;font-weight:600}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;display:grid}.dash-icon{width:22px;height:22px}.dash-icon.blue{color:#2563eb}.dash-icon.purple{color:#7c3aed}.dash-icon.orange{color:#f97316}.dash-icon.green{color:#16a34a}.stats-grid{flex-wrap:wrap;gap:12px;display:flex}.stats-container{background:#f9fafb;border-radius:14px;gap:20px}.stat-card,.stats-container{flex-direction:column;padding:16px;display:flex}.stat-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;min-width:140px}.stat-card h2{color:#1f2937;align-items:center;gap:8px;margin-bottom:12px;font-size:15px;font-weight:600;display:flex}.stat-card h2 svg{color:#6b7280;letter-spacing:-.01em;flex-shrink:0;width:16px;height:16px}.stat-card h3{color:#1f2937;align-items:center;gap:8px;margin-bottom:10px;font-size:14px;font-weight:600;display:flex}.stat-card.highlight{border:2px solid #2563eb;box-shadow:0 6px 16px #2563eb26}.chart-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-top:16px;padding:20px;transition:all .2s;box-shadow:0 4px 12px #0000000f}.chart-card h3{margin-bottom:12px;font-size:16px;font-weight:600}.chart-footer{text-align:center;color:#6b7280;margin-top:6px;font-size:12px}.bar-chart{align-items:flex-end;gap:16px;height:180px;padding-top:20px;display:flex}.bar-item{flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;display:flex}.bar{border-radius:6px 6px 0 0;width:32px;transition:all .3s}.bar-label{text-align:center;margin-top:6px;font-size:12px}.bar-value{font-size:12px;font-weight:600}.bar:hover{opacity:.8;transform:translateY(-2px)}.quartile-content{align-items:flex-end;gap:20px;display:flex}.quartile-stats{flex-direction:column;gap:8px;display:flex}.quartile-stat{justify-content:space-between;gap:10px;display:flex}.top-clubs{margin-top:20px}.charts-grid{flex-wrap:wrap;align-items:stretch;gap:20px;display:flex}.global-counter{margin-bottom:10px;font-weight:700}.chip-warning{color:#92400e;background:#fef3c7;border-radius:999px;margin-bottom:4px;padding:4px 8px;font-size:12px}.segment-row{border-radius:6px;justify-content:space-between;margin-bottom:4px;padding:6px;display:flex}.segment-row.green{background:#dcfce7}.segment-row.orange{background:#fef3c7}.segment-row.red{background:#fee2e2}.insight-block{margin-bottom:14px}.insight-title{align-items:center;gap:6px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.insight-title.good{color:#16a34a}.insight-title.bad{color:#dc2626}.insight-title .icon-xs{width:16px;height:16px}.stat-card .history-item{border-bottom:1px solid #eee;align-items:flex-start;gap:12px;padding:10px 0;display:flex;position:relative}.modal-overlay{z-index:9999;background:#0006;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal h2{font-size:18px;font-weight:600}.modal h2,.modal>div{margin-bottom:16px}.modal-content{background:#fff;border-radius:10px;width:500px;max-height:80vh;padding:20px;overflow-y:auto}.modal strong{color:#6b7280;letter-spacing:.5px;margin-bottom:6px;font-size:13px;display:block}.modal>div>div{background:#f3f4f6;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 10px;font-size:14px;display:flex}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.modal button{cursor:pointer;border:none;border-radius:6px;width:28px;height:28px;margin-left:6px;font-weight:700}.modal button:first-of-type{background:#e5e7eb}.modal button:first-of-type:hover{color:#fff;background:#16a34a}.modal button:nth-of-type(2){background:#e5e7eb}.modal button:nth-of-type(2):hover{color:#fff;background:#dc2626}.modal .active{color:#fff}.modal .active.plus{background:#16a34a}.modal .active.minus{background:#dc2626}.modal button:last-child{color:#fff;background:#2563eb;width:auto;margin-top:16px;padding:8px 12px}.modal-description{color:#6b7280;margin-top:8px;font-size:14px;line-height:1.5}.observer-card{border-bottom:1px solid #e5e7eb;padding:12px 0}.badge-user.add{cursor:pointer;color:#64748b;background:#f8fafc;border:1px dashed #94a3b8;font-weight:700;transition:all .2s}.badge-user.add:hover{color:#1e293b;background:#e2e8f0;border-color:#64748b}.mode-card{cursor:pointer;background:#fff;border:1px solid #dbe3ea;border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:16px;transition:all .2s;display:flex}.mode-card:hover{background:#eff6ff;border-color:#2563eb}.mode-card.active{color:#1d4ed8;background:#dbeafe;border-color:#2563eb}.form-row{gap:12px;display:flex}.input-note{width:70px}.input-comment,.input-note{border:1px solid #e5e7eb;border-radius:8px;padding:6px}.input-comment{width:100%}.password-wrapper{width:100%;position:relative}.password-wrapper input{width:100%}.password-toggle{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.password-toggle svg{color:#6b7280;width:18px;height:18px}.form-section{background:#fafafa;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:16px}.section-title{align-items:center;gap:20px;margin:32px 0 20px;display:flex}.section-title h4{margin:0;font-size:1rem;font-weight:700}.section-title:after{content:"";background:#d1d5db;flex:1;height:1px}.modal-content textarea{resize:vertical;width:100%;min-height:100px}.modal-content h3{margin:0;font-size:1.2rem;font-weight:700;line-height:1.2}.badge-user{cursor:pointer;color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd;border-radius:999px;align-items:center;height:20px;padding:0 8px;font-size:10px;font-weight:500;transition:all .15s;display:inline-flex}.badge-user:hover{background:#bae6fd;border-color:#7dd3fc}.badge-user.guest{color:#92400e;background:#fef3c7;border-color:#fcd34d}.badge-valid{background:#16a34a}.badge-valid,.badge-wait{color:#fff;border-radius:8px;padding:4px 8px}.badge-wait{background:#f59e0b}.login-page{background:linear-gradient(135deg,#0b3c6d,#1d4ed8);justify-content:center;align-items:center;height:100vh;display:flex}.login-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-radius:24px;flex-direction:column;gap:12px;width:420px;padding:40px;display:flex;box-shadow:0 20px 60px #00000026}.login-title{font-size:22px}.login-subtitle{text-align:center;color:#6b7280;margin-bottom:10px;font-size:13px}.login-card input{border:1px solid #e5e7eb;border-radius:8px;padding:10px;font-size:14px}.login-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:12px;width:100%;height:48px;margin-top:6px;padding:10px;font-weight:600;transition:all .2s}.login-button:hover{background:#0b3c6d;transform:translateY(-1px);box-shadow:0 8px 18px #2563eb59}.login-title{text-align:center;color:#0b3c6d;margin:0;font-size:28px;font-weight:700}.login-error{color:#dc2626;font-size:12px}.login-footer{text-align:center;color:#94a3b8;margin-top:20px;font-size:12px}.terrain{filter:saturate(1.05)contrast(1.05);background:repeating-linear-gradient(0deg,#2e7d32,#2e7d32 20px,#388e3c 20px 40px);border:2px solid #e5e7eb;border-radius:12px;width:100%;height:520px;position:relative;overflow:hidden;overflow:visible!important}.terrain:before{background:#fffc;width:100%;height:2px;left:0}.terrain:after,.terrain:before{content:"";position:absolute;top:50%}.terrain:after{border:2px solid #fffc;border-radius:50%;width:120px;height:120px;left:50%;transform:translate(-50%,-50%)}.surface{border:2px solid #fffc;width:200px;height:100px;position:absolute;left:50%;transform:translate(-50%)}.surface.top{border-top:none;top:0}.surface.bottom{border-bottom:none;bottom:0}.goal{border:2px solid #fff;width:80px;height:40px;position:absolute;left:50%;transform:translate(-50%)}.goal.top{top:-2px}.goal.bottom{bottom:-2px}.terrain-fullscreen{z-index:9999;background:#fff;flex-direction:column;width:100vw;height:100vh;padding:16px;display:flex;position:fixed;top:0;left:0}.terrain-zone{flex:1;display:flex}.fullscreen-exit{z-index:10000;color:#fff;background:#111827;border-radius:6px;padding:6px 10px;position:absolute;top:10px;right:10px}.calendar-view{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:20px;display:grid}.month-block{min-height:unset;background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:18px}.month-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.month-title{margin:0;font-size:20px;font-weight:700}.month-count{color:#94a3b8;font-size:12px;font-weight:500}.timeline{flex-direction:column;gap:10px;display:flex}.event-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:10px 0;display:flex}.event-row:last-child{border-bottom:none}.event-body{flex:1;min-width:0}.event-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.event-date{color:#64748b;font-size:12px;font-weight:600}.event-lieu{color:#0b3c6d;font-size:16px;font-weight:700}.event-objectif{color:#64748b;font-size:13px}.event-status-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:10px;height:10px}.event-status-icon{color:#f59e0b;flex-shrink:0;width:18px;height:18px}.event-actions{flex-shrink:0}.event-link{color:inherit;text-decoration:none}.event-row{border-radius:10px;margin:0 -8px;padding:10px 8px;transition:all .2s;position:relative}.event-row:hover{background:#eff6ff;transform:translate(4px)}.event-row:hover:before{content:"";background:#2563eb;border-radius:999px;width:4px;position:absolute;top:6px;bottom:6px;left:0}.finalised{opacity:.75}.finalised .event-lieu{color:#64748b}.event-date,.event-lieu,.event-objectif,.month-header{-webkit-user-select:none;user-select:none}.player-pick-finalisation{background:#f9fafb;border-radius:10px;align-items:center;gap:10px;margin-bottom:8px;padding:8px 12px;display:flex;position:relative}.player-number-finalisation{background:#e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex;position:absolute;top:50%;left:-10px;transform:translateY(-50%)}.player-name-finalisation{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:120px;max-width:140px;overflow:hidden}.player-actions-finalisation{align-items:center;gap:6px;margin-left:auto;display:flex}.input-note-finalisation{text-align:center;width:45px}.input-comment-finalisation,.input-note-finalisation{border:1px solid #e5e7eb;border-radius:6px;padding:3px}.input-comment-finalisation{width:90px}.toggle-finalisation{cursor:pointer;border:none;border-radius:20px;min-width:32px;padding:3px 6px;font-size:12px}.toggle-finalisation.on{color:#fff;background:#16a34a}.toggle-finalisation.off{color:#fff;background:#dc2626}.team-full{border-top:4px solid var(--team-color);background:#fff;border-radius:10px;padding:12px}.team-title{margin-bottom:10px;font-weight:700}.player-line-full{border-bottom:1px solid #eee;align-items:center;gap:10px;padding:6px;display:flex}.name{flex:1}.note{width:50px}.comment{width:180px}.toggle.on{color:#fff;background:#16a34a}.toggle.off{color:#fff;background:#dc2626}.finalisation-dashboard{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px;display:grid}.finalisation-kpi{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.kpi-label{color:#6b7280;margin-bottom:4px;font-size:12px;display:block}.kpi-value{color:#111827;font-size:22px;font-weight:700}.finalisation-kpi.success .kpi-value{color:#16a34a}.finalisation-kpi.warning .kpi-value{color:#f59e0b}.note-adjustment{align-items:center;gap:4px;margin-top:4px;font-size:12px;display:flex}.note-arrow,.note-origin{color:#6b7280}.note-arrow,.note-final{font-weight:700}.note-final{color:#2563eb}.badge.adjusted{color:#1d4ed8;background:#dbeafe}.drawer-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:12px;padding:12px}.drawer-section h3{color:#64748b;margin:0 0 10px;font-size:14px}.detail-row{justify-content:space-between;margin-bottom:8px;display:flex}.drawer-flags{flex-wrap:wrap;gap:6px;display:flex}.note-adjusted-info{color:#1d4ed8;background:#dbeafe;border-radius:8px;margin:10px 0 14px;padding:8px 12px;font-size:13px;font-weight:600}.selection-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.selection-player{grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:6px 10px;display:grid}.selection-player:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.selection-player strong{color:#111827;font-size:14px;line-height:1.2}.selection-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-top:16px;margin-bottom:20px;display:grid}.stat-card-small{background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:14px;display:flex}.stat-card-small strong{color:var(--team-color,#0b3c6d);font-size:26px;line-height:1}.stat-card-small span{color:#6b7280;margin-top:6px;font-size:12px}.selection-section{margin-top:24px}.selection-section-title{align-items:center;gap:8px;margin-bottom:12px;font-size:15px;font-weight:700;display:flex}.selection-total{color:#1d4ed8;background:#eff6ff;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex}.selection-warning{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;margin-top:16px;padding:12px}.selection-warning-item{font-size:13px}.selection-warning-item+.selection-warning-item{margin-top:4px}@media (max-width:768px){.selection-grid{grid-template-columns:1fr}.selection-player{padding:10px 12px}.stat-card-small strong{font-size:22px}}.selection-score{text-align:center;color:#fff;background:#0b3c6d;border-radius:999px;min-width:46px;padding:4px 8px;font-size:13px;font-weight:700}.selection-columns{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:20px;display:grid}@media (max-width:1200px){.selection-columns{grid-template-columns:repeat(2,minmax(250px,1fr))}}@media (max-width:768px){.selection-columns{grid-template-columns:1fr}}.selection-column{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden}.selection-column-header{color:#fff;padding:12px;font-weight:700}.selection-player-small{border-left:3px solid var(--player-team-color);justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.selection-player-small strong{font-size:12px}.selection-left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.selection-left strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.selection-note{color:#fff;background:#0b3c6d;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:700}.selection-right{align-items:center;gap:8px;display:flex}.selection-columns{align-items:start}.selection-column{height:fit-content}.selection-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.selection-target{align-items:center;gap:8px;display:flex}.selection-target input{text-align:center;border:1px solid #d1d5db;border-radius:8px;width:70px;padding:6px}.selection-kpis{gap:12px;margin-bottom:20px;display:flex}.selection-kpi-card{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;min-width:120px;padding:10px 14px}.selection-kpi-card strong{font-size:22px;font-weight:700;display:block}.selection-kpi-card span{color:#6b7280;font-size:12px}.ppf-popup-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.ppf-popup{background:#fff;border-radius:12px;width:700px;max-height:80vh;padding:24px;overflow-y:auto}.ppf-item{margin-top:6px}.ppf-item,.ppf-row{justify-content:space-between;align-items:center;display:flex}.ppf-row{border-bottom:1px solid #eee;padding:10px 0}.ppf-label{max-width:65%;font-size:14px}.ppf-item-content{flex-direction:column;gap:2px;display:flex}.ppf-description{color:#6b7280;font-size:12px;line-height:1.3}.ppf-controls{align-items:center;gap:8px;display:flex}.ppf-btn{cursor:pointer;border:none;border-radius:6px;width:32px;height:32px;font-weight:700;transition:all .2s}.ppf-btn.plus{color:#2563eb;background:#e0f2fe}.ppf-btn.plus.active{color:#fff;background:#2563eb}.ppf-btn.minus{color:#dc2626;background:#fee2e2}.ppf-btn.minus.active{color:#fff;background:#dc2626}.ppf-score{text-align:center;width:30px;font-weight:700}.ppf-score.pos{color:#16a34a}.ppf-score.neg{color:#dc2626}.ppf-axe{color:#111827;margin-top:16px;margin-bottom:8px;font-size:16px;font-weight:700}.item-pill-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.mini-btn{cursor:pointer;border:none;border-radius:6px;width:28px;height:28px}.mini-btn.plus{color:#2563eb;background:#e0f2fe}.mini-btn.plus.active{color:#fff;background:#2563eb}.mini-btn.minus{color:#dc2626;background:#fee2e2}.mini-btn.minus.active{color:#fff;background:#dc2626}.item-pill{text-align:center;color:#111827;background:#f3f4f6;border-radius:999px;flex:1;padding:6px 10px;font-size:13px}.item-pill-container{flex-direction:column;flex:1;display:flex}.item-help-box{color:#374151;background:#eff6ff;border-radius:6px;margin-top:4px;padding:6px 8px;font-size:11px;line-height:1.3}.item-pill.pos{color:#fff;background:#16a34a}.item-pill.neg{color:#fff;background:#dc2626}.item-pill.neutral{color:#111827;background:#f3f4f6}.ppf-grid{flex-direction:column;gap:10px;display:flex}@media (max-width:900px){.ppf-grid{grid-template-columns:1fr}}.ppf-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.ppf-card-header{color:#fff;padding:8px 14px;font-size:14px;font-weight:700}.axe-1 .ppf-card-header{background:#16a34a}.axe-2 .ppf-card-header{background:#2563eb}.axe-3 .ppf-card-header{background:#f59e0b}.axe-4 .ppf-card-header{background:#dc2626}.ppf-item{border-bottom:1px solid #f3f4f6;padding:8px 16px}.ppf-item:last-child{border-bottom:none}.ppf-item-content{margin-bottom:4px}.ppf-item-title{font-size:15px;font-weight:600;line-height:1.2}.ppf-item-desc{color:#6b7280;font-size:12px;line-height:1.2}.ppf-state{text-align:center;min-width:65px;font-weight:600}.ppf-state.positive{color:#16a34a}.ppf-state.negative{color:#dc2626}.ppf-summary{gap:24px;margin-bottom:16px}.ppf-summary,.ppf-summary-item{align-items:center;display:flex}.ppf-summary-item{gap:6px;font-size:14px;font-weight:600}.ppf-summary-item.good{color:#16a34a}.ppf-summary-item.bad{color:#dc2626}.ppf-summary-icon{flex-shrink:0;width:18px;height:18px}.ppf-player-header{align-items:center;gap:8px;font-size:20px;font-weight:600;display:flex}.player-icon{color:#6b7280;width:22px;height:22px}.nav-collapse-btn{cursor:pointer;background:#ffffff14;border:none;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.nav-collapse-btn:hover{background:#ffffff26}.nav-collapse-icon{color:#fff;width:18px;height:18px}.nav-item{align-items:center;gap:12px;display:flex;position:relative}.nav-tooltip{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:9999;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172af2;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;transition:all .15s;position:absolute;top:50%;left:64px;transform:translateY(-50%)}.nav-item:hover .nav-tooltip{opacity:1;transform:translateY(-50%)translate(4px)}.nav-tooltip:before{content:"";border:4px solid #0000;border-right-color:#0f172af2;position:absolute;top:50%;left:-4px;transform:translateY(-50%)}.dropdown-menu{z-index:1000;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:220px;padding:8px;position:absolute;top:45px;right:0;box-shadow:0 10px 25px #00000026}.dropdown-menu .menu-item,.dropdown-menu button{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.dropdown-menu .menu-item:hover,.dropdown-menu button:hover{background:#f5f8ff}.dropdown-menu hr{border:none;border-top:1px solid #e5e7eb;margin:8px 0}.menu-icon{background:#eef2ff;border-radius:10px;flex-shrink:0;width:20px;height:20px;padding:3px;box-shadow:0 1px 3px #00000014}.menu-icon.print{color:#6b7280}.menu-icon.pdf{color:#dc2626}.menu-icon.excel{color:#16a34a}.menu-icon.email{color:#2563eb}.menu-icon.download{color:#7c3aed}.menu-icon.upload{color:#f59e0b}.menu-item.import{color:var(--primary-color);font-weight:600}.success-banner{color:#166534;background:#ecfdf3;border:1px solid #86efac;border-radius:12px}.error-banner,.success-banner{margin-bottom:16px;padding:14px 18px;font-size:14px;font-weight:600}.error-banner{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;border-radius:12px}.spinner{border:2px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;width:20px;height:20px;animation:spin .8s linear infinite}.status{align-items:center;gap:6px;font-weight:600;display:inline-flex}.status-icon{width:16px;height:16px}.status.success{color:#16a34a}.status.warning{color:#f59e0b}.finalised-banner{color:#fff;background:#16a34a;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-bottom:10px;padding:10px;font-weight:500;display:flex}@keyframes spin{to{transform:rotate(1turn)}}.admin-tabs{gap:6px;display:flex}.admin-tab{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500;transition:all .2s}.admin-tab:hover{background:#e5e7eb}.admin-tab.active{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.assign-row{border-bottom:1px solid #e5e7eb;padding:10px}.assign-header{justify-content:space-between;align-items:center;display:flex}.assign-name{font-size:14px;font-weight:600}.assign-actions{align-items:center;gap:8px;display:flex}.assign-badge{background:#fef3c7;border-radius:4px;padding:2px 6px;font-size:11px}.assign-teams{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.assign-team{cursor:pointer;background:#f1f5f9;border-radius:6px;align-items:center;gap:4px;padding:4px 6px;font-size:12px;transition:all .2s;display:flex}.assign-team:hover{background:#e2e8f0}.assign-team.active{background:#dbeafe;border:1px solid #3b82f6}.btn-delete,.btn-link{cursor:pointer;background:0 0;border:none;font-size:14px}.btn-delete{color:#dc2626}.btn-validate{color:#fff;background:#16a34a;border:none;border-radius:8px;padding:6px 10px}.cell-display{background:#e0f2fe;border:1px solid #38bdf8;border-radius:6px;justify-content:space-between;align-items:center;padding:4px 8px;display:flex}.edit-btn{cursor:pointer;background:0 0;border:none}.cell-display.empty{color:#9ca3af}.cell-display.locked{text-align:center;cursor:pointer;background:#e0f2fe;border:1px solid #38bdf8;border-radius:6px;padding:6px;font-weight:600}.cell-display.locked:hover{background:#bae6fd}.tests-table .table{table-layout:fixed;width:100%}.tests-table .table td:first-child,.tests-table .table th:first-child{width:15%}.tests-table .table td:nth-child(2),.tests-table .table th:nth-child(2){width:12%}.tests-table .table td:nth-child(n+3),.tests-table .table th:nth-child(n+3){text-align:center;width:70px}.tests-table .table td{padding:4px 6px}.tests-table .table th{padding:6px 8px;font-size:11px}.tests-table .input-table{text-align:center;width:100%;padding:3px}.tests-table td:first-child,.tests-table td:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tests-manager-grid{grid-template-columns:1fr 1fr;gap:24px;margin-top:12px;display:grid}.tests-column{flex-direction:column;gap:8px;display:flex}.tests-column h4{color:var(--primary-color);margin:0 0 8px;font-size:1rem;font-weight:600}.test-row{background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;gap:12px;padding:8px 10px}.test-label,.test-row{align-items:center;display:flex}.test-label{color:#374151;flex-wrap:wrap;flex:1;gap:8px;font-size:15px}.test-label input[type=checkbox]{cursor:pointer}.test-name{font-weight:500}.test-sens{color:#64748b;font-size:.8rem}.tests-help{color:#64748b;margin:0 0 16px;font-size:.9rem}.info{grid-template-columns:1fr auto auto;align-items:center;gap:12px;display:grid}.info:last-child{border-bottom:none}.test-value{color:#111827;font-size:16px;font-weight:600}.test-unit{color:#6b7280;margin-left:4px;font-size:16px;font-weight:500}.test-add-btn{margin-top:auto}.toolbar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:16px;padding:12px 14px}.toolbar-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.toolbar-left{flex-wrap:wrap;flex:1;min-width:0}.toolbar-left,.toolbar-right{align-items:center;gap:10px;display:flex}.toolbar-right{flex-wrap:wrap;flex-shrink:0}.toolbar-bottom{border-top:1px solid #e5e7eb;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}@media (max-width:1024px){.toolbar-top{flex-direction:column;align-items:stretch}.toolbar-right{justify-content:flex-end}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-bottom,.leaflet-top{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers.ef6db872.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers-2x.9859cd12.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(/_next/static/media/marker-icon.d577052a.png)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107,M12=.707107,M21=-.707107,M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}