
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#07336f,#0f7c42);color:#fff}header{padding:24px 12px;text-align:center;background:radial-gradient(circle at top,#1674d1,#062b63);border-bottom:5px solid #f7c948}h1{margin:0;color:#f7c948;text-shadow:2px 3px #001b40;font-size:clamp(32px,7vw,66px);text-transform:uppercase}h2{margin:6px 0 0;text-transform:uppercase}.info,.topbar,.actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:12px}.badge{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:8px 12px;font-weight:bold}.live{display:inline-block;width:10px;height:10px;background:red;border-radius:50%;margin-right:6px}main{max-width:1320px;margin:auto;padding:16px}.home{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.card,.home-card{background:rgba(255,255,255,.97);color:#111;border:3px solid #f7c948;border-radius:18px;padding:15px;box-shadow:0 10px 26px #0006;margin-bottom:14px}.home-card{text-align:center}.btn{border:0;border-radius:12px;padding:10px 13px;background:#0b4da2;color:#fff;font-weight:bold;text-decoration:none;cursor:pointer;display:inline-block}.btn.gold{background:#f7c948;color:#111}.btn.green{background:#0e7a3f}.btn.red{background:#d62828}.btn.gray{background:#5b6470}.tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:12px 0}.tabs button{border:0;border-radius:999px;background:#f7c948;color:#111;padding:10px 13px;font-weight:900;cursor:pointer}.tabs button.active{background:#fff;color:#062b63}section{display:none}.show{display:block}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.card h3{margin:0 0 10px;background:#062b63;color:white;border-radius:12px;padding:9px;text-transform:uppercase;text-align:center}table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden}th,td{border-bottom:1px solid #ddd;padding:8px;text-align:center;font-size:14px}th{background:#0b4da2;color:#fff}.left{text-align:left;font-weight:bold}.match,.ko,.calendar-card{background:#f7fbff;border:1px solid #d8e6f8;border-radius:12px;padding:9px;margin:8px 0}.meta{display:flex;gap:6px;justify-content:center;align-items:center;flex-wrap:wrap;color:#062b63;font-weight:bold;font-size:13px;margin-bottom:8px}.meta input{padding:6px;border:1px solid #bdd2ec;border-radius:8px}.matchrow{display:grid;grid-template-columns:1fr 52px 24px 52px 1fr;gap:6px;align-items:center}.team:first-child{text-align:right}.team{font-weight:bold}.score{display:inline-block;background:#062b63;color:#fff;border-radius:10px;font-size:20px;font-weight:bold;min-width:44px;padding:7px}input[type=number]{width:54px;padding:7px;border:2px solid #bdd2ec;border-radius:10px;text-align:center;font-size:17px}.goals{background:white;border:1px dashed #bdd2ec;border-radius:10px;margin-top:8px;padding:7px}.chip{display:inline-block;background:#eaf3ff;border:1px solid #bdd2ec;border-radius:999px;padding:5px 8px;margin:3px;font-size:12px}.chip.own{background:#fff1f1;border-color:#ffaaaa}.chip button{background:#d62828;color:#fff;border:0;border-radius:999px;margin-left:5px}.goalform{display:grid;grid-template-columns:1fr 1fr 1fr 70px auto;gap:6px;margin-top:8px}.goalform select,.goalform input,.top-select,.login input,.scheduler input,.scheduler select,textarea,.pro-filter input,.pro-filter select,.pro-table input,.pro-table select{width:100%;padding:8px;border:1px solid #bdd2ec;border-radius:10px}.ownline{grid-column:1/-1;text-align:center;color:#062b63;font-weight:bold}.players{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.metricbox{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.metric{background:#f7fbff;border:1px solid #d8e6f8;border-radius:12px;text-align:center;padding:12px}.num{font-size:26px;font-weight:900;color:#062b63}.timeline div{background:#fff;border-left:6px solid #0b4da2;border-radius:10px;padding:8px;margin:7px 0}.calendar-card .time{font-weight:900;color:#062b63}.scheduler,.pro-filter{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.login-wrap{min-height:55vh;display:flex;align-items:center;justify-content:center}.login{max-width:420px;width:92vw}.locked,.hide{display:none}.small{font-size:12px;color:#555}.footer{text-align:center;font-weight:bold;margin:18px 0}.warning{color:#d62828;font-size:12px;font-weight:bold;text-align:center}.phase-badge{display:inline-block;border-radius:999px;padding:5px 10px;margin:4px 0 8px;background:#fff3cd;color:#664d03;font-size:12px;font-weight:900;border:1px solid #ffecb5}.phase-badge.ok{background:#d1e7dd;color:#0f5132;border-color:#badbcc}.sponsor-footer{background:rgba(255,255,255,.96);color:#111;border:3px solid #f7c948;border-radius:18px;padding:14px;margin-top:22px;box-shadow:0 10px 25px #0005;display:flex;flex-direction:column;align-items:center;gap:6px}.powered-label{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;font-weight:900;color:#555;line-height:1}.sponsor-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:0}.sponsor-logo{width:30px!important;max-width:30px!important;height:auto!important;display:block;transition:transform .18s ease,opacity .18s ease}.sponsor-link:hover .sponsor-logo{transform:scale(1.12);opacity:.85}.footer-note{font-weight:bold;text-align:center;color:#111;font-size:13px}.pro-wrap{overflow-x:auto}.pro-table{min-width:980px}.pro-table tr.next-row{background:#fff3cd}.pro-table tr.live-row{background:#d1e7dd}.pro-table tr.done-row{background:#eef1f5}.status-pill{border-radius:999px;padding:4px 8px;font-size:12px;font-weight:bold;background:#eaf3ff;color:#062b63}.status-live{background:#d1e7dd;color:#0f5132}.status-next{background:#fff3cd;color:#664d03}.status-done{background:#e2e3e5;color:#41464b}@media print{header,.tabs,.topbar,.actions,.goalform,.login-wrap,.scheduler,.btn,.pro-filter{display:none!important}body{background:#fff;color:#000}.card{box-shadow:none;border:1px solid #999}section{display:block}.match,.calendar-card{break-inside:avoid}}@media(max-width:860px){.matchrow{grid-template-columns:1fr 42px 18px 42px 1fr;font-size:13px}.goalform{grid-template-columns:1fr}.ownline{grid-column:auto}th,td{font-size:12px;padding:6px}}

