/* legado corpo, linha 21176 do index.html original.
   Gerado pelo divisor. Nao editar a mao: quando esta tela
   for remodelada, este arquivo some inteiro. */

.sb-slot-out { border-color:#ff4757 !important; box-shadow:0 0 0 2px rgba(255,71,87,.55), 0 0 16px rgba(255,71,87,.45) !important; }
.sb-slot-warn { position:absolute; top:-9px; left:50%; transform:translateX(-50%); font-size:0.8rem; z-index:4; filter:drop-shadow(0 1px 2px #000); pointer-events:none; }
.sb-report-warn { background:rgba(255,71,87,.1); border:1px solid rgba(255,71,87,.42); border-radius:12px; padding:12px 14px; margin-bottom:18px; text-align:left; }
.sb-warn-ttl { font-family:var(--font-title); color:#ff6b78; font-size:0.95rem; letter-spacing:.5px; margin-bottom:5px; }
.sb-warn-sub { font-family:var(--font-tech); color:#e8a0a8; font-size:0.72rem; line-height:1.45; margin-bottom:7px; }
.sb-warn-list { font-family:var(--font-tech); color:#dfe6ee; font-size:0.8rem; line-height:1.6; }
.sb-warn-list b { color:#fff; }
.sb-forms { max-height:132px; overflow-y:auto; }
.sb-slot-emptypos { font-family:var(--font-title); font-size:1rem; letter-spacing:.5px; color:#e8f2ee; text-shadow:0 1px 4px #000; }
.sb-slot-sel { border-color:var(--gold) !important; box-shadow:0 0 0 2px var(--gold), 0 0 16px rgba(255,207,63,.6) !important; z-index:6; }
/* Segurar a carta abre a ficha — sem isso o Android/iOS entende como selecionar texto
   e sobe o menu de copiar no meio do gesto. */
.sb-slot { -webkit-touch-callout:none; -webkit-user-select:none; user-select:none; }
.sb-pitch-hint { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; font-family:var(--font-tech); color:#88ffaa; opacity:.75; font-size:0.95rem; line-height:1.8; pointer-events:none; padding:0 20px; }
.sb-pitch-hint b { color:var(--gold); }
.sb-form-select { width:100%; font-family:var(--font-title); font-size:1.08rem; letter-spacing:1px; color:#e8f2ee; background:linear-gradient(135deg,rgba(0,242,255,0.12),rgba(0,242,255,0.04)); border:1px solid var(--glass-border); border-radius:12px; padding:13px 16px; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:8px; transition:.15s; }
.sb-form-select:hover { border-color:var(--gold); box-shadow:0 0 20px rgba(255,207,63,.15); }
.sb-fs-caret { opacity:.55; font-size:.8rem; }
.sb-form-modal { position:fixed; inset:0; z-index:900; display:none; align-items:center; justify-content:center; background:rgba(0,0,0,.72); backdrop-filter:blur(4px); padding:16px; }
.sb-form-modal.open { display:flex; }
.sb-form-box { width:100%; max-width:560px; max-height:82vh; display:flex; flex-direction:column; background:#0e1219; border:1px solid var(--glass-border); border-radius:16px; overflow:hidden; }
.sb-form-head { display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-bottom:1px solid var(--glass-border); font-family:var(--font-title); color:var(--text-color); letter-spacing:1px; }
.sb-form-grid { overflow-y:auto; padding:14px; display:grid; grid-template-columns:repeat(auto-fill,minmax(118px,1fr)); gap:8px; }
.sb-form-opt { font-family:var(--font-tech); font-size:0.8rem; font-weight:700; letter-spacing:.3px; color:#c7cfda; background:rgba(255,255,255,.04); border:1px solid var(--glass-border); border-radius:9px; padding:11px 8px; cursor:pointer; transition:.12s; }
.sb-form-opt:hover { background:rgba(255,207,63,.12); border-color:var(--gold); color:#fff; }
.sb-form-opt.active { background:var(--gold); border-color:var(--gold); color:#1a1400; }

/* ═══ SQUAD BUILDER · ações do painel (salvar · meus times · código · exportar) ═══ */
.sb-acts { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:10px; }
.sb-act { display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; padding:9px 6px;
    font-family:var(--font-tech); font-weight:700; font-size:0.7rem; letter-spacing:1px; color:#c7cfda;
    background:rgba(255,255,255,.04); border:1px solid var(--glass-border); border-radius:9px; cursor:pointer; transition:.14s; }
.sb-act span { font-size:0.95rem; line-height:1; }
.sb-act b { color:var(--gold); font-size:0.7rem; margin-left:3px; }
.sb-act:hover { color:#fff; border-color:var(--gold); background:rgba(255,207,63,.1); }
.sb-act-wide { grid-column:1 / -1; }
.sb-tip { font-family:var(--font-tech); color:#7d8695; font-size:0.7rem; line-height:1.5; margin:11px 0 0; text-align:center; }

/* Chip amarelo da logo BONOXS (a arte é escura, precisa do fundo claro atrás) */
.sb-ylw { background:linear-gradient(135deg,#ffe600,#ffd200); border-radius:6px; padding:4px 7px; display:inline-flex; flex-shrink:0; }
.sb-ylw img { height:10px; width:auto; display:block; }

/* Patrocínio discreto no pé do painel — texto ao lado, nunca por cima de carta */
.sb-spon { display:flex; align-items:center; gap:9px; margin-top:16px; padding-top:13px; border-top:1px solid var(--glass-border); }
.sb-spon-txt { flex:1; min-width:0; font-family:var(--font-tech); font-size:0.66rem; letter-spacing:1.2px; color:#8b93a3; text-transform:uppercase; }
.sb-spon-txt b { color:#ffe600; letter-spacing:1.6px; }
.sb-spon-copy { background:none; border:1px solid rgba(255,214,0,.4); border-radius:7px; color:#ffe600; font-size:.78rem;
    padding:0 9px; min-height:32px; cursor:pointer; transition:.14s; flex-shrink:0; }
.sb-spon-copy:hover { background:rgba(255,230,0,.14); }

/* Ações dentro do relatório — é o momento em que o time acabou de ganhar nota */
.sb-report-acts { display:flex; gap:8px; margin-bottom:20px; }
.sb-ract { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:54px;
    font-family:var(--font-tech); font-weight:700; font-size:0.63rem; letter-spacing:1.2px; color:#c7cfda;
    background:rgba(255,255,255,.04); border:1px solid var(--glass-border); border-radius:10px; cursor:pointer; transition:.14s; }
.sb-ract span { font-size:1.05rem; line-height:1; }
.sb-ract:hover { color:#fff; border-color:var(--gold); background:rgba(255,207,63,.1); }
/* Publi contextual: só entra quando o time custa caro de verdade */
.sb-report-caro { font-family:var(--font-tech); font-size:0.74rem; line-height:1.5; color:#e6dcb4; text-align:left;
    background:rgba(255,214,0,.07); border:1px solid rgba(255,214,0,.26); border-radius:10px; padding:10px 12px; margin-bottom:12px; }
.sb-report-caro b { color:#ffe600; }

/* ═══ MEUS TIMES ═══ · uma linha por time (miniaturas à esquerda, info à direita) */
.sb-times-list { overflow-y:auto; padding:14px 12px 6px; display:flex; flex-direction:column; gap:9px; }
.sb-tm { display:flex; flex-direction:column; gap:10px; background:rgba(255,255,255,.03);
    border:1px solid var(--glass-border); border-radius:12px; padding:11px 12px; }
.sb-tm-top { display:flex; align-items:center; gap:11px; }
.sb-tm-thumbs { display:flex; flex-shrink:0; }
.sb-tm-thumbs img { width:27px; height:36px; object-fit:cover; object-position:center top; border-radius:4px;
    background:#05070d; box-shadow:0 2px 6px rgba(0,0,0,.7); }
.sb-tm-thumbs img + img { margin-left:-10px; }
.sb-tm-info { flex:1; min-width:0; }
.sb-tm-nome { font-family:var(--font-title); color:#fff; font-size:1rem; letter-spacing:.6px;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sb-tm-meta { font-family:var(--font-tech); color:#8b93a3; font-size:0.68rem; letter-spacing:.4px; margin-top:3px; }
.sb-tm-ger { font-family:var(--font-title); color:var(--gold); font-size:1.5rem; line-height:1; flex-shrink:0; }
.sb-tm-ger small { display:block; font-family:var(--font-tech); font-size:0.5rem; letter-spacing:1.5px; color:#7d8695; text-align:center; }
.sb-tm-acts { display:flex; gap:5px; }
.sb-tm-bt { flex:1; min-height:36px; font-family:var(--font-tech); font-weight:700; font-size:0.62rem; letter-spacing:1px;
    color:#9aa3b2; background:rgba(255,255,255,.04); border:1px solid var(--glass-border); border-radius:8px; cursor:pointer; transition:.14s; }
.sb-tm-bt:hover { color:#fff; border-color:var(--gold); }
.sb-tm-bt.on { color:#1a1400; background:var(--gold); border-color:var(--gold); }
.sb-tm-bt.on:hover { filter:brightness(1.07); }
.sb-tm-bt.del:hover { color:#fff; background:var(--danger); border-color:var(--danger); }
.sb-times-foot { display:flex; align-items:center; gap:10px; padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));
    border-top:1px solid var(--glass-border); }
.sb-times-foot span:last-child { font-family:var(--font-tech); font-size:0.64rem; letter-spacing:.6px; color:#7d8695; line-height:1.5; }
.sb-times-foot b { color:#ffe600; }

/* ═══ CÓDIGO DO TIME ═══ */
.sb-code-body { padding:16px 18px calc(20px + env(safe-area-inset-bottom,0px)); }
.sb-code-lbl { font-family:var(--font-tech); color:#8b93a3; font-size:0.64rem; letter-spacing:2.4px; text-align:center; }
.sb-code-val { font-family:var(--font-tech); font-weight:700; color:var(--gold); font-size:0.84rem; letter-spacing:1px;
    word-break:break-all; line-height:1.55; text-align:center; background:rgba(255,207,63,.06);
    border:1px dashed rgba(255,207,63,.42); border-radius:10px; padding:13px 12px; margin:8px 0 12px; }
.sb-code-btns { display:flex; gap:8px; }
.sb-code-bt { flex:1; min-height:46px; font-family:var(--font-tech); font-weight:800; font-size:0.72rem; letter-spacing:1px;
    color:#c7cfda; background:rgba(255,255,255,.04); border:1px solid var(--glass-border); border-radius:10px; cursor:pointer; transition:.14s; }
.sb-code-bt.on { color:#1a1400; background:linear-gradient(135deg,#ffe600,#ffd200); border-color:transparent; }
.sb-code-bt:hover { border-color:var(--gold); filter:brightness(1.06); }
.sb-code-sep { text-align:center; font-family:var(--font-tech); color:#6f7887; font-size:0.64rem; letter-spacing:2.2px;
    text-transform:uppercase; margin:20px 0 10px; }
#sb-code-in { width:100%; box-sizing:border-box; padding:12px 14px; background:rgba(255,255,255,.05);
    border:1px solid var(--glass-border); border-radius:9px; color:#fff; font-family:var(--font-tech); font-size:0.9rem; outline:none; }
#sb-code-in:focus { border-color:var(--gold); }
.sb-code-load { width:100%; margin-top:9px; min-height:46px; font-family:var(--font-title); font-size:0.95rem; letter-spacing:1.5px;
    color:#e8f2ee; background:rgba(0,242,255,.07); border:1px solid var(--glass-border); border-radius:10px; cursor:pointer; transition:.14s; }
.sb-code-load:hover { border-color:var(--text-color); color:#fff; }
.sb-code-note { font-family:var(--font-tech); font-size:0.7rem; line-height:1.5; color:#8b93a3; margin-top:11px; text-align:center; }
.sb-code-note.err { color:#ff8a94; }
.sb-code-note.ok  { color:#3ff29a; }

/* ═══ caixinha de perguntar (nome / confirmar) ═══ */
.sb-ask-box { width:100%; max-width:340px; background:#0e1219; border:1px solid var(--glass-border);
    border-radius:16px; padding:22px 20px; text-align:center; box-shadow:0 30px 70px rgba(0,0,0,.75); }
.sb-ask-ttl { font-family:var(--font-title); color:#fff; font-size:1.12rem; letter-spacing:1px; }
.sb-ask-msg { font-family:var(--font-tech); color:#8b93a3; font-size:0.79rem; line-height:1.5; margin-top:8px; }
#sb-ask-in { width:100%; box-sizing:border-box; margin-top:15px; padding:12px 14px; background:rgba(255,255,255,.05);
    border:1px solid var(--glass-border); border-radius:9px; color:#fff; font-family:var(--font-tech);
    font-size:0.95rem; text-align:center; outline:none; }
#sb-ask-in:focus { border-color:var(--gold); }
.sb-ask-btns { display:flex; gap:9px; margin-top:17px; }
.sb-ask-no, .sb-ask-ok { flex:1; min-height:46px; font-family:var(--font-tech); font-weight:800;
    font-size:0.76rem; letter-spacing:1.2px; border-radius:10px; cursor:pointer; transition:.14s; }
.sb-ask-no { color:#8b93a3; background:none; border:1px solid var(--glass-border); }
.sb-ask-no:hover { color:#fff; border-color:#8b93a3; }
.sb-ask-ok { color:#1a1400; background:var(--gold); border:none; }
.sb-ask-ok.del { color:#fff; background:var(--danger); }
.sb-ask-ok:hover { filter:brightness(1.08); }

/* Faixa "time de um amigo" — some sozinha quando o Boss mexe no time */
.sb-guest { display:flex; align-items:center; gap:10px; margin-bottom:14px; padding:11px 14px; border-radius:12px;
    background:rgba(0,242,255,.07); border:1px solid rgba(0,242,255,.28); }
.sb-guest-txt { flex:1; min-width:0; font-family:var(--font-tech); font-size:0.74rem; line-height:1.45; color:#bfe9f2; }
.sb-guest-txt b { color:var(--text-color); }
.sb-guest-x { background:none; border:none; color:#7d8695; font-size:1rem; cursor:pointer; min-height:34px; padding:0 4px; }
.sb-guest-x:hover { color:#fff; }
