/* =====================================================================
   A ficha de uma Sentinela (src/ui/sentinela-ficha.js, 17/10)
   Abre por cima do Chamado e de Minhas Sentinelas. Leve de propósito: nada anima,
   nada desfoca (o autor achou as telas das Sentinelas "com lag" no Android).
   Celular: ocupa a tela, o ✕ fica sempre à vista e o meio rola.
   Letras em calc(Npx * var(--text-scale,1)): o texto de Opções (100–130%).
   ===================================================================== */
.sfh-fundo{position:fixed;inset:0;z-index:1500;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(3,5,9,.82)}
.sfh-fundo.hidden{display:none}
.sfh-ficha{--sfh-el:var(--snt-el,#f2d27a);width:min(560px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;
  border:1px solid #4a3a18;border-radius:16px;background:linear-gradient(180deg,#121a28,#0a0f18);color:#e8eef7;box-shadow:0 24px 60px rgba(0,0,0,.65)}
@supports (height:100dvh){.sfh-ficha{max-height:calc(100dvh - 32px)}}
.sfh-cab{flex:0 0 auto;display:flex;align-items:flex-start;gap:12px;padding:12px 12px 12px 12px;border-bottom:1px solid rgba(246,213,138,.16);
  background:radial-gradient(80% 120% at 0% 100%,color-mix(in srgb,var(--sfh-el) 22%,transparent),transparent 70%),linear-gradient(180deg,#161e2e,#0e1420)}
.sfh-arte{position:relative;flex:0 0 auto;display:grid;place-items:center;width:96px;height:96px;border-radius:12px;overflow:hidden;border:1px solid color-mix(in srgb,var(--sfh-el) 60%,#000);
  background:radial-gradient(circle at 50% 60%,var(--snt-el2,#3a2a10),#0b0c12 80%)}
.sfh-arte img{width:100%;height:100%;object-fit:contain;display:block}
.sfh-arte.sem-arte::after{content:attr(data-inicial);font-family:"Cinzel",var(--font-display,Georgia),serif;font-weight:900;font-size:calc(40px * var(--text-scale,1));color:var(--sfh-el)}
.sfh-quem{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.sfh-tipo{font-size:calc(10px * var(--text-scale,1));font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--sfh-el)}
.sfh-quem h2{margin:0;font-family:"Cinzel",var(--font-display,Georgia),serif;font-weight:900;font-size:calc(22px * var(--text-scale,1));line-height:1.1;letter-spacing:.04em;color:#fff4d4;overflow-wrap:anywhere}
.sfh-titulo{font-family:"Cinzel",var(--font-display,Georgia),serif;font-weight:700;font-size:calc(13px * var(--text-scale,1));color:#e9cf8f;overflow-wrap:anywhere}
.sfh-lugar{margin-top:4px;font-size:calc(11.5px * var(--text-scale,1));line-height:1.35;color:#b9c2d3;overflow-wrap:anywhere}
.sfh-lugar b{display:inline-block;margin-right:4px;padding:0 7px;border-radius:999px;background:#0b111b;border:1px solid var(--sfh-el);color:var(--sfh-el);font-size:calc(10px * var(--text-scale,1));letter-spacing:.08em;text-transform:uppercase}
.sfh-fechar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:36px;min-width:36px;height:36px;margin:0;padding:0;border-radius:8px;border:1px solid #2a3650;background:#1a2232;color:#e8eef7;font-size:calc(16px * var(--text-scale,1));cursor:var(--cur-mao,pointer)}
.sfh-corpo{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:12px;display:flex;flex-direction:column;gap:12px}
.sfh-bloco{display:flex;flex-direction:column;gap:8px;min-width:0}
.sfh-bloco h3{margin:0;display:flex;align-items:center;gap:8px;font-size:calc(10.5px * var(--text-scale,1));font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#e0ad4c}
.sfh-selo{font-style:normal;padding:1px 8px;border-radius:999px;background:var(--sfh-el);color:#111;font-size:calc(9.5px * var(--text-scale,1));letter-spacing:.06em}
.sfh-lei,.sfh-mini{margin:0;font-size:calc(11.5px * var(--text-scale,1));line-height:1.45;color:#97a6bd;overflow-wrap:anywhere}
.sfh-lei{color:#d8dde7;font-size:calc(12.5px * var(--text-scale,1))}
.sfh-nao-tem{margin:0;padding:8px 10px;border:1px dashed #3a4258;border-radius:10px;color:#97a6bd;font-size:calc(12px * var(--text-scale,1))}
.sfh-num,.sfh-tetos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.sfh-num span,.sfh-tetos span{display:flex;flex-direction:column;gap:1px;min-width:0;padding:6px 8px;border-radius:10px;background:#0e1420;border:1px solid #2c3852}
.sfh-num small,.sfh-tetos small{font-size:calc(10px * var(--text-scale,1));color:#6a778d;text-transform:uppercase;letter-spacing:.08em;overflow-wrap:anywhere}
.sfh-num b,.sfh-tetos b{font-size:calc(14px * var(--text-scale,1));font-weight:900;color:#fff3d6;overflow-wrap:anywhere}
.sfh-partes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px}
.sfh-partes li{display:flex;justify-content:space-between;gap:6px;font-size:calc(11.5px * var(--text-scale,1));color:#cfd5e0;border-bottom:1px solid #1c2434;padding:2px 0}
.sfh-partes b{color:#f6d58a}
.sfh-sks{display:flex;flex-direction:column;gap:6px}
.sfh-sk{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:10px;background:#0e1420;border:1px solid #2c3852;min-width:0}
.sfh-sk.fechada{opacity:.7}
.sfh-sk.sfh-trunfo{border-color:#a8701a;background:linear-gradient(135deg,#2a2112,#0e1420 70%)}
.sfh-tru-ic{display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;color:#f3c35b;text-shadow:0 0 8px rgba(243,195,91,.55)}
.sfh-trunfo .sfh-sk-t small{color:#e5ad4e}
.sfh-sk-ic{flex:0 0 auto;width:30px;height:30px;object-fit:contain}
.sfh-sk-t{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 auto}
/* a 1ª linha da skill: nome + nível à esquerda, "Habilidade · a cada 8 s" à direita (quebra para baixo se não couber) */
.sfh-sk-l1{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 8px;min-width:0}
.sfh-sk-t small{font-size:calc(9.5px * var(--text-scale,1));font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#6a778d}
.sfh-sk-t b{font-size:calc(13.5px * var(--text-scale,1));color:#fff3d6;overflow-wrap:anywhere}
.sfh-nv{margin-left:6px;font-size:calc(11px * var(--text-scale,1));font-weight:800;color:#e0ad4c}
.sfh-sk-faz,.sfh-sk-num{margin:2px 0 0;font-size:calc(12px * var(--text-scale,1));line-height:1.35;color:#d8dde7;overflow-wrap:anywhere}
.sfh-sk-num{color:#86f2bf;font-weight:700}
/* "A sua" numa linha */
.sfh-minha{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:calc(12px * var(--text-scale,1));color:#cfd5e0}
.sfh-minha>b{font-size:calc(10.5px * var(--text-scale,1));font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#e0ad4c}
.sfh-minha>span{padding:2px 8px;border-radius:999px;background:#0e1420;border:1px solid #2c3852;color:#fff3d6;font-weight:700}
/* "Ver detalhes": fechado ao abrir; força, graus, Frenesi e o teste */
.sfh-det{border:1px solid #2c3852;border-radius:10px;background:#0b111b}
.sfh-det>summary{cursor:var(--cur-mao,pointer);list-style:none;padding:8px 10px;font-size:calc(11px * var(--text-scale,1));font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#e0ad4c}
.sfh-det>summary::-webkit-details-marker{display:none}
.sfh-det>summary::before{content:"▸";display:inline-block;margin-right:6px;transition:none}
.sfh-det[open]>summary::before{content:"▾"}
.sfh-det:not([open]) .sfh-det-corpo{display:none}
.sfh-det-corpo{display:flex;flex-direction:column;gap:12px;padding:0 10px 10px}
.sfh-teste{margin-top:2px}
.sfh-tab{width:100%;border-collapse:collapse;font-size:calc(12px * var(--text-scale,1))}
.sfh-tab th{font-size:calc(9.5px * var(--text-scale,1));font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#6a778d;text-align:left;padding:3px 4px;border-bottom:1px solid #2c3852}
.sfh-tab td{padding:5px 4px;border-bottom:1px solid #1c2434;color:#cfd5e0;font-variant-numeric:tabular-nums}
.sfh-tab th:not(:first-child),.sfh-tab td:not(:first-child){text-align:right}
.sfh-tab tr.g-lendario td:first-child{color:#c9a7ff}
.sfh-tab tr.g-extremo td:first-child{color:#ff9a6b}
.sfh-tab tr.atual td{background:rgba(226,176,74,.12);color:#fff3d6;font-weight:800}

/* o que abre a ficha: o cursor e o "i" ao lado do nome */
.snt-nome-linha{display:flex;align-items:center;justify-content:center;min-width:0}
.snt-nome-linha .snt-nome-quem{min-width:0}
.snt-nome-linha .snt-ficha-i{flex:0 0 auto}
.snt-portal[data-snt="ficha"],.snt-nome[data-snt="ficha"],.stc-corpo-arte[data-stc="ficha"]{cursor:var(--cur-mao,pointer)}
.snt-ficha-i,.stc-ficha-i{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;min-width:0;min-height:0;margin:0 0 0 6px;padding:0;vertical-align:middle;border-radius:50%;
  border:1px solid currentColor;background:rgba(0,0,0,.35);color:#f6d58a;font:italic 900 calc(12px * var(--text-scale,1))/1 Georgia,serif;letter-spacing:0;text-transform:none;cursor:var(--cur-mao,pointer);box-shadow:none}
/* o "i" vem do CSS (o texto do nome fica só o nome, para quem lê a tela e para os testes) */
.snt-ficha-i::before,.stc-ficha-i::before{content:"i"}

@media (max-width:760px),(orientation:landscape) and (max-height:500px){
  .sfh-fundo{padding:0;align-items:stretch}
  .sfh-ficha{width:100%;max-height:none;height:100%;border-radius:0;border-left:0;border-right:0}
  .sfh-arte{width:76px;height:76px}
  .sfh-quem h2{font-size:calc(19px * var(--text-scale,1))}
  .sfh-corpo{gap:10px}
  .sfh-sk{padding:7px 8px;gap:8px}
  .sfh-sk-ic{width:26px;height:26px}
}
@media (max-width:380px){
  .sfh-num,.sfh-tetos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sfh-cab{gap:8px;padding:10px 8px}
  .sfh-corpo{padding:10px 8px}
}
