/*
 * Proyecto Isaías 7.0.0 — GAME EXPERIENCE UI
 * Visual-only skin: no data, permissions, calculations or mechanics are changed.
 * Goal: feel like a polished youth game, not an administrative dashboard.
 */
:root{
  --fjg-bg:#f6f5ff;
  --fjg-surface:#ffffff;
  --fjg-surface-soft:#fbfaff;
  --fjg-ink:#20233a;
  --fjg-muted:#6f748c;
  --fjg-line:#e8e6f1;
  --fjg-purple:#7357e8;
  --fjg-purple-dark:#4f35b6;
  --fjg-purple-soft:#eeeaff;
  --fjg-cyan:#36b9d6;
  --fjg-cyan-soft:#e8f9fc;
  --fjg-lime:#75c96a;
  --fjg-lime-soft:#ecfae9;
  --fjg-gold:#e8ab33;
  --fjg-gold-soft:#fff4d8;
  --fjg-red:#d65b6c;
  --fjg-red-soft:#fff0f3;
  --fjg-shadow:0 12px 32px rgba(50,42,98,.07);
  --fjg-shadow-hover:0 18px 38px rgba(50,42,98,.11);
  --fjg-radius:20px;
}

body.fichajes-game-ui-v700{
  background:
    radial-gradient(circle at 7% 4%,rgba(115,87,232,.09),transparent 27rem),
    radial-gradient(circle at 94% 8%,rgba(54,185,214,.08),transparent 24rem),
    #f6f5ff !important;
}
body.fichajes-game-ui-v700 .fj-game-shell-v700{
  position:relative;
  width:min(1400px,100%);
  margin:0 auto;
  padding:14px 18px 34px;
}
body.fichajes-game-ui-v700 .fj-game-shell-v700:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.24;
  background-image:radial-gradient(rgba(115,87,232,.15) .7px,transparent .7px);
  background-size:18px 18px;
  mask-image:linear-gradient(to bottom,black 0%,rgba(0,0,0,.35) 60%,transparent 100%);
}

