﻿.avatar{width:64px;height:64px;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar.large{width:164px;height:164px}.home-ranking .avatar{width:84px;height:84px}.home-ranking tr:nth-child(-n+3) .rank{color:var(--lime)}.home-ranking tr:nth-child(-n+3) .avatar{border:2px solid var(--lime)}.person span{white-space:normal}.event-art>span{font-size:56px}.feature-bottom h2{font:800 32px/1.4 'Noto Sans Thai',sans-serif;overflow-wrap:anywhere}.home-ranking{grid-template-columns:0.8fr 2fr;gap:24px}.match-player .avatar{width:40px;height:40px}.error{color:#ffcaad}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.admin-grid .panel{margin:0}textarea{width:100%;background:#11150f;color:#fff;min-height:90px}button{touch-action:manipulation}.result-row{flex-wrap:wrap}.person{overflow-wrap:anywhere}h3{overflow-wrap:anywhere}@media(max-width:760px){.home-ranking,.admin-grid{grid-template-columns:1fr}.home-ranking .avatar{width:68px;height:68px}.avatar.large{width:144px;height:144px}td,th{padding:12px}.profile{flex-wrap:wrap}.profile-score{margin-left:0}.hero-feature{min-height:340px}.feature-bottom h2{font-size:25px}}

/* AYL registration/admin V1 */
.panel-soft{padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.03)}
.ranking-rule p{margin:.35rem 0 0;line-height:1.6}
.long-copy,.event-copy{line-height:1.75;white-space:normal;overflow-wrap:anywhere}
.event-copy{margin:18px 0;padding:18px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025)}
.event-copy h3{margin-top:0}
.admin-event-cover,.event-hero-image img,.registration-cover img,.event-cover img{display:block;width:100%;object-fit:cover;border-radius:16px}
.admin-event-cover{max-height:360px;margin:16px 0}
.event-hero-image{margin:0 0 18px}
.event-hero-image img{max-height:520px}
.event-cover{aspect-ratio:16/9;overflow:hidden}
.event-cover img{height:100%;border-radius:0}
.registration-event{display:grid;grid-template-columns:minmax(220px,420px) 1fr;gap:22px;align-items:start}
.registration-cover img{max-height:520px}
.event-picker{display:block;margin-bottom:16px}
.registration-modes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 18px}
.mode-card{display:flex;gap:8px;align-items:flex-start;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:14px;cursor:pointer}
.mode-card input{width:auto;margin-top:4px}
.mode-card strong,.mode-card small{display:block}
.alias-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.selected-player{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:14px;margin-top:10px}
.selected-player small,.admin-entry small{display:block;opacity:.72;margin-top:2px}
.admin-entry>span:first-child{min-width:0}
@media(max-width:760px){.registration-event{grid-template-columns:1fr}.registration-modes,.alias-grid{grid-template-columns:1fr}.event-hero-image img,.registration-cover img{max-height:none}}

/* FULL EVENT IMAGE - show whole image, no crop */
.admin-event-cover,
.event-hero-image img,
.registration-cover img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  display: block;
}


/* EXISTING PLAYER PHOTO REPLACEMENT */
.replacement-photo-preview{
  margin-top:10px;
  display:flex;
  align-items:center;
  gap:12px;
}
.replacement-photo-preview img{
  width:88px;
  height:88px;
  object-fit:cover;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
}
.replacement-photo-preview small{
  display:block;
}
/* =========================
   CHALLONGE EMBED
========================= */
.challonge-panel{
  padding:18px;
  overflow:hidden;
}

.challonge-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}

.challonge-head h2{
  margin:4px 0 0;
}

.challonge-frame{
  width:100%;
  height:78vh;
  min-height:650px;
  border:0;
  border-radius:14px;
  background:#fff;
  display:block;
}

@media (max-width:760px){
  .challonge-panel{
    padding:10px;
  }

  .challonge-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .challonge-frame{
    height:76vh;
    min-height:560px;
    border-radius:10px;
  }
}
/* =========================
   COMPETITION LINES V2
========================= */

.competition-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:14px 0 18px;
}

.competition-tabs button{
  min-width:88px;
}

.competition-empty{
  text-align:center;
  padding:36px 20px;
}