.dash-badge{display:inline-block;margin-top:12px;background:#fff3cd;color:#664d03;border:1px solid #ffecb5;border-radius:999px;padding:8px 12px;font-weight:900;font-size:13px;animation:pulseBadge 1.8s ease-in-out infinite}.empty-stats{padding:20px 10px;text-align:center;background:linear-gradient(135deg,#f7fbff,#eef7ff);border:1px dashed #bdd2ec;border-radius:14px;animation:fadeInUp .45s ease both}.empty-stats.compact{margin:8px 0}.empty-ball{font-size:32px;animation:bounceBall 1.6s ease-in-out infinite}.empty-title{font-weight:900;color:#062b63;margin-top:6px}.empty-text{font-size:13px;color:#555;margin-top:4px}@keyframes pulseBadge{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.03);opacity:.85}}@keyframes bounceBall{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}


/* =========================================================
   GRAFICA LIVELLO MONDIALE - stile locandina con campo disegnato
   Applicata a index.html e torneo.html, non al pannello admin.
   ========================================================= */
body.poster-home,
body[data-mode="viewer"]{
  min-height:100vh;
  background:#07336f;
  color:#fff;
  overflow-x:hidden;
}
body.poster-home::before,
body[data-mode="viewer"]::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-4;
  background:
    radial-gradient(circle at 8% 6%,rgba(255,221,76,.95) 0 8px,transparent 9px),
    radial-gradient(circle at 92% 9%,rgba(255,221,76,.9) 0 7px,transparent 8px),
    radial-gradient(circle at 72% 4%,rgba(255,255,255,.8) 0 4px,transparent 5px),
    linear-gradient(180deg,#0b4f91 0%,#1070a7 23%,#37b0ca 40%,#1e8b44 62%,#0b6b38 100%);
}
body.poster-home::after,
body[data-mode="viewer"]::after{
  content:"";
  position:fixed;
  left:50%;
  bottom:-9vh;
  width:min(1180px,118vw);
  height:min(760px,86vh);
  transform:translateX(-50%) perspective(720px) rotateX(58deg);
  transform-origin:bottom center;
  z-index:-3;
  border-radius:70px 70px 8px 8px;
  background:
    linear-gradient(90deg,transparent 49.55%,rgba(255,255,255,.78) 49.7%,rgba(255,255,255,.78) 50.3%,transparent 50.45%),
    radial-gradient(circle at 50% 50%,transparent 0 82px,rgba(255,255,255,.82) 84px 89px,transparent 91px),
    linear-gradient(0deg,rgba(255,255,255,.72) 0 4px,transparent 5px calc(100% - 5px),rgba(255,255,255,.72) calc(100% - 4px)),
    linear-gradient(90deg,rgba(255,255,255,.72) 0 4px,transparent 5px calc(100% - 5px),rgba(255,255,255,.72) calc(100% - 4px)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 34px,rgba(0,0,0,.05) 34px 68px),
    linear-gradient(180deg,#2abb5a,#117b34);
  box-shadow:0 -22px 90px rgba(0,0,0,.42), inset 0 0 80px rgba(0,0,0,.22);
  opacity:.9;
  pointer-events:none;
}
body.poster-home header,
body[data-mode="viewer"] header{
  position:relative;
  overflow:hidden;
  border-bottom:7px solid #f7c948;
  background:
    radial-gradient(circle at 15% 18%,rgba(255,255,255,.22),transparent 18%),
    radial-gradient(circle at 84% 15%,rgba(255,230,60,.24),transparent 15%),
    linear-gradient(135deg,#062b63 0%,#105c9e 45%,#062b63 100%);
  box-shadow:0 16px 40px rgba(0,0,0,.55);
}
body.poster-home header::before,
body[data-mode="viewer"] header::before{
  content:"⚽  ★  🇧🇷  🇮🇹  🇨🇭  🇫🇷  ★  ⚽";
  position:absolute;
  top:8px;
  left:50%;
  transform:translateX(-50%);
  font-size:clamp(18px,3vw,34px);
  letter-spacing:10px;
  opacity:.95;
  filter:drop-shadow(0 3px 0 rgba(0,0,0,.45));
  white-space:nowrap;
}
body.poster-home header::after,
body[data-mode="viewer"] header::after{
  content:"";
  position:absolute;
  inset:auto -40px -40px -40px;
  height:80px;
  background:radial-gradient(ellipse at center,rgba(255,255,255,.26) 0%,transparent 66%);
}
body.poster-home h1,
body[data-mode="viewer"] h1{
  position:relative;
  margin-top:30px;
  font-size:clamp(46px,10vw,96px);
  letter-spacing:2px;
  line-height:.92;
  color:#ffd85b;
  text-shadow:
    0 4px 0 #7a4a05,
    0 8px 0 #062b63,
    0 12px 22px rgba(0,0,0,.75);
  -webkit-text-stroke:1px rgba(255,255,255,.55);
}
body.poster-home h2,
body[data-mode="viewer"] h2{
  display:inline-block;
  margin-top:12px;
  padding:7px 18px;
  border-radius:999px;
  background:linear-gradient(180deg,#fff8d5,#f7c948 62%,#bd7d0a);
  color:#061b3b;
  border:3px solid #062b63;
  box-shadow:0 6px 0 rgba(0,0,0,.35);
  font-weight:900;
}
body.poster-home .badge,
body[data-mode="viewer"] .badge{
  background:rgba(5,27,59,.82);
  border:2px solid #f7c948;
  box-shadow:0 4px 0 rgba(0,0,0,.35);
}
body.poster-home main,
body[data-mode="viewer"] main{
  position:relative;
}
body.poster-home main::before,
body[data-mode="viewer"] main::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 5% 88%,rgba(247,201,72,.38) 0 18px,transparent 19px),
    radial-gradient(circle at 95% 88%,rgba(247,201,72,.38) 0 18px,transparent 19px),
    linear-gradient(90deg,rgba(255,0,0,.18),transparent 10%,transparent 90%,rgba(255,0,0,.18));
  pointer-events:none;
}
body.poster-home .home-card,
body[data-mode="viewer"] .card,
body[data-mode="viewer"] .ko,
body[data-mode="viewer"] .match,
body[data-mode="viewer"] .calendar-card{
  border:4px solid #f7c948;
  border-radius:22px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,248,222,.96));
  box-shadow:0 10px 0 rgba(5,27,59,.78),0 22px 42px rgba(0,0,0,.42);
}
body.poster-home .home-card{
  position:relative;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease;
}
body.poster-home .home-card:hover{
  transform:translateY(-5px) scale(1.015);
  box-shadow:0 13px 0 rgba(5,27,59,.78),0 30px 52px rgba(0,0,0,.5);
}
body.poster-home .home-card::before,
body[data-mode="viewer"] .card h3::before{
  content:"★";
  color:#ffd85b;
  margin-right:8px;
  text-shadow:0 2px 0 #062b63;
}
body.poster-home .home-card h3,
body[data-mode="viewer"] .card h3{
  background:linear-gradient(180deg,#ffe989,#f7c948 55%,#b56e08);
  color:#061b3b;
  border:3px solid #062b63;
  box-shadow:0 4px 0 rgba(0,0,0,.35);
  letter-spacing:.5px;
}
body[data-mode="viewer"] table{
  border:3px solid #062b63;
}
body[data-mode="viewer"] th{
  background:linear-gradient(180deg,#0d5fa3,#062b63);
  color:#fff;
  text-transform:uppercase;
}
body[data-mode="viewer"] tr:nth-child(even) td{
  background:#fff8dd;
}
body[data-mode="viewer"] .score{
  background:linear-gradient(180deg,#093b78,#051b3b);
  border:2px solid #f7c948;
  box-shadow:0 3px 0 rgba(0,0,0,.25);
}
body.poster-home .btn,
body[data-mode="viewer"] .btn{
  background:linear-gradient(180deg,#ffe989,#f7c948 58%,#bf7a08);
  color:#061b3b;
  border:3px solid #062b63;
  box-shadow:0 5px 0 rgba(0,0,0,.45);
  text-transform:uppercase;
}
body.poster-home .btn:hover,
body[data-mode="viewer"] .btn:hover{
  filter:brightness(1.08);
  transform:translateY(-1px);
}
body[data-mode="viewer"] .tabs button{
  background:linear-gradient(180deg,#fff7d0,#f7c948 60%,#b87509);
  border:2px solid #062b63;
  box-shadow:0 4px 0 rgba(0,0,0,.33);
}
body[data-mode="viewer"] .tabs button.active{
  background:linear-gradient(180deg,#ffffff,#dff6ff);
  color:#062b63;
}
body.poster-home .sponsor-footer,
body[data-mode="viewer"] .sponsor-footer{
  max-width:520px;
  margin:26px auto 0;
  border-color:#f7c948;
  background:rgba(255,255,255,.92);
}


/* FIX FINALE BANDIERE: sostituisce definitivamente BR/IT/CH/FR con emoji bandiera animate */
body.poster-home header::before,
body[data-mode="viewer"] header::before{
  content:"⚽  ★  🇧🇷  🇮🇹  🇨🇭  🇫🇷  ★  ⚽" !important;
  animation: flagsWave 3s ease-in-out infinite;
}
@keyframes flagsWave{
  0%{transform:translateX(-50%) translateY(0)}
  25%{transform:translateX(-50%) translateY(-2px)}
  50%{transform:translateX(-50%) translateY(0)}
  75%{transform:translateX(-50%) translateY(2px)}
  100%{transform:translateX(-50%) translateY(0)}
}
