@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap";:root{color-scheme:dark;--bg:#09090c;--line:#4b2025;--muted:#c1a5a8;--text:#fff4f4;--cyan:#ff343d;--purple:#a90016}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:repeating-linear-gradient(115deg,#09090c 0,#09090c 90px,#15090c 90px,#15090c 180px),radial-gradient(ellipse at 50% 0%,#5d0712 0,transparent 48%),var(--bg);color:var(--text);font-family:DM Sans,sans-serif}button{font:inherit}.app{width:min(1120px,calc(100% - 36px));margin:auto;padding:34px 0 44px;position:relative;z-index:1}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:url(/assets/escudo-rubro-negro.svg) center 48%/min(48vw,420px) auto no-repeat;opacity:.055;pointer-events:none;animation:crestPulse 5s ease-in-out infinite}@keyframes crestPulse{0%,to{opacity:.035;transform:scale(.98)}50%{opacity:.085;transform:scale(1.03)}}header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.brand{display:flex;align-items:center;gap:12px}.logo{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,#ff2735,#85000d);font-size:25px;box-shadow:0 8px 30px #ff152d55;overflow:hidden}.brand h1{font:700 25px Space Grotesk,sans-serif;margin:0;letter-spacing:-1px}.brand p{margin:2px 0 0;color:var(--muted);font-size:12px}.top-tag{border:1px solid #8f2730;background:linear-gradient(110deg,#24080d,#4c0710);color:#ffe5e7;border-radius:999px;padding:9px 13px;font-size:12px}.intro{text-align:center;margin:24px 0 25px}.eyebrow{color:var(--cyan);font-weight:800;font-size:11px;letter-spacing:2px;text-transform:uppercase}.intro h2{font:700 clamp(28px,5vw,43px) "Space Grotesk",sans-serif;letter-spacing:-1.7px;margin:9px 0}.intro p{color:var(--muted);margin:0;font-size:14px}.layout{display:grid;grid-template-columns:1fr 280px;gap:18px;align-items:start}.game-panel,.side-panel{background:linear-gradient(145deg,#191216f2,#0e0b0df2);border:1px solid #64232b;border-radius:22px;box-shadow:0 20px 60px #0003}.game-panel{padding:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.stat{background:#100c0fa8;border:1px solid #512129;border-radius:14px;padding:12px 14px}.stat span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.stat strong{font:700 23px Space Grotesk,sans-serif}.stat strong small{font:500 12px DM Sans,sans-serif;color:var(--muted)}.board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;perspective:1000px}.card{display:block;width:100%;border:0;background:transparent;padding:0;aspect-ratio:1;cursor:pointer;perspective:800px;min-width:0}.card-inner{display:block;width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .42s cubic-bezier(.2,.75,.2,1)}.card.flipped .card-inner,.card.matched .card-inner{transform:rotateY(180deg)}.face{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:15px;backface-visibility:hidden;border:1px solid #344b68}.front{background:linear-gradient(145deg,#3a1119,#160b0f);font:700 clamp(19px,3vw,29px) "Space Grotesk",sans-serif;color:#ff9da4;transition:background .2s,border-color .2s}.card:hover:not(:disabled) .front{background:linear-gradient(145deg,#671522,#310c14);border-color:#ff5360}.card:hover:not(:disabled){transform:translateY(-5px);filter:drop-shadow(0 8px 13px #f0183044)}.card.matched{animation:goalFlash .65s ease}@keyframes goalFlash{0%{filter:brightness(1)}35%{filter:brightness(1.8) drop-shadow(0 0 16px #ff2638)}to{filter:brightness(1)}}.intro h2{text-shadow:0 0 24px #f21b3544}.eyebrow{text-shadow:0 0 12px #ff263866}.logo img{filter:drop-shadow(0 0 8px #ff253a88)}.btn.primary:hover{box-shadow:0 0 28px #ff263866;transform:translateY(-3px) scale(1.02)}.stat strong{text-shadow:0 0 14px #ff263833}.back{transform:rotateY(180deg);background:linear-gradient(145deg,#260d12,#10090c);font-size:clamp(25px,4vw,42px)}.symbol-image{display:block;width:64%;height:64%;object-fit:contain;filter:drop-shadow(0 5px 8px #0005)}.player-photo{width:100%;height:100%;object-fit:cover;object-position:center 22%;border-radius:9px;filter:saturate(1.08)}.portrait-wrap{width:76%;height:57%;display:grid;place-items:center;overflow:hidden;border-radius:9px;background:linear-gradient(145deg,#4a101b,#16090d);border:1px solid #a62c3b;box-shadow:0 4px 18px #f0183033}.portrait-wrap.historic{background:linear-gradient(145deg,#6b4a17,#211307);border-color:#d5a64b}.portrait-fallback{font-size:clamp(28px,5vw,48px);filter:drop-shadow(0 4px 8px #0008)}.shirt-number{position:absolute;top:7px;right:8px;border-radius:7px;padding:2px 6px;background:#b90018;color:#fff;font:700 10px Space Grotesk,sans-serif}.player-caption{font:700 clamp(9px,1.4vw,12px) "Space Grotesk",sans-serif;max-width:94%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}.player-role{font-size:8px;color:#d5a8ad;line-height:1.1}.back{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:7px}.front{display:flex;flex-direction:column;gap:6px;letter-spacing:2px}.front small{font:600 7px DM Sans,sans-serif;letter-spacing:1px;color:#d58b94}.historic .player-caption{color:#ffe0a1}.card.matched .back{background:linear-gradient(145deg,#4b101b,#1b0a0e);border-color:#ff3947;box-shadow:inset 0 0 0 1px #ff394755,0 0 22px #ff1c3544}.card:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:16px}.card:disabled{cursor:default}.controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}.control-group{display:flex;gap:9px;align-items:center}.btn{border:1px solid var(--line);border-radius:12px;padding:10px 14px;color:var(--text);background:#ffffff08;font-weight:700;font-size:12px;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px);border-color:#6885a8;background:#ffffff12}.btn.primary{background:linear-gradient(110deg,#ff4652,#b90018);border:0;color:#fff;box-shadow:0 7px 22px #e5091938}.btn:focus-visible,.select:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.difficulty{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.select{background:#0b1626;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:9px;font:600 12px DM Sans,sans-serif}.side-panel{padding:19px}.side-panel h3{font:700 16px Space Grotesk,sans-serif;margin:0 0 14px}.tip{background:#e5091910;border:1px solid #e5091944;border-radius:14px;padding:13px;margin-bottom:17px}.tip b{font-size:12px;color:var(--cyan)}.tip p{font-size:12px;line-height:1.6;color:#c3d0df;margin:6px 0 0}.record{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #293b54;color:var(--muted);font-size:12px}.record strong{color:var(--text);font-size:12px}.side-note{font-size:11px;line-height:1.6;color:#8194ad;margin:16px 0 0}.progress{height:7px;border-radius:99px;background:#26364b;overflow:hidden;margin-top:12px}.progress div{height:100%;width:0;background:linear-gradient(90deg,#ff2638,#ff9a3d);transition:width .3s}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#050a13c9;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);display:none;place-items:center;padding:20px;z-index:5}.overlay.show{display:grid}.modal{width:min(390px,100%);background:#1b0d12;border:1px solid #8b2634;border-radius:22px;padding:28px;text-align:center;box-shadow:0 25px 90px #0008}.modal .trophy{font-size:46px}.modal h2{font:700 27px Space Grotesk,sans-serif;margin:9px 0}.modal p{color:var(--muted);font-size:13px;line-height:1.6}.modal-stats{display:flex;justify-content:center;gap:25px;margin:20px 0}.modal-stats strong{display:block;font:700 23px Space Grotesk,sans-serif}.modal-stats span{font-size:11px;color:var(--muted)}footer{text-align:center;color:#71839c;font-size:11px;margin-top:22px}@media (max-width:800px){.layout{grid-template-columns:1fr}.side-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.side-panel h3{grid-column:1/-1}.tip{margin-bottom:0}.side-note{grid-column:1/-1}.records{align-self:center}}@media (max-width:520px){.app{width:min(100% - 22px,600px);padding-top:20px}.top-tag{display:none}.intro{margin:22px 0}.game-panel{padding:12px;border-radius:18px}.board{gap:7px}.face{border-radius:11px}.stats{gap:6px}.stat{padding:10px}.stat strong{font-size:19px}.controls{align-items:stretch}.control-group{width:100%;justify-content:space-between}.difficulty{justify-content:space-between;width:100%}.side-panel{display:block}.tip{margin-bottom:14px}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}.squad-section{margin:30px 0 24px;padding:24px;border:1px solid #64232b;border-radius:22px;background:linear-gradient(145deg,#191216f2,#0e0b0df2);box-shadow:0 16px 48px #0005}.squad-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.squad-heading h2{margin:4px 0 6px;font-size:clamp(22px,3vw,30px)}.squad-heading p{margin:0;color:#c1a5a8;font-size:13px}.squad-count{border:1px solid #8f2730;color:#ffb4ba;border-radius:999px;padding:7px 12px;font-size:10px;font-weight:800;letter-spacing:1px;white-space:nowrap}.squad-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:12px}.squad-player{position:relative;overflow:hidden;border:1px solid #512129;border-radius:13px;background:linear-gradient(145deg,#2a1017,#10090c);min-width:0;transition:transform .22s,border-color .22s,box-shadow .22s}.squad-player:hover{transform:translateY(-4px);border-color:#ff4652;box-shadow:0 8px 22px #ff263833}.squad-player img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 22%;background:#160a0d}.squad-player .squad-fallback{display:grid;place-items:center;width:100%;aspect-ratio:4/5;font-size:38px;background:radial-gradient(circle,#4c111d,#10090c)}.squad-player strong{display:block;padding:8px 7px 2px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.squad-player small{display:block;padding:0 7px 9px;color:#d5a8ad;font-size:9px}.squad-player em{position:absolute;top:7px;left:7px;padding:3px 6px;border-radius:6px;background:#b90018;color:#fff;font-style:normal;font-size:10px;font-weight:800}.history-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid #512129}.history-strip b{color:#ff9da4;font-size:11px;margin-right:5px}.history-strip span{padding:6px 9px;border-radius:999px;background:#2b1017;border:1px solid #63232d;color:#f5dfe1;font-size:10px}@media (max-width:560px){.squad-section{padding:16px}.squad-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.squad-heading{align-items:start;flex-direction:column}}.logo img{width:100%;height:100%;object-fit:contain;padding:4px}.squad-photo{display:block;width:100%;aspect-ratio:4/5;overflow:hidden;background:radial-gradient(circle,#4c111d,#10090c)}.squad-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%}.squad-photo .squad-fallback{display:grid;place-items:center;width:100%;height:100%;font-size:38px}.squad-player>.squad-photo{aspect-ratio:4/5}.squad-player>.squad-photo img{aspect-ratio:4/5}.squad-player>.squad-photo .squad-fallback{aspect-ratio:4/5}.sound-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border:1px solid #69303a;border-radius:12px;background:linear-gradient(110deg,#7800163d,#080d18a6)}.sound-toggle{white-space:nowrap}.sound-toggle[aria-pressed=true]{border-color:#d33b4b;color:#fff;background:#4b111c}.volume-control{display:flex;align-items:center;gap:9px;color:#e9c5c9;font-size:12px;font-weight:700}.volume-control input{width:112px;accent-color:#ed152b;cursor:pointer}.volume-control input:disabled{opacity:.45;cursor:not-allowed}.sound-caption{color:#aab5c7;font-size:10px}@media (max-width:560px){.sound-controls{align-items:flex-start;flex-direction:column;gap:10px}.volume-control input{width:150px}}.anthem-celebration{display:grid;gap:10px;margin:18px 0;padding:14px;border:1px solid rgba(230,30,55,.55);border-radius:14px;background:linear-gradient(135deg,#6e001861,#0c121eeb)}.anthem-celebration>p{margin:0;color:#f4d9dd;font-size:13px}.anthem-button{border-color:#d52a43;background:#681426;color:#fff;font-weight:800}.anthem-player{display:grid;gap:8px}.anthem-player iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:9px;background:#090b10}.anthem-link{color:#f2a9b5;font-size:12px;text-decoration:underline;text-underline-offset:3px}.portrait-wrap,.squad-photo{position:relative;overflow:hidden}.image-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:linear-gradient(110deg,#19191ee6,#640019a6,#19191ee6);color:#fff;font-size:22px;animation:imagePulse 1.1s ease-in-out infinite;z-index:1}.image-pending{opacity:0}.image-loaded{opacity:1;transition:opacity .22s ease}.player-photo,.squad-photo img{transition:opacity .22s ease}@keyframes imagePulse{50%{opacity:.55}}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#3b101c,#11131c 55%,#080a10)}.auth-card{width:min(100%,430px);padding:34px;border:1px solid rgba(220,40,65,.35);border-radius:22px;background:#0c0f18f5;box-shadow:0 24px 80px #0006;color:#f8eef0}.auth-brand{text-align:center;color:#efb8c1;font-size:11px;font-weight:800;letter-spacing:2px}.auth-brand span{font-size:36px}.auth-brand p{margin:8px 0 24px}.auth-card h1{text-align:center;margin:0;font-size:27px}.auth-subtitle{text-align:center;color:#aeb5c3;margin:9px 0 24px}.auth-form{display:grid;gap:16px}.auth-form label{display:grid;gap:7px;color:#f0d5da;font-size:13px;font-weight:700}.auth-form input{width:100%;box-sizing:border-box;padding:12px 13px;border:1px solid #45404a;border-radius:10px;background:#171923;color:#fff;font:inherit;outline:none}.auth-form input:focus{border-color:#e52b49;box-shadow:0 0 0 3px #e52b4924}.auth-form small{color:#aeb5c3;font-weight:400}.auth-submit{width:100%;margin-top:4px}.auth-error{margin:0;color:#ff9aa9;font-size:13px}.auth-switch{text-align:center;color:#b8bfcc;font-size:13px;margin:22px 0 0}.auth-switch button{border:0;background:none;color:#ff8fa2;font:inherit;font-weight:800;cursor:pointer}.auth-local-note{text-align:center;color:#777f90;font-size:11px;margin:18px 0 0}.auth-userbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;padding:8px 0 14px;color:#e9c5c9;font-size:13px}.auth-userbar button{padding:7px 12px}