.competition-empty h2{
  margin-bottom:8px;
}

.competition-admin{
  margin-top:18px;
}

.competition-admin-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.competition-admin-head h3{
  margin:4px 0 0;
}

.competition-login{
  margin-top:16px;
  display:grid;
  gap:12px;
  max-width:480px;
}

.competition-link-editor{
  margin-top:18px;
}

.competition-link-editor label{
  display:block;
  margin-bottom:12px;
}

.competition-link-editor input{
  width:100%;
}

.competition-link-editor .actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}

#competition-admin-feedback,
#competition-login-feedback{
  margin-top:10px;
  font-weight:700;
}

@media (max-width:760px){

  .competition-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .competition-tabs button{
    width:100%;
    min-width:0;
  }

  .competition-admin-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .competition-login{
    max-width:none;
  }

  .competition-link-editor .actions{
    flex-direction:column;
  }

  .competition-link-editor .actions .button{
    width:100%;
  }
}
/* =========================
   COMPETITION ROUNDS V3
========================= */

.competition-round-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:14px 0 12px;
}

.competition-round-tabs button{
  min-width:120px;
}

.competition-round-editor{
  margin-top:18px;
}

.competition-editor-toolbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}

.competition-editor-toolbar small{
  display:block;
  margin-top:4px;
  opacity:.7;
}

.competition-round-card{
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:16px;
  margin-bottom:14px;
  background:rgba(255,255,255,.02);
}

.competition-round-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.competition-round-card-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}

.competition-round-card label{
  display:block;
  margin-bottom:12px;
}

.competition-round-card input,
.competition-round-card select{
  width:100%;
}

.competition-round-links{
  margin-top:12px;
  display:grid;
  gap:10px;
}

.competition-save-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}

.competition-empty-editor{
  border:1px dashed rgba(255,255,255,.18);
  border-radius:12px;
  padding:24px;
  text-align:center;
  opacity:.75;
}

@media (max-width:760px){

  .competition-round-tabs{
    display:grid;
    grid-template-columns:1fr;
  }

  .competition-round-tabs button{
    width:100%;
    min-width:0;
  }

  .competition-editor-toolbar{
    flex-direction:column;
  }

  .competition-editor-toolbar .button{
    width:100%;
  }

  .competition-round-card-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .competition-round-card-actions{
    width:100%;
  }

  .competition-round-card-actions .button{
    flex:1;
  }

  .competition-save-actions{
    flex-direction:column;
  }

  .competition-save-actions .button{
    width:100%;
  }
}


.photo-approval-card{border:1px solid var(--line);background:#151913;padding:18px;margin:12px 0 20px;border-radius:6px}
.photo-approval-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--line)}
.photo-approval-head strong{display:block;font-size:18px}
.photo-approval-head small{display:block;opacity:.76;margin-top:2px}
.photo-approval-status{color:#ffd36a;font-weight:700;white-space:nowrap}
.photo-compare{display:grid;grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);gap:14px;align-items:center;padding:18px 0}
.photo-compare-item{min-width:0;text-align:center}
.photo-compare-item b{display:block;margin-bottom:10px}
.photo-compare-item img,.photo-missing{width:100%;max-width:260px;aspect-ratio:1/1;object-fit:cover;border-radius:10px;border:2px solid #586052;background:#0d100c}
.photo-compare-item.new-photo img{border-color:var(--lime)}
.photo-missing{display:flex;align-items:center;justify-content:center;margin:auto;color:var(--muted)}
.photo-change-arrow{text-align:center;font-size:34px;color:var(--lime);font-weight:800}
.photo-approval-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:14px}
@media(max-width:650px){
 .photo-approval-head,.photo-approval-actions{flex-direction:column;align-items:stretch}
 .photo-compare{grid-template-columns:1fr}
 .photo-change-arrow{transform:rotate(90deg)}
 .photo-compare-item img,.photo-missing{max-width:320px}
 .photo-approval-actions .button{width:100%}
}

/* REGISTER_MOBILE_COVER_FINAL */
@media (max-width:760px){

  html body main .registration-event .registration-cover{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    overflow:visible !important;
  }

  html body main .registration-event .registration-cover img{
    width:250px !important;
    max-width:65vw !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    margin:0 auto !important;
    display:block !important;
  }

}

