/* Centro stagione e lavagna: colori del club, controlli leggibili a bordo campo. */
.fm-manager,.campionato-hub{padding-top:8px}
.fm-hero{position:relative;overflow:hidden;border-radius:22px;background:radial-gradient(ellipse at 95% 5%,rgba(222,158,46,.2),transparent 46%),linear-gradient(130deg,#2e1249,#502477);color:#fff;padding:25px 23px;margin:0 0 18px;border:1px solid rgba(222,158,46,.35);box-shadow:0 12px 30px rgba(46,18,73,.16)}
.fm-hero:after{content:"50025";position:absolute;font:800 104px/1 var(--font-display);right:-13px;bottom:-19px;color:rgba(255,255,255,.05);pointer-events:none;letter-spacing:-.06em}
.fm-eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;line-height:1.6;color:#a574c8}
.fm-hero .fm-eyebrow{color:#e9b955}.fm-hero h2{font:800 32px/1.1 var(--font-display);color:#fff;margin:12px 0 10px;letter-spacing:-.03em}.fm-hero p{font-size:14px;color:#e2d4ec;max-width:350px;line-height:1.55;margin:0}.fm-hero-link{display:flex;align-items:center;gap:8px;margin-top:21px;border:0;border-top:1px solid #ffffff29;border-radius:0;background:none;color:#f5d08c;width:100%;padding:14px 0 0;font-size:13px;font-weight:700;text-align:left}.fm-hero-link>span{margin-left:auto}
.fm-match-selector{margin:0 0 18px}.fm-match-selector>label,.fm-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;min-width:0}.fm-match-selector>label{margin-bottom:7px}.fm-match-selector>small{display:block;color:var(--grigio);font-size:12px;margin-top:7px}.fm-match-selector select{width:100%}
.fm-workbench{padding:16px;background:var(--carta);border:1px solid var(--linea);border-radius:20px;box-shadow:var(--ombra-1);margin-bottom:23px}.fm-workbench .campo{width:100%;font-weight:500}.fm-field{margin-bottom:12px}.fm-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}.fm-section-head h2,.fm-section-head h3{margin:0;font-family:var(--font-display);font-size:21px;line-height:1.15}.fm-section-head h3{font-size:18px}.fm-status{white-space:nowrap;border:1px solid var(--linea);background:var(--chip);color:var(--grigio);border-radius:6px;font-size:10px;font-weight:800;padding:5px 7px}.fm-status.public{background:var(--ok-bg);color:var(--ok);border:0}
.fm-manager .campogioco,.cp-detail .campogioco{background:repeating-linear-gradient(0deg,#1e5245 0,#1e5245 12.5%,#245d4d 12.5%,#245d4d 25%);border:4px solid #14392f;border-radius:12px;max-width:460px;margin:14px auto;box-shadow:inset 0 0 50px #071a164a}.fm-manager .campogioco:before,.cp-detail .campogioco:before{border-radius:0;inset:13px}.fm-manager .campogioco .slot,.cp-detail .campogioco .slot{background:linear-gradient(160deg,#7e4aaa,#49236c);color:#fff;border:2px solid #ddbd78;border-radius:13px 13px 17px 17px;font:800 15px/1 var(--font-display);width:43px;height:46px;box-shadow:0 4px 8px #07191388}.fm-manager .campogioco .slot.vuoto{background:#fff1;color:#f8f1e2;border:1px dashed #ffffff8a;font-size:25px;box-shadow:none}.fm-manager .campogioco .slot .ov,.cp-detail .campogioco .slot .ov{width:19px;height:19px;right:-6px;top:-7px;background:#e7bf70;color:#3a2812;font-family:var(--font-testo)}.fm-manager .campogioco .pos small,.cp-detail .campogioco .pos small{max-width:82px;overflow:hidden;text-overflow:ellipsis;font-size:10px;background:#102e2666;border-radius:3px;padding:1px 3px;margin-left:50%;transform:translateX(-50%);width:max-content}
.fm-manager .slot:focus-visible{outline:3px solid #fff;outline-offset:4px}.fm-pitch-help{text-align:center;font-size:12px;color:var(--grigio);margin:0 0 14px}.fm-tools{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.fm-tools .bottoncino{flex:1;justify-content:center;white-space:normal;text-align:center;min-height:43px;font-size:12px}.fm-save-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px;margin-top:17px}.fm-save-actions>*{justify-content:center;font-size:13px;padding:12px 8px;min-height:46px}.fm-published,.fm-saved{border-top:1px solid var(--linea);margin-top:14px;padding-top:14px;font-size:13px}.fm-published summary,.fm-saved summary{cursor:pointer;font-weight:700;padding:3px 0;min-height:35px}.fm-schema-list{display:grid;gap:6px;margin-top:10px}.fm-schema-list small{display:block;font-size:11px;font-weight:500;color:var(--grigio)}.fm-unpublished{background:var(--chip);color:var(--grigio);padding:10px;border-radius:9px;font-size:12px}.fm-empty{text-align:center;padding:28px 22px;border:1px dashed var(--linea);border-radius:18px;background:var(--carta);margin:14px 0 22px}.fm-empty .ico{width:42px;height:42px;color:var(--viola-chiaro)}.fm-empty h3{font:700 21px/1.2 var(--font-display);margin:12px 0 8px}.fm-empty p{font-size:14px;color:var(--grigio);margin:0}.fm-tactical-note{background:var(--chip);padding:13px 15px;border-left:3px solid var(--oro);border-radius:0 10px 10px 0;font-size:14px;white-space:pre-wrap}
.fm-player-picker{display:flex;flex-direction:column;gap:7px;margin:12px 0}.fm-player-option{padding:12px;min-height:68px}.fm-player-option .fm-player-rating{flex:0 0 35px;text-align:center;font:800 19px var(--font-display);color:var(--viola-chiaro);background:var(--chip);border-radius:8px;padding:5px 0}.fm-player-option .fm-player-name{font-size:14px;min-width:0}.fm-player-name small{display:block;font-size:11px;font-weight:500;line-height:1.45;margin-top:2px;color:var(--grigio)}.fm-player-name .fm-player-warning{color:var(--no);font-weight:700}.fm-player-option:disabled{opacity:.7;cursor:not-allowed}
.cp-stats{display:grid;grid-template-columns:repeat(4,1fr);background:var(--carta);border:1px solid var(--linea);border-radius:15px;padding:18px 0;margin-top:-4px}.cp-stats>div{text-align:center;border-right:1px solid var(--linea);min-width:0}.cp-stats>div:last-child{border:0}.cp-stats b{display:block;font:800 25px/1 var(--font-display);color:var(--viola-chiaro)}.cp-stats span{display:block;font-size:10px;line-height:1.25;color:var(--grigio);margin:6px 3px 0}.cp-source{color:var(--grigio);font-size:11px;margin:8px 4px 21px;line-height:1.45}.cp-form{display:flex;gap:6px;margin-top:18px}.cp-form>span{font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;border-radius:5px;width:28px;height:27px}.cp-form-V{background:#c7e7d2;color:#174d2b}.cp-form-P{background:#eadbb7;color:#5f450c}.cp-form-S{background:#e3bec0;color:#671a24}.cp-form small{color:#d4c1e4;font-size:12px}
.cp-next{border:1px solid var(--linea);border-left:4px solid var(--oro);border-radius:13px;background:var(--carta);padding:17px;margin-bottom:23px}.cp-next h3{font:700 22px/1.2 var(--font-display);margin:8px 0}.cp-next p{color:var(--grigio);font-size:13px;margin:0 0 14px}.cp-next .pubblica{font-size:12px}.cp-filters{display:flex;gap:5px;margin:13px 0}.cp-filters button{background:var(--carta);border:1px solid var(--linea);border-radius:8px;padding:10px 12px;min-height:42px;font-size:11px;font-weight:700;flex:1}.cp-filters [aria-pressed=true]{background:var(--viola);border-color:var(--viola);color:#fff}.cp-matches{display:grid;gap:10px;margin-bottom:18px}.cp-match{width:100%;background:var(--carta);border:1px solid var(--linea);border-radius:15px;text-align:left;padding:14px 15px;box-shadow:var(--ombra-1);transition:border-color .15s}.cp-match:hover{border-color:var(--viola-chiaro)}.cp-match-top,.cp-match-foot{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:var(--grigio);line-height:1.4}.cp-match-top>span{text-align:right}.cp-match-main{display:flex;align-items:center;gap:12px;margin:15px 0}.cp-match-main>span{flex:1;min-width:0}.cp-match-main b{font:700 18px/1.2 var(--font-display);display:block}.cp-match-main small{font-size:11px;display:block;color:var(--grigio);margin-top:4px}.cp-score{font:800 27px/1 var(--font-display);letter-spacing:-.04em;white-space:nowrap;color:var(--grigio);min-width:57px;text-align:center}.cp-score-V{color:var(--ok)}.cp-score-S{color:var(--no)}.cp-score-P{color:var(--warn)}.cp-match-foot{border-top:1px solid var(--linea);padding-top:11px}.cp-match-foot>span{font-weight:700;color:var(--viola-chiaro)}
.cp-detail-score{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(120deg,#2e1249,#502477);padding:20px 15px;color:#f8f2fd;border-radius:14px;margin:14px 0 18px}.cp-detail-score>strong{font:800 34px/1 var(--font-display);white-space:nowrap;color:#edc97f}.cp-detail-score>span{font-size:12px;flex:1;line-height:1.35;overflow-wrap:anywhere}.cp-detail-score>span:last-child{text-align:right}.cp-detail>h3{font:700 19px/1.25 var(--font-display);margin-top:21px}.cp-name-list{display:flex;flex-wrap:wrap;gap:6px}.cp-name-list>span{background:var(--chip);border-radius:6px;padding:5px 9px;font-size:12px}.cp-timeline>div{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--linea);font-size:13px}.cp-minute{font-size:12px;min-width:29px;color:var(--viola-chiaro)}.cp-timeline-icon{font-size:20px;width:29px;flex:none;text-align:center}.cp-timeline small{display:block;color:var(--grigio);font-size:11px;margin-top:2px}.cp-minute-list{margin-top:10px}.cp-minute-list>div{display:flex;justify-content:space-between;font-size:13px;padding:8px 0;border-bottom:1px solid var(--linea)}.tac-minute-field{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;background:var(--chip);border-radius:10px;margin:12px 0;font-size:13px}.tac-minute-field input{width:82px;text-align:center;margin:0}.tac-minute-field small{display:block;color:var(--grigio);font-size:11px}
@media(min-width:760px){.fm-hero h2{font-size:39px}.fm-hero{padding:30px}.fm-workbench{padding:22px}.cp-matches{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-detail .campogioco{max-width:370px}}
@media(max-width:360px){.fm-workbench{padding:11px}.fm-hero{padding:20px}.fm-hero h2{font-size:28px}.fm-manager .campogioco .slot,.cp-detail .campogioco .slot{width:36px;height:39px;font-size:12px}.fm-manager .campogioco .pos small,.cp-detail .campogioco .pos small{font-size:9px;max-width:63px}.cp-detail-score>strong{font-size:27px}.cp-stats b{font-size:23px}}
@media(prefers-reduced-motion:reduce){.cp-match{transition:none}}

.cp-season{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px;font-size:13px;font-weight:700}.cp-season .campo{width:auto;min-width:130px;margin:0}.fm-match-selector #fm-stagione{margin-bottom:15px}
