/* GBR Racing Lab 5.5.7 — favoritos independentes, responsivos e acessíveis. */
.fav-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px;flex-wrap:wrap}
.fav-head h1{margin:5px 0 10px}.fav-head p{max-width:660px;color:#aebbc1;font-size:13px;line-height:1.55;margin:0}
.fav-head-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.fav-counter{display:block;color:#45e3d5;font:800 22px 'Barlow Condensed',sans-serif}
.fav-head-actions .btn:disabled{opacity:.48;cursor:not-allowed}
.fav-note{font-size:11px;color:#aebdc0;line-height:1.5;margin:13px 0}
.fav-feedback{min-height:20px;color:#60dfc7;font-size:12px}
.fav-grid{display:grid;gap:14px}.fav-record{border:1px solid #2e4c4b;background:linear-gradient(155deg,#172127,#12171e);border-radius:13px;padding:20px;overflow:hidden}
.fav-record-top{display:flex;gap:16px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.fav-record h3{font:800 26px 'Barlow Condensed',sans-serif;color:#eef8f8;margin:6px 0}.fav-record small{color:#95a9ac;font-size:11px}
.fav-record-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.fav-record-actions .btn{font-size:10px;padding:9px 11px;white-space:nowrap}
.fav-delete{border:1px solid #78505b;border-radius:7px;background:transparent;color:#ffabb0;padding:7px 12px;cursor:pointer;font-size:20px}
.fav-delete:hover{background:#57262d}
.fav-detail{border-top:1px solid #314348;margin-top:15px;padding-top:15px}.fav-detail[hidden]{display:none}
.fav-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fav-metrics>div{border:1px solid #32474b;background:#0d1d22;border-radius:9px;padding:12px}
.fav-metrics small{display:block;font-size:10px}.fav-metrics strong{font:800 29px 'Barlow Condensed',sans-serif;color:#f4fffc}
.fav-pit{font-size:11px;color:#a5b9b9;margin:10px 0}.fav-record-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.fav-item{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid #2c3c43;background:#102026;border-radius:9px}
.fav-item-label{font-size:9px;text-transform:uppercase;color:#59d3c1;min-width:77px;max-width:95px}.fav-card-thumb{flex-shrink:0}.fav-item-text{min-width:0}.fav-item-text b{display:block;font-size:12px;overflow-wrap:anywhere}.fav-item-text small{display:block;margin-top:5px}
.fav-memo{background:#162b2c;border-radius:9px;padding:12px;color:#d0e6e1;font-size:12px;overflow-wrap:anywhere}
.fav-empty{padding:30px;text-align:center;border:1px dashed #396760;border-radius:13px;color:#d4efeb}.fav-empty strong{font:800 22px 'Barlow Condensed',sans-serif}.fav-empty p{font-size:12px;color:#a0b5b7}
.fav-editor{margin-top:20px;padding:20px;border:1px solid #246c62;background:#101d22;border-radius:14px}
.fav-editor[hidden]{display:none}.fav-editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.fav-editor-head h2{margin:6px 0}.fav-editor-head p{font-size:12px;color:#a4bbbb}
.fav-form-meta,.fav-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fav-field{display:flex;flex-direction:column;min-width:0;gap:7px;margin-bottom:11px}.fav-field span{font-size:10px;color:#a7c6c2;font-weight:800;letter-spacing:.5px;text-transform:uppercase}
.fav-field span em{font-size:9px;color:#96aaac;font-weight:400;font-style:normal;letter-spacing:0}
.fav-field input,.fav-field select,.fav-field textarea{width:100%;min-width:0;color:#eef7f7;background:#0b171d;border:1px solid #33565a;border-radius:8px;padding:12px 11px;font:500 13px system-ui,sans-serif}
.fav-field input:focus,.fav-field select:focus,.fav-field textarea:focus{outline:2px solid #00d2be;outline-offset:1px}
.fav-field textarea{resize:vertical}.fav-block-title{margin:17px 0 12px;padding-bottom:9px;border-bottom:1px solid #2f4c4b;font-weight:800;color:#17dbc7;font-size:12px;letter-spacing:1px}.fav-block-title small{font-weight:400;letter-spacing:0;color:#9eb9b7;margin-left:6px}
.fav-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}.fav-error{font-size:12px;color:#ffb1ac}
@media(max-width:900px){.fav-record-items{grid-template-columns:1fr}.fav-item-label{min-width:70px}}
@media(max-width:600px){.fav-head-actions{align-items:stretch;width:100%}.fav-head-actions .btn{width:100%}.fav-record{padding:13px}.fav-record-actions{width:100%;justify-content:flex-start}.fav-record-actions .btn{flex:1}.fav-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.fav-form-meta,.fav-fields{grid-template-columns:1fr}.fav-editor{padding:13px}.fav-item{gap:8px}.fav-item-text b{font-size:11px}}


/* 5.5.8 — vitrine de favoritos dentro da garagem */
.fav-spot-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}
.fav-spot-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fav-spot-count{display:inline-flex;align-items:center;justify-content:center;min-width:68px;padding:10px 12px;border-radius:999px;background:#13252b;border:1px solid #2f5a5a;color:#dff8f5;font:800 13px system-ui,sans-serif}
.fav-spot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.fav-spot-card{border:1px solid #2e5055;border-radius:14px;background:linear-gradient(180deg,rgba(10,30,36,.96),rgba(8,18,24,.94));padding:14px;display:flex;flex-direction:column;gap:12px}
.fav-spot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.fav-spot-top h3{margin:4px 0 0;font:800 22px 'Barlow Condensed',sans-serif;line-height:1}
.fav-spot-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fav-spot-metrics div{border:1px solid #25444a;border-radius:10px;padding:8px 9px;background:#112127}.fav-spot-metrics small{display:block;color:#8fb8b2;font-size:10px;text-transform:uppercase;letter-spacing:.4px}.fav-spot-metrics strong{display:block;margin-top:4px;font-size:18px;color:#fff}
.fav-spot-drivers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fav-spot-driver{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:10px;background:#13242a;border:1px solid #26464b}.fav-spot-driver .card-art-thumb{width:36px;height:36px;min-width:36px}.fav-spot-driver span{font-size:12px;font-weight:700;color:#ebf3f4;overflow-wrap:anywhere}
.fav-spot-empty{margin-top:16px}
@media(max-width:1000px){.fav-spot-grid{grid-template-columns:1fr}.fav-spot-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.fav-spot-actions{width:100%}.fav-spot-actions .btn{flex:1}.fav-spot-top{flex-direction:column}.fav-spot-top .btn{width:100%}.fav-spot-drivers{grid-template-columns:1fr}}

/* 5.5.9 — visual premium dos setups favoritos */
.fav-grid{display:block}
.fav-premium-stage{display:flex;flex-direction:column;gap:16px;padding:18px;border-radius:20px;border:1px solid rgba(74,116,125,.45);background:linear-gradient(180deg,rgba(15,30,38,.97),rgba(8,16,22,.96));box-shadow:0 18px 44px rgba(0,0,0,.28)}
.fav-premium-summary{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
.fav-premium-slots-wrap{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
.fav-premium-slots-label{font:800 12px system-ui,sans-serif;letter-spacing:.08em;color:#9ebfbe;text-transform:uppercase}
.fav-premium-slots{display:flex;gap:10px;flex-wrap:wrap}
.fav-slot{width:56px;height:56px;border-radius:16px;border:1px solid #506b76;background:#243140;color:#eef5f7;font:900 28px 'Barlow Condensed',sans-serif;cursor:pointer;transition:.18s transform,.18s border-color,.18s background,.18s box-shadow}
.fav-slot:hover{transform:translateY(-1px);border-color:#86fbec}
.fav-slot.active{background:linear-gradient(180deg,#ff4a4a,#db2d31);border-color:#ff8888;color:#fff;box-shadow:0 10px 20px rgba(217,49,56,.25)}
.fav-slot span{display:block;line-height:1}
.fav-premium-score{min-width:220px;border-radius:18px;padding:14px 18px;border:1px solid rgba(141,166,208,.25);background:linear-gradient(180deg,rgba(95,107,170,.82),rgba(73,82,131,.84));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.fav-premium-score small{display:block;color:#e4e9fb;font:800 12px system-ui,sans-serif;letter-spacing:.06em}
.fav-premium-score strong{display:block;margin-top:6px;font:900 42px/1 'Barlow Condensed',sans-serif;color:#fff}
.fav-premium-banner{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:18px;align-items:center;padding:20px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(197,204,233,.12),rgba(243,246,255,.08));overflow:hidden}
.fav-premium-banner::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 78% 22%,rgba(0,210,190,.22),transparent 38%),linear-gradient(125deg,transparent 0 28%,rgba(255,255,255,.06) 28% 38%,transparent 38% 54%,rgba(173,105,255,.14) 54% 62%,transparent 62%)}
.fav-premium-banner-copy,.fav-premium-banner-art{position:relative;z-index:1}
.fav-premium-kicker{font:800 12px system-ui,sans-serif;letter-spacing:.08em;color:#7de8d6;text-transform:uppercase}
.fav-premium-banner h2{margin:6px 0 10px;font:900 46px/0.95 'Barlow Condensed',sans-serif;color:#fff;text-transform:uppercase}
.fav-premium-banner p{margin:0;color:#d7e4e7;max-width:54ch}
.fav-premium-banner-art{min-height:140px;display:flex;align-items:flex-end;justify-content:center;color:#070e13}
.fav-premium-car-mark{position:absolute;left:12px;top:6px;font:900 44px/0.9 'Barlow Condensed',sans-serif;letter-spacing:.04em;color:rgba(255,255,255,.08);pointer-events:none}
.fav-premium-car-svg{width:100%;max-width:420px;color:#111b23;filter:drop-shadow(0 14px 18px rgba(0,0,0,.3))}
.fav-premium-actions{display:flex;gap:10px;flex-wrap:wrap}
.fav-delete-text{border-color:#6d4344;color:#ffc9c6}
.fav-premium-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.fav-premium-card,.fav-premium-driver{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:18px;border:1px solid rgba(125,149,173,.18);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))}
.fav-premium-driver{background:linear-gradient(180deg,rgba(28,47,58,.95),rgba(13,26,33,.95))}
.fav-premium-driver.empty{opacity:.75}
.fav-premium-badge{display:inline-flex;align-self:flex-start;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);font:800 11px system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#dfeff0}
.fav-premium-photo{display:flex;align-items:center;justify-content:center;min-height:150px;border-radius:16px;background:linear-gradient(135deg,#ca42ff 0%,#7b3cff 35%,#10c8f5 100%);padding:10px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.fav-premium-part:nth-child(1) .fav-premium-photo,.fav-premium-part:nth-child(2) .fav-premium-photo,.fav-premium-part:nth-child(3) .fav-premium-photo,.fav-premium-part:nth-child(4) .fav-premium-photo{background:linear-gradient(135deg,#af54ff 0%,#7d35d9 58%,#ff5de4 100%)}
.fav-premium-photo .gbr-card-thumb{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.fav-premium-photo .gbr-card-thumb img{max-width:100%;max-height:128px;object-fit:contain;filter:drop-shadow(0 14px 16px rgba(0,0,0,.28))}
.fav-premium-photo .gbr-card-thumb.has-photo .gbr-thumb-placeholder{display:none}
.fav-premium-photo .gbr-thumb-placeholder{font-size:54px;color:rgba(255,255,255,.54)}
.fav-premium-name{font:800 18px/1.05 'Barlow Condensed',sans-serif;color:#fff;min-height:38px}
.fav-premium-meta{display:flex;gap:8px;flex-wrap:wrap}
.fav-premium-meta span{padding:5px 8px;border-radius:10px;background:rgba(0,0,0,.22);font:700 11px system-ui,sans-serif;color:#eef8ff}
.fav-premium-driver-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.fav-premium-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fav-premium-stat{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-radius:14px;background:linear-gradient(180deg,#555782,#42486e);border:1px solid rgba(210,214,255,.16)}
.fav-premium-stat small{display:block;color:#f0f3ff;font:800 12px system-ui,sans-serif;letter-spacing:.02em}
.fav-premium-stat strong{font:900 28px/1 'Barlow Condensed',sans-serif;color:#fff;white-space:nowrap}
.fav-premium-notes{padding:14px 16px;border-radius:16px;background:#101b22;border:1px solid rgba(96,142,144,.35)}
.fav-premium-notes b{display:block;margin-bottom:6px;color:#84f5e6}.fav-premium-notes p{margin:0;color:#d7e4e7}
.fav-library{margin-top:16px;padding:18px;border-radius:18px;border:1px solid rgba(75,110,117,.38);background:linear-gradient(180deg,rgba(14,27,34,.96),rgba(8,16,23,.94))}
.fav-library-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:14px}.fav-library-head h3{margin:4px 0 0;font:900 28px/1 'Barlow Condensed',sans-serif;color:#fff}.fav-library-total{display:inline-flex;align-items:center;justify-content:center;min-width:82px;padding:10px 12px;border-radius:999px;background:#14252c;border:1px solid #2f5a60;color:#def5f2;font:800 13px system-ui,sans-serif}
.fav-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fav-library-card{padding:14px;border-radius:16px;border:1px solid rgba(72,95,104,.45);background:rgba(255,255,255,.03);cursor:pointer;transition:.18s transform,.18s border-color,.18s background}
.fav-library-card:hover{transform:translateY(-1px);border-color:#7ceadb}.fav-library-card.active{border-color:#62f1e1;background:linear-gradient(180deg,rgba(98,241,225,.1),rgba(98,241,225,.04))}
.fav-library-top{display:flex;align-items:center;gap:12px}.fav-library-top strong{display:block;color:#fff;font-size:16px}.fav-library-top small{display:block;margin-top:2px;color:#99b2b6}.fav-library-index{width:42px;height:42px;border-radius:12px;background:#263441;color:#fff;font:900 25px/42px 'Barlow Condensed',sans-serif;text-align:center;flex:0 0 auto}.fav-library-card.active .fav-library-index{background:linear-gradient(180deg,#ff4a4a,#db2d31)}
.fav-library-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.fav-library-meta span{padding:5px 9px;border-radius:999px;background:#122228;color:#d6efee;font:700 11px system-ui,sans-serif}

@media(max-width:1100px){
 .fav-premium-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .fav-premium-banner{grid-template-columns:1fr}
 .fav-premium-score{min-width:0;width:100%}
}
@media(max-width:820px){
 .fav-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fav-library-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
 .fav-premium-stage{padding:14px;gap:14px}
 .fav-premium-score strong{font-size:34px}
 .fav-premium-banner{padding:16px}
 .fav-premium-banner h2{font-size:36px}
 .fav-premium-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .fav-premium-actions .btn{width:100%}
 .fav-premium-grid,.fav-premium-driver-row,.fav-premium-stats{grid-template-columns:1fr}
 .fav-premium-photo{min-height:132px}
 .fav-slot{width:50px;height:50px;font-size:24px;border-radius:14px}
 .fav-library{padding:14px}
}

/* 5.5.9 finalização — 8 slots, pontuação transparente, seletores acessíveis */
.fav-slot.vacant{border:1px dashed #617d83;background:rgba(255,255,255,.035);color:#65dccc}
.fav-premium-score small:last-child{display:block;margin-top:8px;color:#d0dcee;font-size:10px;max-width:220px;line-height:1.3;letter-spacing:0}
.fav-library-card{text-align:left;appearance:none;-webkit-appearance:none;font-family:inherit;color:inherit;width:100%}
.fav-slot:focus-visible,.fav-library-card:focus-visible{outline:2px solid #00d2be;outline-offset:3px}
@media (max-width:600px){.fav-slot{width:46px;height:46px}.fav-premium-slots{gap:8px}.fav-premium-score{padding:12px 14px}}
/* Garanta que as miniaturas da biblioteca ocupem o espaço do card, sem distorção. */
.fav-premium-photo .gbr-card-thumb{display:flex;width:100%;height:140px;flex:0 0 100%;background:transparent;border:none;border-radius:12px}
.fav-premium-photo .gbr-card-thumb img{position:static;display:block;width:100%;height:100%;max-height:none;max-width:100%;object-fit:contain;z-index:1}
@media(max-width:600px){
 .fav-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .fav-premium-driver-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .fav-premium-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .fav-premium-card,.fav-premium-driver{padding:8px;gap:7px;border-radius:13px;min-width:0}
 .fav-premium-photo{padding:5px;min-height:112px}
 .fav-premium-photo .gbr-card-thumb{height:112px}
 .fav-premium-name{font-size:16px;min-height:32px;overflow-wrap:anywhere}
 .fav-premium-badge{font-size:9px;padding:5px 7px}
 .fav-premium-meta{gap:3px}
 .fav-premium-meta span{font-size:9px;padding:4px 5px}
 .fav-premium-stat{flex-direction:column;align-items:flex-start;gap:8px;min-height:76px;padding:12px}
 .fav-premium-stat strong{font-size:25px}
 .fav-premium-stat small{font-size:11px}
}


/* 5.5.9A — cards compactos na tela de setups (inspirados na grade do jogo).
   Escopo exclusivo do menu favoritos; não altera thumbnails em outras áreas. */
@media (max-width:600px) {
  .fav-premium-stage{padding:10px;gap:11px}
  .fav-premium-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
  }
  .fav-premium-grid .fav-premium-card{
    min-width:0;
    padding:4px;
    gap:4px;
    border-radius:9px;
    overflow:hidden;
  }
  .fav-premium-grid .fav-premium-badge{
    font-size:7px;
    line-height:1.15;
    letter-spacing:0;
    padding:3px 4px;
    max-width:100%;
    overflow-wrap:anywhere;
  }
  .fav-premium-grid .fav-premium-photo{
    min-height:0;
    height:68px;
    padding:2px;
    border-radius:7px;
  }
  .fav-premium-grid .fav-premium-photo .gbr-card-thumb{
    width:100%;
    height:64px;
    flex:0 0 100%;
    border-radius:6px;
  }
  .fav-premium-grid .fav-premium-photo .gbr-card-thumb img{
    height:100%;
    max-height:64px;
    width:100%;
    object-fit:contain;
  }
  .fav-premium-grid .fav-premium-photo .gbr-thumb-placeholder{font-size:23px}
  .fav-premium-grid .fav-premium-name{
    font-size:12px;
    line-height:1.05;
    min-height:26px;
    overflow-wrap:anywhere;
  }
  .fav-premium-grid .fav-premium-meta{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:2px;
  }
  .fav-premium-grid .fav-premium-meta span{
    padding:3px 1px;
    border-radius:4px;
    font-size:8px;
    line-height:1.05;
    text-align:center;
    white-space:nowrap;
  }
  .fav-premium-grid .fav-premium-meta span:last-child{
    grid-column:1/-1;
    overflow:hidden;
    text-overflow:ellipsis;
  }
}
@media (max-width:379px){
  .fav-premium-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .fav-premium-grid .fav-premium-photo{height:76px}
  .fav-premium-grid .fav-premium-photo .gbr-card-thumb{height:72px}
  .fav-premium-grid .fav-premium-photo .gbr-card-thumb img{max-height:72px}
  .fav-premium-grid .fav-premium-name{font-size:13px}
  .fav-premium-grid .fav-premium-badge{font-size:8px}
}