/* REAL REGISTER COVER FIX */
.registration-cover{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
  margin:14px auto 20px !important;
}

.registration-cover img{
  display:block !important;
  width:240px !important;
  max-width:65vw !important;
  height:auto !important;
  object-fit:contain !important;
  margin:0 auto !important;
}

@media (max-width:760px){
  .registration-cover img{
    width:420px !important;
    max-width:88vw !important;
  }
}


/* ==================================================
   AYL REGISTER POSTER FINAL
   ================================================== */

html body main .registration-event .registration-cover{
    width:150px !important;
    max-width:150px !important;
    min-width:150px !important;
    height:auto !important;
    margin:12px auto 18px !important;
    padding:0 !important;
    display:block !important;
    overflow:visible !important;
}

html body main #AYL_REGISTER_POSTER_FINAL{
    display:block !important;
    width:150px !important;
    max-width:150px !important;
    min-width:150px !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
}

@media (max-width:760px){

    html body main .registration-event .registration-cover{
        width:140px !important;
        max-width:140px !important;
        min-width:140px !important;
    }

    html body main #AYL_REGISTER_POSTER_FINAL{
        width:140px !important;
        max-width:140px !important;
        min-width:140px !important;
    }
}


/* ===== REGISTER POSTER REAL FIX ===== */

.join-event-media{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
  padding:14px 12px 10px !important;
  box-sizing:border-box !important;
}

.join-event-cover{
  display:block !important;
  width:280px !important;
  max-width:70vw !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  margin:0 auto !important;
  border-radius:18px !important;
}

@media (max-width:640px){
  .join-event-cover{
    width:420px !important;
    max-width:88vw !important;
    height:auto !important;
  }
}





/* FINAL REGISTER POSTER SIZE */
@media (min-width:641px){
  .join-event-cover{
    width:620px !important;
    max-width:76vw !important;
  }
}

@media (max-width:640px){
  .join-event-cover{
    width:420px !important;
    max-width:88vw !important;
  }
}



/* ===============================
   AYL SUCCESS REGISTRATION MODAL
   =============================== */

#ayl-success-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:20px !important;
}

.ayl-success-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(0,0,0,.76) !important;
  backdrop-filter:blur(4px);
}

.ayl-success-dialog{
  position:relative !important;
  width:min(92vw,420px) !important;
  padding:30px 22px 22px !important;

  background:
    linear-gradient(
      180deg,
      #182117 0%,
      #101510 100%
    ) !important;

  border:2px solid #b7ff39 !important;
  border-radius:24px !important;

  box-shadow:
    0 20px 70px rgba(0,0,0,.65),
    0 0 30px rgba(183,255,57,.20) !important;

  text-align:center !important;
  color:#ffffff !important;
}

.ayl-success-icon{
  width:82px !important;
  height:82px !important;
  margin:0 auto 16px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  border-radius:50% !important;

  background:#b7ff39 !important;
  color:#0b1200 !important;

  font-size:46px !important;
  font-weight:900 !important;

  box-shadow:
    0 0 0 8px rgba(183,255,57,.10),
    0 8px 25px rgba(183,255,57,.25) !important;
}

.ayl-success-dialog h3{
  margin:0 0 14px !important;
  color:#ffffff !important;
  font-size:27px !important;
  font-weight:900 !important;
  line-height:1.3 !important;
}

.ayl-success-message{
  margin-bottom:22px !important;
  color:#e8eee3 !important;
  font-size:18px !important;
  line-height:1.8 !important;
}

.ayl-success-btn{
  width:100% !important;
  min-height:54px !important;

  border:0 !important;
  border-radius:15px !important;

  background:#b7ff39 !important;
  color:#0b1200 !important;

  font-size:18px !important;
  font-weight:900 !important;

  cursor:pointer !important;
}

@media(max-width:640px){

  .ayl-success-dialog{
    width:92vw !important;
    padding:28px 18px 20px !important;
  }

  .ayl-success-dialog h3{
    font-size:24px !important;
  }

  .ayl-success-message{
    font-size:17px !important;
  }

}

