  :root{
    --bg:#0A0E1A;
    --bg2:#0D1220;
    --bg3:#141A2C;
    --bg4:#1C2438;
    --ink:#EEF1F8;
    --ink-soft:#8891A8;
    --gold:#E7B84B;
    --gold-soft:rgba(231,184,75,0.16);
    --gold-text:#F4D998;
    --card:#141A2C;
    --border:#262E45;
    --red:#FF6B6B;
    --local:#3FAE64;
    --empate:#C9A227;
    --visitante:#4C86D6;
    --faby:#F0876A;
    --angel:#4C86D6;
    --antonio:#E7B84B;
    --marco:#3FAE64;
    --radius:14px;
    --shadow: 0 6px 20px rgba(0,0,0,0.45);
    --on-dark:#EEF1F8;
    --on-dark-soft:#9AA3BC;
  }
  html[data-theme="light"]{
    --bg:#F2F4F9;
    --bg2:#FFFFFF;
    --bg3:#FFFFFF;
    --bg4:#EEF1F8;
    --ink:#152238;
    --ink-soft:#5C6680;
    --gold:#C9A227;
    --gold-soft:rgba(201,162,39,0.14);
    --gold-text:#8A6D00;
    --card:#FFFFFF;
    --border:#E1E5F0;
    --red:#D3342D;
    --shadow: 0 4px 14px rgba(20,30,60,0.08);
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:'Work Sans', sans-serif;
    -webkit-font-smoothing:antialiased;
    transition:background .2s ease, color .2s ease;
  }
  .card, input, select, .tabs, .tab, .chip, .avatar, .badge{ transition:background .2s ease, border-color .2s ease, color .2s ease; }

  .theme-picker{display:flex; gap:10px;}
  .theme-option{
    flex:1; display:flex; flex-direction:column; align-items:center; gap:8px; padding:14px 10px;
    background:var(--bg4); border:1.5px solid var(--border); border-radius:var(--radius);
    color:var(--ink-soft); font-size:12px; font-family:'Oswald',sans-serif; font-weight:700;
    text-transform:uppercase; letter-spacing:0.03em; cursor:pointer;
  }
  .theme-option.active{border-color:var(--gold); color:var(--gold-text); background:var(--gold-soft);}
  .theme-swatch{width:100%; height:38px; border-radius:9px; border:1px solid rgba(0,0,0,0.15);}
  .theme-swatch-dark{background:linear-gradient(135deg, #131C33 0%, #0A0E1A 60%, #E7B84B 100%);}
  .theme-swatch-light{background:linear-gradient(135deg, #FFFFFF 0%, #F2F4F9 60%, #C9A227 100%);}
  .app{max-width:760px;margin:0 auto;padding-bottom:60px;}
  h1,h2,h3,.display{font-family:'Oswald',sans-serif; letter-spacing:0.02em; text-transform:uppercase;}

  .scoreboard{
    background:linear-gradient(160deg, #131C33 0%, #0A0E1A 100%);
    color:var(--on-dark);
    padding:22px 20px 20px;
    position:relative;
    overflow:hidden;
    text-align:center;
  }
  .scoreboard::after{
    content:"";
    position:absolute; left:0; right:0; bottom:0;
    height:3px;
    background:linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity:0.7;
  }
  .scoreboard-top{display:flex; flex-direction:column; align-items:center; gap:2px;}
  .scoreboard-title{font-size:22px; font-weight:600; margin:0; letter-spacing:0.08em;}
  .scoreboard-sub{font-size:11px; opacity:0.75; margin-top:2px; text-transform:uppercase; font-family:'Oswald',sans-serif; letter-spacing:0.12em; color:var(--on-dark-soft);}
  .stats-strip{
    margin-top:18px; background:var(--bg3); border:1px solid var(--border);
    border-radius:var(--radius); padding:14px 10px; display:flex; align-items:stretch; justify-content:space-around; gap:6px;
  }
  .stat-col{flex:1; text-align:center; padding:0 4px;}
  .stat-col + .stat-col{border-left:1px solid var(--border);}
  .stat-value{font-family:'Oswald',sans-serif; font-size:22px; font-weight:700; color:var(--ink); line-height:1.1;}
  .stat-value.gold{color:var(--gold-text);}
  .stat-label{font-size:10px; color:var(--ink-soft); text-transform:uppercase; letter-spacing:0.06em; margin-top:3px;}
  .stat-sub{font-size:9.5px; color:var(--ink-soft); margin-top:4px; line-height:1.35; opacity:0.85;}
  .leader-box{display:none;}

  .tabs{
    display:flex; gap:6px; background:var(--bg2); border-bottom:1px solid var(--border);
    position:sticky; top:0; z-index:10; padding:8px 10px; overflow-x:auto;
  }
  .tab{
    flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px;
    text-align:center; padding:9px 4px; font-size:11px; font-weight:600; color:var(--ink-soft);
    cursor:pointer; border-radius:10px; user-select:none; white-space:nowrap;
    font-family:'Oswald',sans-serif; letter-spacing:0.03em; text-transform:uppercase;
  }
  .tab svg{width:18px; height:18px; stroke:var(--ink-soft); fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
  .tab.active{color:var(--gold-text); background:var(--bg4);}
  .tab.active svg{stroke:var(--gold-text);}

  main{padding:18px 16px 0;}
  .view{display:none;}
  .view.active{display:block;}

  .card{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:16px; margin-bottom:14px; box-shadow:var(--shadow);}
  .card-header{display:flex; align-items:center; justify-content:space-between; margin-bottom:10px;}
  .card-header h3{margin:0; font-size:15px; color:var(--ink); letter-spacing:0.03em;}
  .muted{color:var(--ink-soft); font-size:13px;}

  button{font-family:'Work Sans',sans-serif; cursor:pointer; border:none; border-radius:10px; font-weight:600; font-size:13px; transition:transform .08s ease, background .15s ease;}
  button:active{transform:scale(0.97);}
  .btn-primary{background:var(--gold); color:#2A2005; padding:11px 18px;}
  .btn-primary:hover{background:#F0C666;}
  .btn-secondary{background:var(--bg4); color:var(--ink); border:1px solid var(--border); padding:10px 16px;}
  .btn-gold{background:var(--gold); color:#2A2005; padding:11px 18px;}
  .btn-ghost{background:transparent; color:var(--ink-soft); padding:6px 10px; font-size:12px;}
  .btn-danger{background:transparent; color:var(--red); padding:6px 10px; font-size:12px;}
  .btn-block{width:100%;}
  .btn-primary:disabled, .btn-gold:disabled{opacity:0.4; cursor:not-allowed;}

  input[type=text], input[type=number], select{
    font-family:'Work Sans',sans-serif; border:1px solid var(--border); border-radius:8px;
    padding:9px 10px; font-size:14px; color:var(--ink); background:var(--bg4); width:100%;
  }
  input:focus, select:focus{outline:2px solid var(--gold); outline-offset:1px;}
  label{font-size:12px; color:var(--ink-soft); font-weight:600; display:block; margin-bottom:4px;}

  /* Team badges */
  .badge{
    display:inline-flex; align-items:center; justify-content:center;
    width:var(--bsize,26px); height:var(--bsize,26px); border-radius:50%;
    color:#fff; font-family:'Oswald',sans-serif; font-weight:700;
    font-size:calc(var(--bsize,26px) * 0.36); flex-shrink:0; box-shadow:0 1px 3px rgba(0,0,0,.25);
    letter-spacing:0.02em;
  }
  .badge-logo{background:#fff; border:1px solid var(--border); padding:2px; box-sizing:border-box; box-shadow:0 1px 3px rgba(0,0,0,0.15);}
  .badge-logo img{width:100%; height:100%; object-fit:contain; border-radius:50%;}
  .team-inline{display:flex; align-items:center; gap:8px;}
  .team-inline.right{flex-direction:row-reverse; text-align:right;}

  .partido-row{display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:8px; padding:10px 0; border-bottom:1px solid var(--border);}
  .partido-row:last-child{border-bottom:none;}
  .team-name{font-size:13.5px; font-weight:600;}
  .vs-badge{font-family:'Oswald',sans-serif; font-size:11px; color:var(--ink-soft); background:var(--bg4); border-radius:20px; padding:4px 10px; white-space:nowrap;}

  .score-inputs{display:flex; align-items:center; gap:6px; justify-content:center;}
  .score-inputs input{width:46px; text-align:center; padding:8px 4px;}

  .pick-row{display:flex; flex-direction:column; gap:8px; padding:12px 0; border-bottom:1px solid var(--border);}
  .pick-row:last-child{border-bottom:none;}
  .pick-teams{display:flex; align-items:center; justify-content:space-between; font-size:13.5px; font-weight:600;}
  .pick-buttons{display:flex; gap:8px;}
  .pick-btn{
    flex:1; padding:10px 4px; border-radius:9px; border:1px solid var(--border);
    background:var(--bg4); color:var(--ink-soft); font-size:12px; font-weight:700; font-family:'Oswald',sans-serif; letter-spacing:0.03em;
  }
  .pick-btn[data-val="L"].selected{background:var(--local); color:#fff; border-color:var(--local);}
  .pick-btn[data-val="E"].selected{background:var(--empate); color:#fff; border-color:var(--empate);}
  .pick-btn[data-val="V"].selected{background:var(--visitante); color:#fff; border-color:var(--visitante);}

  .participant-chips{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px;}
  .chip{padding:8px 14px; border-radius:20px; border:2px solid var(--border); background:var(--bg4); font-size:13px; font-weight:700; color:var(--ink-soft); font-family:'Oswald',sans-serif; letter-spacing:.02em;}
  .chip.active{color:#12162A;}
  .chip[data-p="Faby"].active{background:var(--faby); border-color:var(--faby);}
  .chip[data-p="Angel"].active{background:var(--angel); border-color:var(--angel);}
  .chip[data-p="Antonio"].active{background:var(--antonio); border-color:var(--antonio);}
  .chip[data-p="Marco"].active{background:var(--marco); border-color:var(--marco);}

  .avatar{
    display:inline-flex; align-items:center; justify-content:center; border-radius:50%;
    width:var(--asize,36px); height:var(--asize,36px); font-family:'Oswald',sans-serif; font-weight:700;
    color:#12162A; font-size:calc(var(--asize,36px) * 0.4); flex-shrink:0; border:2px solid transparent;
  }
  .avatar.me{border-color:var(--gold); box-shadow:0 0 0 2px var(--bg3);}
  .avatar[data-p="Faby"]{background:var(--faby);}
  .avatar[data-p="Angel"]{background:var(--angel);}
  .avatar[data-p="Antonio"]{background:var(--antonio);}
  .avatar[data-p="Marco"]{background:var(--marco);}
  .avatar img{width:100%; height:100%; object-fit:cover; border-radius:50%;}

  .photo-upload{display:flex; align-items:center; gap:14px; margin-bottom:16px;}
  .photo-upload input[type=file]{display:none;}
  .photo-upload-label{cursor:pointer; color:var(--gold-text); font-size:13px; font-weight:600; border:1px solid var(--border); background:var(--bg4); padding:9px 14px; border-radius:9px; display:inline-block;}

  .perfil-summary-row{display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--border);}
  .perfil-summary-row:last-child{border-bottom:none;}
  .perfil-summary-info{flex:1; min-width:0;}
  .perfil-summary-name{font-weight:700; color:var(--ink); font-size:14px;}
  .perfil-summary-detail{font-size:12px; color:var(--ink-soft); margin-top:2px; line-height:1.5;}
  .perfil-summary-fecha{font-size:10.5px; color:var(--ink-soft); opacity:0.75; margin-top:3px; font-style:italic;}

  table{width:100%; border-collapse:collapse;}
  th{text-align:left; font-size:10.5px; text-transform:uppercase; letter-spacing:.08em; color:var(--ink-soft); font-weight:700; padding:8px 10px; border-bottom:1px solid var(--border);}
  td{padding:10px; font-size:14px; border-bottom:1px solid var(--border); color:var(--ink);}
  tr.row-me td{background:var(--bg4);}
  tr.row-me td:first-child{border-radius:10px 0 0 10px;}
  tr.row-me td:last-child{border-radius:0 10px 10px 0;}
  .rank-pos{font-family:'Oswald',sans-serif; font-weight:700; font-size:15px; width:22px; color:var(--ink-soft);}
  .rank-pos.gold{color:var(--gold-text);}
  .rank-player{display:flex; align-items:center; gap:10px;}
  .rank-name{font-weight:700; color:var(--ink);}
  .rank-tag{font-size:10px; color:var(--gold-text); font-weight:700; text-transform:uppercase; letter-spacing:.04em;}
  .rank-points{font-family:'Oswald',sans-serif; font-weight:700; font-size:17px; text-align:right; color:var(--ink);}

  .empty-state{text-align:center; padding:40px 20px; color:var(--ink-soft);}
  .empty-state .big{font-size:40px; margin-bottom:8px;}

  .jornada-select-row{display:flex; gap:8px; margin-bottom:14px;}
  .jornada-select-row select{flex:1;}

  .goles-box{background:var(--bg4); border-radius:10px; padding:12px; margin-top:12px; display:flex; align-items:center; justify-content:space-between; gap:10px;}
  .goles-box label{margin:0; font-size:13px;}
  .goles-box input{width:70px; text-align:center;}

  .toast{
    position:fixed; bottom:18px; left:50%; transform:translateX(-50%); background:#050710; color:#fff; border:1px solid var(--border);
    padding:10px 18px; border-radius:30px; font-size:13px; opacity:0; transition:opacity .25s ease; pointer-events:none; z-index:50; font-weight:600;
  }
  .toast.show{opacity:1;}

  .add-partido-form{display:flex; gap:8px; margin-top:10px; flex-wrap:wrap;}
  .add-partido-form > div{flex:1; min-width:130px;}

  .settings-row{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 0; border-bottom:1px solid var(--border);}
  .settings-row:last-child{border-bottom:none;}
  .settings-row input{width:70px; text-align:center;}

  .jornada-title-row{display:flex; align-items:center; justify-content:space-between; gap:10px;}
  .jornada-title-click{display:flex; align-items:center; gap:8px; cursor:pointer; min-width:0; flex:1;}
  .jornada-title-click h3{white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  .jornada-chevron{color:var(--gold-text); font-size:13px; flex-shrink:0; width:14px; text-align:center;}
  .jornada-body{margin-top:4px;}
  .jornada-status{font-size:11px; padding:3px 9px; border-radius:20px; font-weight:700; text-transform:uppercase; letter-spacing:.03em;}
  .jornada-status.pendiente{background:var(--bg4); color:var(--ink-soft);}
  .jornada-status.cerrada{background:var(--gold-soft); color:var(--gold-text);}

  .lock-switch-btn{
    display:flex; align-items:center; gap:8px; background:var(--bg4); border:1px solid var(--border);
    border-radius:20px; padding:6px 12px 6px 6px; color:var(--ink-soft); font-size:11.5px; font-weight:700;
    font-family:'Oswald',sans-serif; letter-spacing:0.03em; text-transform:uppercase; flex-shrink:0;
  }
  .lock-switch-btn.locked{color:var(--gold-text); border-color:var(--gold);}
  .lock-switch-track{
    width:34px; height:19px; border-radius:20px; background:var(--bg); border:1px solid var(--border);
    position:relative; flex-shrink:0;
  }
  .lock-switch-knob{
    position:absolute; top:1px; left:1px; width:15px; height:15px; border-radius:50%;
    background:var(--ink-soft); transition:transform .15s ease, background .15s ease;
  }
  .lock-switch-btn.locked .lock-switch-track{background:var(--gold-soft); border-color:var(--gold);}
  .lock-switch-btn.locked .lock-switch-knob{transform:translateX(15px); background:var(--gold);}

  input:disabled{opacity:0.5; cursor:not-allowed;}

  .historial-list{display:flex; flex-direction:column; gap:2px; max-height:280px; overflow-y:auto;}
  .historial-item{
    display:flex; justify-content:space-between; align-items:baseline; gap:12px;
    padding:9px 0; border-bottom:1px solid var(--border); font-size:12.5px;
  }
  .historial-item:last-child{border-bottom:none;}
  .historial-fecha{color:var(--ink-soft); font-size:10.5px; white-space:nowrap; flex-shrink:0;}
  .historial-texto{color:var(--ink); text-align:right;}

  .winner-card{
    position:relative; overflow:hidden;
    background:linear-gradient(135deg, var(--bg3) 0%, var(--bg4) 100%);
    border-color:var(--gold);
  }
  .winner-shine{
    position:absolute; top:-60%; left:-20%; width:70%; height:220%;
    background:linear-gradient(100deg, transparent, rgba(231,184,75,0.10), transparent);
    transform:rotate(12deg); pointer-events:none;
  }
  .winner-row{display:flex; align-items:center; gap:20px; position:relative;}
  .winner-avatar-wrap{position:relative; flex-shrink:0;}
  .winner-crown{
    position:absolute; top:-20px; left:50%; transform:translateX(-50%) rotate(-10deg);
    font-size:30px; filter:drop-shadow(0 2px 4px rgba(0,0,0,0.5)); z-index:2;
  }
  .winner-avatar{
    border:3px solid var(--gold); box-shadow:0 0 0 5px var(--gold-soft), 0 10px 26px rgba(231,184,75,0.28);
  }
  .winner-info{text-align:left; min-width:0;}
  .winner-name{font-family:'Oswald',sans-serif; font-size:24px; text-transform:uppercase; letter-spacing:0.03em; color:var(--ink); margin-top:4px;}
  .winner-points{font-family:'Oswald',sans-serif; font-size:46px; font-weight:700; color:var(--gold-text); line-height:1; margin-top:4px;}
  .winner-points span{font-size:14px; font-family:'Work Sans',sans-serif; text-transform:none; color:var(--ink-soft); margin-left:6px;}

  @media (max-width:380px){
    .winner-row{gap:14px;}
    .winner-points{font-size:36px;}
  }

  .participant-picker{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:16px;}
  .participant-picker .picker-hint{grid-column:1/-1; margin:0 0 2px;}
  .participant-pick-card{
    display:flex; align-items:center; gap:12px; background:var(--bg3); border:1.5px solid var(--border);
    border-radius:var(--radius); padding:14px; cursor:pointer; transition:border-color .15s ease, background .15s ease;
  }
  .participant-pick-card:active{transform:scale(0.98);}
  .participant-pick-card:hover{border-color:var(--gold);}
  .participant-pick-name{font-family:'Oswald',sans-serif; font-weight:700; font-size:17px; letter-spacing:0.02em; color:var(--ink); text-transform:uppercase;}

  .participant-confirm-bar{
    display:flex; align-items:center; gap:12px; background:var(--bg3); border:1.5px solid var(--gold);
    border-radius:var(--radius); padding:12px 14px; margin-bottom:16px;
  }
  .participant-confirm-name{flex:1; font-size:14px; color:var(--ink-soft);}
  .participant-confirm-name b{font-family:'Oswald',sans-serif; font-size:20px; text-transform:uppercase; color:var(--gold-text); margin-left:6px; letter-spacing:0.02em;}

  .eyebrow-title{font-family:'Oswald',sans-serif; font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-soft); margin:20px 0 10px;}

  .jp-row{display:flex; align-items:center; gap:12px; padding:9px 0; border-bottom:1px solid var(--border);}
  .jp-row:last-child{border-bottom:none;}
  .jp-row.winner{background:var(--gold-soft); margin:0 -16px; padding:9px 16px; border-radius:8px; border-bottom-color:transparent;}
  .jp-info{flex:1; min-width:0;}
  .jp-name{font-weight:700; color:var(--ink); font-size:13.5px; display:flex; align-items:center; gap:5px;}
  .jp-crown{font-size:14px;}
  .jp-why{font-size:11.5px; color:var(--ink-soft); margin-top:2px; line-height:1.5;}
  .jp-points{font-family:'Oswald',sans-serif; font-weight:700; color:var(--ink); font-size:15px; flex-shrink:0;}
  .jp-row.winner .jp-points{color:var(--gold-text);}
  .jp-points span{font-size:9.5px; font-family:'Work Sans',sans-serif; text-transform:none; color:var(--ink-soft); margin-left:2px;}

  .loading{text-align:center; padding:30px; color:var(--ink-soft); font-size:13px;}

  .card-export-preview{width:100%; border-radius:10px; margin-top:12px; border:1px solid var(--border); display:none;}
  .card-export-actions{display:flex; gap:8px; margin-top:12px;}
  .official-note{font-size:12px; color:var(--ink-soft); background:var(--bg4); border-radius:10px; padding:10px 12px; margin-top:10px; line-height:1.5;}

  .jornada-pick-grid{display:grid; grid-template-columns:repeat(4, 1fr); gap:8px; margin:12px 0;}
  .jornada-pick-btn{
    padding:11px 4px; border-radius:9px; border:1px solid var(--border); background:var(--bg4);
    color:var(--ink); font-family:'Oswald',sans-serif; font-weight:700; font-size:13px; text-align:center;
    cursor:pointer; letter-spacing:0.02em;
  }
  .jornada-pick-btn.loaded{background:var(--gold-soft); color:var(--gold-text); border-color:var(--gold); cursor:default;}
  .jornada-pick-btn.loaded::after{content:" ✓"; font-size:11px;}

  .lock-screen{
    position:fixed; inset:0; background:var(--bg); z-index:100; display:flex; align-items:center; justify-content:center;
    padding:24px;
  }
  .lock-card{max-width:340px; width:100%; text-align:center;}
  .lock-card .display{font-size:20px; margin-bottom:4px;}
  .lock-card p{color:var(--ink-soft); font-size:13px; margin:6px 0 18px;}
  .lock-card input{text-align:center; letter-spacing:0.2em; font-size:16px; margin-bottom:10px;}
  .lock-input-wrap{position:relative; margin-bottom:10px;}
  .lock-input-wrap input{margin-bottom:0; padding-right:44px;}
  .lock-toggle{
    position:absolute; right:4px; top:50%; transform:translateY(-50%);
    background:transparent; border:none; padding:8px; color:var(--ink-soft); cursor:pointer;
    display:flex; align-items:center; justify-content:center;
  }
  .lock-toggle svg{width:19px; height:19px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
  .lock-error{color:var(--red); font-size:12.5px; min-height:16px; margin-bottom:8px;}
  .sync-dot{
    display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--on-dark-soft); margin-right:5px;
    vertical-align:middle;
  }
  .sync-dot.online{background:var(--local);}
  .sync-status{font-size:10px; color:var(--on-dark-soft); text-transform:uppercase; letter-spacing:0.08em; text-align:center; margin-top:8px;}

  .live-badge{
    display:inline-flex; align-items:center; gap:4px; font-family:'Oswald',sans-serif; font-size:10px;
    font-weight:700; letter-spacing:0.05em; color:#fff; background:var(--red); padding:3px 8px; border-radius:20px;
  }
  .live-dot{width:6px; height:6px; border-radius:50%; background:#fff; animation:live-pulse 1.4s ease-in-out infinite;}
  @keyframes live-pulse{ 0%,100%{opacity:1;} 50%{opacity:0.3;} }

  .marcador-final{
    font-family:'Oswald',sans-serif; font-weight:700; font-size:18px; color:var(--ink);
    background:var(--bg4); border-radius:9px; padding:6px 10px; text-align:center; min-width:56px;
  }
  .partido-fecha{font-size:10.5px; color:var(--ink-soft); text-align:center; margin-top:2px;}

  .liga-table-wrap{overflow-x:auto;}
  .liga-table{width:100%; border-collapse:collapse; font-size:12.5px;}
  .liga-table th{white-space:nowrap; text-align:center; padding:6px 6px; font-size:10px;}
  .liga-table th:first-child, .liga-table td:first-child{text-align:left; padding-left:2px;}
  .liga-table td{white-space:nowrap; text-align:center; padding:7px 6px;}
  .liga-table tr.liguilla td{background:var(--gold-soft);}
  .liga-table tr.liguilla td:first-child{border-radius:8px 0 0 8px;}
  .liga-table tr.liguilla td:last-child{border-radius:0 8px 8px 0;}
  .liga-team-cell{display:flex; align-items:center; gap:8px;}
  .liga-pts{font-weight:700; color:var(--gold-text);}
  .liga-updated{font-size:11px; color:var(--ink-soft); text-align:center; margin-top:10px;}

  .guia-step{display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--border);}
  .guia-step:last-child{border-bottom:none;}
  .guia-step-num{
    width:30px; height:30px; border-radius:50%; background:var(--bg4); border:1.5px solid var(--border);
    display:flex; align-items:center; justify-content:center; font-family:'Oswald',sans-serif; font-weight:700;
    font-size:13px; color:var(--gold-text); flex-shrink:0;
  }
  .guia-step-title{font-family:'Oswald',sans-serif; font-weight:600; font-size:13.5px; text-transform:uppercase; letter-spacing:0.02em; color:var(--ink);}
  .guia-step-desc{font-size:12.5px; color:var(--ink-soft); margin-top:3px; line-height:1.5;}

  .guia-rule-row{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--border);}
  .guia-rule-row:last-child{border-bottom:none;}
  .guia-rule-label{font-size:13px; color:var(--ink); max-width:34ch;}
  .guia-rule-points{font-family:'Oswald',sans-serif; font-weight:700; color:var(--gold-text); font-size:16px; flex-shrink:0; white-space:nowrap;}

  .guia-tab-row{display:flex; gap:10px; align-items:flex-start; padding:10px 0; border-bottom:1px solid var(--border);}
  .guia-tab-row:last-child{border-bottom:none;}
  .guia-tab-icon{
    width:30px; height:30px; border-radius:8px; background:var(--gold-soft); flex-shrink:0;
    display:flex; align-items:center; justify-content:center;
  }
  .guia-tab-icon svg{width:16px; height:16px; stroke:var(--gold-text); fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
  .guia-tab-name{font-family:'Oswald',sans-serif; font-weight:600; font-size:13px; text-transform:uppercase; letter-spacing:0.02em; color:var(--ink);}
  .guia-tab-desc{font-size:12px; color:var(--ink-soft); margin-top:2px; line-height:1.45;}

  .guia-lineup{display:flex; gap:14px; flex-wrap:wrap; justify-content:center; padding:6px 0 4px;}
  .guia-player{display:flex; flex-direction:column; align-items:center; gap:6px; width:64px;}
  .guia-player-name{font-size:11.5px; font-weight:600; color:var(--ink-soft);}