/* ---------------- Navigation / game map ---------------- */
body.fichajes-game-ui-v700 .fj-app-shell>.fj-app-sidebar{
  flex-basis:236px !important;
  width:236px !important;
  min-width:236px !important;
  max-width:236px !important;
  border:1px solid rgba(255,255,255,.11) !important;
  border-radius:24px !important;
  background:
    radial-gradient(circle at 90% 4%,rgba(115,87,232,.25),transparent 12rem),
    linear-gradient(160deg,#151735 0%,#171b45 52%,#10152f 100%) !important;
  box-shadow:0 22px 50px rgba(31,25,73,.18) !important;
}
body.fichajes-game-ui-v700 .fj-sidebar-brand{padding:14px 13px 12px !important;border-bottom:1px solid rgba(255,255,255,.08) !important}
body.fichajes-game-ui-v700 .fj-sidebar-brand strong{font-size:14px !important;letter-spacing:-.01em}
body.fichajes-game-ui-v700 .fj-sidebar-brand small{color:rgba(255,255,255,.52) !important}
body.fichajes-game-ui-v700 .fj-sidebar-user{
  margin:10px 10px 4px !important;
  padding:10px !important;
  border-radius:17px !important;
  background:linear-gradient(135deg,rgba(115,87,232,.22),rgba(255,255,255,.055)) !important;
  border:1px solid rgba(255,255,255,.09) !important;
}
body.fichajes-game-ui-v700 .fj-sidebar-user-copy>small{color:#b9b2ee !important}
body.fichajes-game-ui-v700 .fj-sidebar-group{margin-top:12px !important}
body.fichajes-game-ui-v700 .fj-sidebar-group>p{
  padding:6px 9px 5px !important;
  color:rgba(255,255,255,.40) !important;
  font-size:8.5px !important;
  letter-spacing:.13em !important;
}
body.fichajes-game-ui-v700 .fj-sidebar-nav{padding:3px 8px 12px !important;gap:3px !important}
body.fichajes-game-ui-v700 .fj-sidebar-nav a{
  min-height:42px !important;
  padding:9px 10px !important;
  border-radius:13px !important;
  color:rgba(255,255,255,.72) !important;
  gap:9px !important;
  font-size:12px !important;
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease !important;
}
body.fichajes-game-ui-v700 .fj-sidebar-nav a .dashicons{color:#aaa3ec !important;width:19px !important;height:19px !important;font-size:19px !important}
body.fichajes-game-ui-v700 .fj-sidebar-nav a:hover{
  color:#fff !important;
  background:rgba(255,255,255,.075) !important;
  transform:translateX(3px) !important;
}
body.fichajes-game-ui-v700 .fj-sidebar-nav a.is-active{
  color:#fff !important;
  background:linear-gradient(100deg,rgba(115,87,232,.50),rgba(54,185,214,.12)) !important;
  box-shadow:inset 3px 0 0 #9b88ff,0 8px 20px rgba(115,87,232,.14) !important;
}
body.fichajes-game-ui-v700 .fj-sidebar-nav a.is-active .dashicons{color:#fff !important}
body.fichajes-game-ui-v700 .fj-sidebar-footer{border-top:1px solid rgba(255,255,255,.08) !important;color:rgba(255,255,255,.45) !important}
body.fichajes-game-ui-v700 .fj-sidebar-footer small{color:#aaa3ec !important}
body.fichajes-game-ui-v700 .fj-sidebar-logout{background:rgba(255,255,255,.045) !important;border-color:rgba(255,255,255,.07) !important}

/* ---------------- Main canvas ---------------- */
body.fichajes-game-ui-v700 .fj-app-main{
  min-width:0 !important;
  color:var(--fjg-ink) !important;
}
body.fichajes-game-ui-v700 .fj-app-main>.fj-wrap,
body.fichajes-game-ui-v700 .fj-app-main>.fj-adv-page,
body.fichajes-game-ui-v700 .fj-app-main>.fj-profile-portal,
body.fichajes-game-ui-v700 .fj-app-main>.fj-dashboard{
  max-width:none !important;
}
body.fichajes-game-ui-v700 .fj-app-main h1,
body.fichajes-game-ui-v700 .fj-app-main h2,
body.fichajes-game-ui-v700 .fj-app-main h3,
body.fichajes-game-ui-v700 .fj-app-main h4{
  color:var(--fjg-ink) !important;
  letter-spacing:-.025em;
}
body.fichajes-game-ui-v700 .fj-app-main p{color:var(--fjg-muted)}

/* ---------------- Shared cards / panels ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-card,.fj-panel,.fj-master-panel,.fj-dashboard-panel,.fj-team-hub-panel,.fj-market-panel,.fj-front-admin-card,.fj-staff-card,.fj-mini-card,.fj-profile-panel){
  border:1px solid var(--fjg-line) !important;
  border-radius:var(--fjg-radius) !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:var(--fjg-shadow) !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-card,.fj-panel,.fj-master-panel,.fj-dashboard-panel,.fj-front-admin-card,.fj-staff-card,.fj-mini-card){
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-card,.fj-panel,.fj-master-panel,.fj-dashboard-panel,.fj-front-admin-card,.fj-staff-card,.fj-mini-card):hover{
  border-color:#ddd8f7 !important;
  box-shadow:var(--fjg-shadow-hover) !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-card h3,.fj-panel h3){font-weight:850 !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-eyebrow,.fj-section-kicker){color:var(--fj-purple-dark) !important;font-weight:900 !important;letter-spacing:.11em !important}
body.fichajes-game-ui-v700 .fj-app-main .fj-muted{color:#7a7f95 !important}

/* ---------------- All heroes share one game grammar ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(
  .fj-page-hero,.fj-community-hero,.fj-wall641-hero,.fj-bank-hero,.fj-bank-staff-hero,.fj-treasury-hero,
  .fj-badge638-hero,.fj-badge636-hero,.fj-store636-hero,.fj-market-hero,.fj-ranking-hero,.fj-equivalence-hero,
  .fj-eq654-hero,.fj-eq655-hero,.fj-att-hero,.fj-app652-hero,.fj-intake653-hero,.fj-rw657-hero,
  .fj-staff646-hero,.fj-sp647-hero,.fj-sp649-hero,.fj-sp650-hero,.fj-sp651-hero,.fj-staff-wall-hero,
  .fj-sys659-hero,.fj-team-hub-hero,.fj-tm658-hero,.fj-desafio-hero
){
  border-radius:24px !important;
  border:1px solid rgba(116,102,200,.14) !important;
  box-shadow:0 16px 38px rgba(52,44,104,.08) !important;
}
body.fichajes-game-ui-v700 .fj-page-hero{
  min-height:150px;
  padding:28px 30px !important;
  background:
    radial-gradient(circle at 94% 12%,rgba(54,185,214,.16),transparent 18rem),
    radial-gradient(circle at 72% 100%,rgba(115,87,232,.12),transparent 20rem),
    linear-gradient(135deg,#fff 0%,#faf8ff 58%,#f3fbff 100%) !important;
}
body.fichajes-game-ui-v700 .fj-page-hero h1{font-size:clamp(2rem,3.7vw,3.2rem) !important;font-weight:900 !important}
body.fichajes-game-ui-v700 .fj-page-hero__eyebrow{color:var(--fj-purple-dark) !important}

/* Character / Dinasta HUD */
body.fichajes-game-ui-v700 .fj-dinasta-hero{
  border-radius:26px !important;
  border:1px solid rgba(115,87,232,.18) !important;
  background:
    radial-gradient(circle at 88% 18%,rgba(54,185,214,.18),transparent 19rem),
    radial-gradient(circle at 10% 90%,rgba(115,87,232,.16),transparent 22rem),
    linear-gradient(135deg,#ffffff 0%,#f9f6ff 57%,#f1fbff 100%) !important;
  box-shadow:0 20px 46px rgba(72,55,135,.10) !important;
}
body.fichajes-game-ui-v700 .fj-dinasta-hero__copy h1{font-weight:900 !important}
body.fichajes-game-ui-v700 .fj-dinasta-hero__eyebrow{color:var(--fj-purple-dark) !important}
body.fichajes-game-ui-v700 .fj-dinasta-hero__avatar>.fj-avatar-wrap>.fj-avatar{
  border:4px solid #fff !important;
  box-shadow:0 0 0 5px rgba(115,87,232,.12),0 14px 28px rgba(53,41,115,.18) !important;
}
body.fichajes-game-ui-v700 .fj-dinasta-hero__summary{
  border:1px solid rgba(115,87,232,.12) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.68) !important;
}
body.fichajes-game-ui-v700 .fj-dinasta-hero__summary>span{border:1px solid rgba(115,87,232,.08);background:rgba(255,255,255,.78);border-radius:13px}
body.fichajes-game-ui-v700 .fj-dinasta-hero__metrics{
  background:rgba(255,255,255,.58) !important;
  border-top:1px solid rgba(115,87,232,.12) !important;
}
body.fichajes-game-ui-v700 .fj-dinasta-metric{min-height:78px !important}
body.fichajes-game-ui-v700 .fj-dinasta-metric__icon{border-radius:11px !important;box-shadow:0 6px 14px rgba(71,55,145,.08)}
body.fichajes-game-ui-v700 .fj-dinasta-metric__copy strong{font-weight:900 !important}

/* Dynasty HQ — make the team feel like a squad screen, not a spreadsheet. */
body.fichajes-game-ui-v700 .fj-dynasty-profile .fj-dynasty-hero{
  border-radius:28px !important;
  box-shadow:0 24px 58px rgba(15,23,42,.17),inset 0 1px 0 rgba(255,255,255,.09) !important;
}
body.fichajes-game-ui-v700 .fj-dynasty-profile .fj-dynasty-power-strip{
  border-radius:20px !important;
  box-shadow:0 12px 28px rgba(50,42,98,.07) !important;
}
body.fichajes-game-ui-v700 .fj-dynasty-profile .fj-dynasty-member-card{
  border-radius:20px !important;
  box-shadow:0 8px 20px rgba(40,35,75,.055) !important;
}
body.fichajes-game-ui-v700 .fj-dynasty-profile .fj-dynasty-member-card:hover{transform:translateY(-4px) !important}

/* ---------------- Buttons: game actions ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-btn,button,input[type="submit"],input[type="button"]){
  min-height:42px;
  border-radius:13px !important;
  border:1px solid #dedaf2 !important;
  background:#fff !important;
  color:#39314f !important;
  font-weight:820 !important;
  box-shadow:0 4px 10px rgba(48,39,95,.04) !important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-btn,button,input[type="submit"],input[type="button"]):hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(48,39,95,.08) !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-btn-primary,.fj-btn-ok,.fj-btn-success){
  border-color:#6d52df !important;
  background:linear-gradient(135deg,#795be9,#5f42ca) !important;
  color:#fff !important;
  box-shadow:0 9px 20px rgba(101,75,215,.24) !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-btn-secondary,.fj-btn-ghost){background:#f6f3ff !important;color:#5b45b2 !important;border-color:#ded6fa !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-btn-danger,.fj-tm658-delete){background:#fff1f3 !important;color:#b33b4d !important;border-color:#f2cbd1 !important}

/* ---------------- Tabs become level selectors ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-adv-tabs,.fj-market-tabs,.fj-ranking-switch,.fj-tabs,.fj-store636-tabs,.fj-badge637-tabs,.fj-desafio-tabs,.fj-discipline-tabs,.nav-tab-wrapper){
  display:flex !important;
  gap:6px !important;
  padding:5px !important;
  border:1px solid #e4e1f0 !important;
  border-radius:16px !important;
  background:#f7f5fc !important;
  box-shadow:none !important;
  overflow-x:auto !important;
  scrollbar-width:none !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-adv-tabs,.fj-market-tabs,.fj-ranking-switch,.fj-tabs,.fj-store636-tabs,.fj-badge637-tabs,.fj-desafio-tabs,.fj-discipline-tabs,.nav-tab-wrapper)>:where(a,button,.nav-tab){
  min-height:40px !important;
  padding:8px 13px !important;
  border:0 !important;
  border-radius:11px !important;
  background:transparent !important;
  color:#757a91 !important;
  font-weight:820 !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-adv-tabs,.fj-market-tabs,.fj-ranking-switch,.fj-tabs,.fj-store636-tabs,.fj-badge637-tabs,.fj-desafio-tabs,.fj-discipline-tabs,.nav-tab-wrapper)>:where(a,button,.nav-tab):is(.is-active,.active,.nav-tab-active,[aria-current="page"]){
  color:#4f35b6 !important;
  background:#fff !important;
  box-shadow:0 5px 13px rgba(70,54,132,.09) !important;
}

/* ---------------- Forms: less bureaucracy, more guided play ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea){
  min-height:44px !important;
  border:1px solid #dedbea !important;
  border-radius:13px !important;
  background:#fff !important;
  color:#292d42 !important;
  box-shadow:inset 0 1px 1px rgba(35,30,70,.025) !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(input,select,textarea):focus{
  border-color:#8068e7 !important;
  box-shadow:0 0 0 4px rgba(115,87,232,.11) !important;
  outline:none !important;
}
body.fichajes-game-ui-v700 .fj-app-main :where(label){color:#565b72 !important;font-weight:780 !important}

/* ---------------- Data: turn spreadsheets into game boards ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-table,table){font-size:13px !important;border-collapse:separate !important;border-spacing:0 6px !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-table,table) thead th{border:0 !important;color:#85899e !important;font-size:9px !important;letter-spacing:.10em !important;padding:6px 10px !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-table,table) tbody td{border-top:1px solid #eeeef5 !important;border-bottom:1px solid #eeeef5 !important;background:#fff !important;padding:11px 10px !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-table,table) tbody td:first-child{border-left:1px solid #eeeef5 !important;border-radius:13px 0 0 13px !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-table,table) tbody td:last-child{border-right:1px solid #eeeef5 !important;border-radius:0 13px 13px 0 !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-table,table) tbody tr:hover td{background:#fbfaff !important}

/* ---------------- Progress / levels ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-progress,.fj-profile-progress,.fj-dashboard-track,.fj-adv-progress-track){height:9px !important;border-radius:999px !important;background:#ebe8f5 !important;box-shadow:inset 0 1px 2px rgba(46,35,89,.05) !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-progress,.fj-profile-progress,.fj-dashboard-track,.fj-adv-progress-track)>:where(span,i){border-radius:inherit !important;background:linear-gradient(90deg,#7458e8,#39bfd7) !important;box-shadow:0 0 14px rgba(87,84,218,.20) !important}

/* ---------------- Empty states / alerts ---------------- */
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-empty-friendly,.fj-team-empty,.fj-empty,.fj-msg,.fj-alert){border-radius:16px !important;border:1px solid #e9e6f2 !important;background:#fff !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-msg-ok,.is-good,.is-success){border-left:4px solid #72bf67 !important;background:#f2fbef !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.fj-msg-error,.is-danger,.has-alert){border-left:4px solid #d65b6c !important;background:#fff2f4 !important}
body.fichajes-game-ui-v700 .fj-app-main :where(.is-warning,.has-pending){border-left:4px solid #e6aa3c !important;background:#fff8e8 !important}

/* ---------------- Mobile quick navigation ---------------- */
.fj-game-mobile-nav{display:none}
@media (max-width:1180px){
  body.fichajes-game-ui-v700 .fj-game-shell-v700{padding:8px 10px 90px !important}
  body.fichajes-game-ui-v700 .fj-mobile-appbar{
    background:linear-gradient(135deg,#17183a,#30236a) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    box-shadow:0 12px 30px rgba(42,31,100,.22) !important;
  }
  .fj-game-mobile-nav{
    position:fixed;
    left:10px;right:10px;bottom:10px;z-index:1090;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:4px;
    padding:6px;
    border:1px solid rgba(115,87,232,.14);
    border-radius:20px;
    background:rgba(255,255,255,.90);
    box-shadow:0 18px 42px rgba(39,30,93,.18);
    backdrop-filter:blur(18px);
    padding-bottom:calc(6px + env(safe-area-inset-bottom));
  }
  .fj-game-mobile-nav a,.fj-game-mobile-nav button{
    display:grid;
    place-items:center;
    gap:3px;
    min-width:0;
    min-height:54px;
    padding:6px 3px;
    border:0 !important;
    border-radius:14px !important;
    background:transparent !important;
    color:#7b7f93 !important;
    text-decoration:none !important;
    box-shadow:none !important;
    font:inherit;
    cursor:pointer;
  }
  .fj-game-mobile-nav a .dashicons,.fj-game-mobile-nav button .dashicons{width:20px;height:20px;font-size:20px;line-height:20px}
  .fj-game-mobile-nav a b,.fj-game-mobile-nav button b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1}
  .fj-game-mobile-nav a.is-active{color:#573dbf !important;background:#f0ecff !important}
  .fj-game-mobile-nav a.is-active .dashicons{color:#7054df}
  .fj-game-mobile-nav button{color:#555a72 !important}
}
@media (max-width:640px){
  body.fichajes-game-ui-v700 .fj-app-main{padding-bottom:4px !important}
  body.fichajes-game-ui-v700 .fj-app-main :where(.fj-card,.fj-panel,.fj-master-panel,.fj-dashboard-panel){border-radius:17px !important}
  body.fichajes-game-ui-v700 .fj-page-hero{padding:22px 20px !important;min-height:0}
  body.fichajes-game-ui-v700 .fj-page-hero h1{font-size:clamp(1.7rem,9vw,2.3rem) !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero{border-radius:21px !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero__top{padding:21px 18px !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero__summary{grid-template-columns:repeat(3,1fr) !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero__summary>span{min-height:52px !important;display:grid !important;justify-items:start !important;gap:2px !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero__summary small{font-size:8px !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero__summary strong{font-size:11px !important;text-align:left !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero__metrics{grid-template-columns:repeat(3,1fr) !important}
  body.fichajes-game-ui-v700 .fj-dinasta-metric{min-height:70px !important;padding:10px 8px !important;gap:6px !important}
  body.fichajes-game-ui-v700 .fj-dinasta-metric__icon{width:27px;height:27px;flex-basis:27px;border-radius:9px}
  body.fichajes-game-ui-v700 .fj-dinasta-metric__copy small{font-size:7.5px}
  body.fichajes-game-ui-v700 .fj-dinasta-metric__copy strong{font-size:15px}
}
@media (max-width:420px){
  body.fichajes-game-ui-v700 .fj-dinasta-hero__summary{grid-template-columns:1fr 1fr 1fr !important}
  body.fichajes-game-ui-v700 .fj-dinasta-hero__metrics{grid-template-columns:repeat(2,1fr) !important}
  .fj-game-mobile-nav{left:6px;right:6px;bottom:6px;border-radius:18px}
}

/* Respect accessibility and reduced motion. */
@media (prefers-reduced-motion:reduce){
  body.fichajes-game-ui-v700 *, body.fichajes-game-ui-v700 *:before, body.fichajes-game-ui-v700 *:after{
    animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important;
  }
}
