.aly1canyon,.aly1canyon *{box-sizing:border-box}.aly1canyon{--bg:#040914;--panel:rgba(9,20,42,.92);--panel2:rgba(11,24,50,.96);--line:rgba(126,178,255,.18);--line2:rgba(110,241,255,.34);--text:#f6f9ff;--muted:#9fb2d4;--cyan:#6ef1ff;--blue:#7eadff;--gold:#ffd166;--pink:#ff4fd8;--red:#ff637d;--green:#67f5a4;--shadow:0 22px 70px rgba(0,0,0,.45);font-family:Inter,Arial,sans-serif;color:var(--text);max-width:1220px;margin:0 auto;padding:28px 18px 46px;position:relative}.aly1canyon:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 8%,rgba(110,241,255,.08),transparent 28%),radial-gradient(circle at 92% 18%,rgba(255,79,216,.07),transparent 24%),radial-gradient(circle at 50% 100%,rgba(126,173,255,.07),transparent 30%)}.aly1canyon>*{position:relative;z-index:1}.aly1canyon a{text-decoration:none}.aly1canyon-hero{position:relative;overflow:hidden;min-height:275px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:40px 36px;margin-bottom:22px;border-radius:32px;background:linear-gradient(135deg,rgba(13,27,57,.98),rgba(5,11,25,.98) 58%,rgba(15,17,31,.98)),radial-gradient(circle at top right,rgba(255,209,102,.20),transparent 28%);border:1px solid rgba(126,178,255,.20);box-shadow:var(--shadow)}.aly1canyon-hero:before{content:"";position:absolute;inset:1px;border-radius:31px;border:1px solid rgba(255,255,255,.04);pointer-events:none}.aly1canyon-hero-grid{position:absolute;inset:0;opacity:.17;background:linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(180deg,#000,transparent 90%);pointer-events:none}.aly1canyon-hero-glow{position:absolute;pointer-events:none;border-radius:999px;filter:blur(4px)}.aly1canyon-hero-glow-one{width:320px;height:320px;right:-110px;top:-120px;background:radial-gradient(circle,rgba(255,209,102,.22),transparent 67%)}.aly1canyon-hero-glow-two{width:420px;height:420px;left:-170px;bottom:-180px;background:radial-gradient(circle,rgba(110,241,255,.16),transparent 66%)}.aly1canyon-hero-content{position:relative;z-index:2;max-width:780px}.aly1canyon-kicker{display:inline-flex;align-items:center;gap:9px;margin:0 0 12px;font-size:11px;line-height:1;letter-spacing:.19em;font-weight:900;color:var(--gold);text-transform:uppercase}.aly1canyon-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 14px rgba(110,241,255,.9)}.aly1canyon-hero h1{margin:0 0 14px;font-size:clamp(36px,5vw,64px);line-height:.96;letter-spacing:-.045em;font-weight:900;color:#fff;text-shadow:0 0 28px rgba(126,173,255,.14)}.aly1canyon-hero p{margin:0;max-width:720px;font-size:18px;line-height:1.7;color:var(--muted)}.aly1canyon-unlock-card{position:relative;z-index:2;flex:0 0 280px;display:flex;align-items:center;gap:14px;padding:18px;border-radius:22px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);box-shadow:0 14px 38px rgba(0,0,0,.28);backdrop-filter:blur(10px)}.aly1canyon-status-dot{width:14px;height:14px;border-radius:50%;background:var(--cyan);box-shadow:0 0 18px rgba(110,241,255,.9),0 0 34px rgba(110,241,255,.35)}.aly1canyon-unlock-card strong{display:block;font-size:15px;color:#fff}.aly1canyon-unlock-card small{display:block;margin-top:4px;color:var(--muted);font-size:13px}.aly1canyon-unlock-form{width:100%;display:grid;gap:10px}.aly1canyon-unlock-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.aly1canyon input,.aly1canyon select,.aly1canyon textarea{width:100%;border-radius:14px;border:1px solid rgba(126,178,255,.18);background:rgba(4,9,20,.78);color:var(--text);padding:12px 13px;font:inherit;outline:none}.aly1canyon input:focus,.aly1canyon select:focus,.aly1canyon textarea:focus{border-color:rgba(110,241,255,.42);box-shadow:0 0 0 3px rgba(110,241,255,.07)}.aly1canyon button,.aly1canyon-btn{border:0;border-radius:999px;background:rgba(110,241,255,.10);border:1px solid rgba(110,241,255,.22);color:var(--cyan)!important;min-height:38px;padding:0 16px;font-weight:850;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:transform .22s ease,border-color .22s ease,background .22s ease}.aly1canyon button:hover,.aly1canyon-btn:hover{transform:translateY(-2px);background:rgba(110,241,255,.16);border-color:rgba(110,241,255,.42)}.aly1canyon-btn-primary{background:linear-gradient(135deg,rgba(110,241,255,.22),rgba(126,173,255,.14));border-color:rgba(110,241,255,.34);color:#fff!important}.aly1canyon-btn-danger{background:rgba(255,99,125,.10);border-color:rgba(255,99,125,.28);color:#ff9aaa!important}.aly1canyon-messages{display:grid;gap:10px;margin-bottom:18px}.aly1canyon-message{padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);font-weight:700}.aly1canyon-message-success{border-color:rgba(103,245,164,.24);color:#9dffc4}.aly1canyon-message-error{border-color:rgba(255,99,125,.32);color:#ffabb8}.aly1canyon-stats-grid,.aly1canyon-detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.aly1canyon-stat-card{padding:18px 18px;border-radius:22px;background:linear-gradient(180deg,rgba(11,24,50,.92),rgba(6,13,29,.96));border:1px solid var(--line);box-shadow:0 14px 44px rgba(0,0,0,.26)}.aly1canyon-stat-card span{display:block;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.aly1canyon-stat-card strong{display:block;margin:7px 0 4px;font-size:30px;line-height:1;font-weight:900;color:#fff}.aly1canyon-stat-card small{display:block;color:rgba(207,224,255,.65);font-size:11px;line-height:1.4}.aly1canyon-panel{position:relative;overflow:hidden;margin-bottom:18px;padding:24px;border-radius:28px;background:linear-gradient(180deg,rgba(11,24,50,.94),rgba(6,13,29,.98));border:1px solid var(--line);box-shadow:0 18px 58px rgba(0,0,0,.34)}.aly1canyon-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at top right,rgba(110,241,255,.07),transparent 32%),radial-gradient(circle at bottom left,rgba(126,173,255,.06),transparent 34%)}.aly1canyon-panel>*{position:relative;z-index:2}.aly1canyon-panel-head{display:flex;justify-content:space-between;gap:18px;margin-bottom:18px}.aly1canyon-panel h2,.aly1canyon-detail-head h2{margin:0 0 7px;font-size:clamp(26px,3vw,38px);line-height:1.05;letter-spacing:-.035em;color:#fff;font-weight:900}.aly1canyon-soft,.aly1canyon-panel p.aly1canyon-soft{margin:0;color:var(--muted);line-height:1.65}.aly1canyon-event-list{display:grid;gap:12px}.aly1canyon-event-card{display:grid;grid-template-columns:1.1fr 1.6fr;gap:16px;align-items:center;padding:18px;border-radius:20px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);transition:transform .22s ease,border-color .22s ease,background .22s ease;color:var(--text)!important}.aly1canyon-event-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.055);border-color:var(--line2)}.aly1canyon-event-main{display:grid;gap:6px}.aly1canyon-event-main h3{margin:0;font-size:22px;color:#fff}.aly1canyon-event-main p{margin:0;color:var(--muted)}.aly1canyon-result{width:max-content;display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.12em;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045)}.aly1canyon-result-win{color:#8dffb8;border-color:rgba(103,245,164,.26);background:rgba(103,245,164,.08)}.aly1canyon-result-lose{color:#ff9aaa;border-color:rgba(255,99,125,.30);background:rgba(255,99,125,.08)}.aly1canyon-result-unknown{color:var(--gold);border-color:rgba(255,209,102,.28);background:rgba(255,209,102,.07)}.aly1canyon-event-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.aly1canyon-event-meta span{padding:10px;border-radius:14px;background:rgba(4,9,20,.38);border:1px solid rgba(255,255,255,.06);color:var(--muted);font-size:12px}.aly1canyon-event-meta strong{display:block;margin-top:3px;color:#fff;font-size:16px}.aly1canyon-empty{padding:26px;border-radius:20px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);text-align:center}.aly1canyon-empty h3{margin:0 0 7px;color:#fff}.aly1canyon-empty p{margin:0;color:var(--muted)}.aly1canyon-empty-small{padding:16px}.aly1canyon-rotation-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.aly1canyon-mini-list{display:grid;gap:10px}.aly1canyon-mini-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}.aly1canyon-mini-row strong{color:#fff}.aly1canyon-mini-row span{color:var(--cyan);font-weight:800}.aly1canyon-detail-head{display:flex;justify-content:space-between;gap:18px;margin-bottom:18px}.aly1canyon-detail-actions{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}.aly1canyon-detail-actions form{margin:0}.aly1canyon-note{margin:0 0 18px;padding:14px 16px;border-radius:16px;background:rgba(255,209,102,.07);border:1px solid rgba(255,209,102,.16);color:#f7dd99}.aly1canyon-roster-columns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.aly1canyon-player-column{padding:18px;border-radius:20px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}.aly1canyon-player-column h3{margin:0 0 14px;color:#fff;font-size:20px}.aly1canyon-chip-list{display:flex;flex-wrap:wrap;gap:8px}.aly1canyon-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);color:#dce8ff;font-size:13px;font-weight:700}.aly1canyon-chip-attended{border-color:rgba(103,245,164,.22);color:#9dffc4}.aly1canyon-chip-absent{border-color:rgba(255,99,125,.26);color:#ffabb8}.aly1canyon-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.aly1canyon-event-form label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.aly1canyon-notes-label{margin-bottom:16px}.aly1canyon-picker{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:start}.aly1canyon-picker-available,.aly1canyon-selected-box{border-radius:22px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);padding:16px}.aly1canyon-picker-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.aly1canyon-picker-title h3,.aly1canyon-selected-head h3{margin:0;color:#fff;font-size:20px}.aly1canyon-picker-title input{max-width:260px}.aly1canyon-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:520px;overflow:auto;padding-right:5px}.aly1canyon-player-option{display:grid;gap:6px;padding:12px;border-radius:16px;background:rgba(4,9,20,.34);border:1px solid rgba(255,255,255,.06)}.aly1canyon-player-option strong{color:#fff;font-size:14px}.aly1canyon-player-option.is-blocked{opacity:.45}.aly1canyon-player-option.is-selected{border-color:rgba(110,241,255,.20);background:rgba(110,241,255,.04)}.aly1canyon-player-option-actions{display:flex;gap:6px;flex-wrap:wrap}.aly1canyon-player-option-actions button{min-height:30px;padding:0 10px;font-size:12px}.aly1canyon-used-label{font-size:12px;color:var(--muted)}.aly1canyon-selected-zone{display:grid;gap:16px}.aly1canyon-selected-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.aly1canyon-selected-head span{color:var(--cyan);font-weight:900}.aly1canyon-selected-list{display:grid;gap:9px}.aly1canyon-selected-player{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px;border-radius:16px;background:rgba(4,9,20,.35);border:1px solid rgba(255,255,255,.06)}.aly1canyon-selected-player strong{color:#fff;font-size:14px}.aly1canyon-selected-controls{display:flex;align-items:center;gap:7px}.aly1canyon-attended-toggle{min-height:30px!important;padding:0 10px!important;font-size:12px!important;color:#ffabb8!important;background:rgba(255,99,125,.08)!important;border-color:rgba(255,99,125,.24)!important}.aly1canyon-attended-toggle.is-on{color:#9dffc4!important;background:rgba(103,245,164,.08)!important;border-color:rgba(103,245,164,.24)!important}.aly1canyon-remove-player{width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;color:#fff!important;background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.10)!important}.aly1canyon-selected-empty,.aly1canyon-picker-empty{padding:12px;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);color:var(--muted);text-align:center}.aly1canyon-form-actions{display:flex;justify-content:flex-end;margin-top:18px}.aly1canyon-warning-panel{border-color:rgba(255,99,125,.28)}
@media (max-width:1100px){.aly1canyon-stats-grid,.aly1canyon-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.aly1canyon-picker{grid-template-columns:1fr}.aly1canyon-event-card{grid-template-columns:1fr}.aly1canyon-event-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.aly1canyon-roster-columns{grid-template-columns:1fr}.aly1canyon-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.aly1canyon-hero{flex-direction:column;align-items:flex-start}.aly1canyon-unlock-card{width:100%;flex:initial}.aly1canyon-rotation-grid{grid-template-columns:1fr}.aly1canyon-detail-head{flex-direction:column}.aly1canyon-player-grid{grid-template-columns:1fr}}
@media (max-width:767px){.aly1canyon{padding:18px 12px 34px}.aly1canyon-hero{padding:30px 22px;border-radius:24px;min-height:auto}.aly1canyon-hero h1{font-size:clamp(34px,12vw,48px)}.aly1canyon-hero p{font-size:16px}.aly1canyon-panel{padding:18px;border-radius:22px}.aly1canyon-stats-grid,.aly1canyon-detail-stats,.aly1canyon-form-grid{grid-template-columns:1fr}.aly1canyon-stat-card strong{font-size:26px}.aly1canyon-event-meta{grid-template-columns:1fr 1fr}.aly1canyon-picker-title{flex-direction:column;align-items:stretch}.aly1canyon-picker-title input{max-width:none}.aly1canyon-selected-player{flex-direction:column;align-items:flex-start}.aly1canyon-selected-controls{width:100%;justify-content:space-between}.aly1canyon-form-actions{justify-content:stretch}.aly1canyon-form-actions .aly1canyon-btn{width:100%}}


/* Attendance review */
.aly1canyon-attendance-panel{
  margin:0 0 18px;
  padding:18px;
  border-radius:22px;
  background:
    radial-gradient(circle at top right,rgba(110,241,255,.07),transparent 32%),
    rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.08);
}

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

.aly1canyon-attendance-head h3{
  margin:0 0 6px;
  color:#fff;
  font-size:22px;
  line-height:1.1;
}

.aly1canyon-attendance-head p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.55;
}

.aly1canyon-attendance-tools{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.aly1canyon-attendance-list{
  display:grid;
  gap:10px;
}

.aly1canyon-attendance-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:12px;
  border-radius:16px;
  background:rgba(4,9,20,.34);
  border:1px solid rgba(255,255,255,.06);
}

.aly1canyon-attendance-player{
  min-width:0;
}

.aly1canyon-attendance-player strong{
  display:block;
  color:#fff;
  font-size:14px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.aly1canyon-attendance-player span{
  display:inline-flex;
  margin-top:5px;
  min-height:20px;
  align-items:center;
  padding:0 9px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  color:var(--muted);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.aly1canyon-attendance-options{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.aly1canyon-attendance-option{
  cursor:pointer;
  display:inline-flex!important;
  align-items:center;
  gap:7px!important;
  min-height:32px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.08);
  color:#dce8ff!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.aly1canyon-attendance-option input{
  width:auto!important;
  min-height:auto!important;
  accent-color:#6ef1ff;
}

.aly1canyon-attendance-option-unknown:has(input:checked){
  border-color:rgba(255,209,102,.34);
  background:rgba(255,209,102,.08);
  color:#ffd166!important;
}

.aly1canyon-attendance-option-attended:has(input:checked){
  border-color:rgba(103,245,164,.34);
  background:rgba(103,245,164,.08);
  color:#9dffc4!important;
}

.aly1canyon-attendance-option-no_show:has(input:checked){
  border-color:rgba(255,99,125,.36);
  background:rgba(255,99,125,.08);
  color:#ffabb8!important;
}

.aly1canyon-chip-unknown{
  border-color:rgba(255,209,102,.22);
  color:#ffd166;
}

@media (max-width:767px){
  .aly1canyon-attendance-head{
    flex-direction:column;
  }
  .aly1canyon-attendance-tools{
    width:100%;
    justify-content:stretch;
  }
  .aly1canyon-attendance-tools .aly1canyon-btn{
    flex:1;
  }
  .aly1canyon-attendance-row{
    grid-template-columns:1fr;
  }
  .aly1canyon-attendance-options{
    justify-content:stretch;
  }
  .aly1canyon-attendance-option{
    flex:1;
    justify-content:center;
  }
}

/* v0.1.3 — clearer dashboard sections + home title button */
.aly1canyon-home-title{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  width:max-content;
  max-width:100%;
  color:#fff!important;
  text-decoration:none!important;
  transition:transform .22s ease, filter .22s ease;
}

.aly1canyon-home-title h1{
  margin:0!important;
}

.aly1canyon-home-title span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  color:#6ef1ff;
  background:rgba(110,241,255,.06);
  border:1px solid rgba(110,241,255,.18);
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.88;
}

.aly1canyon-home-title span:before{
  content:"←";
  font-size:14px;
}

.aly1canyon-home-title:hover{
  transform:translateY(-2px);
  filter:drop-shadow(0 0 16px rgba(110,241,255,.16));
}

.aly1canyon-overview-stats{
  position:relative;
  padding:18px;
  margin-bottom:22px;
  border-radius:28px;
  background:
    radial-gradient(circle at top left,rgba(110,241,255,.10),transparent 28%),
    linear-gradient(180deg,rgba(8,18,38,.70),rgba(5,10,24,.52));
  border:1px solid rgba(110,241,255,.13);
  box-shadow:0 16px 48px rgba(0,0,0,.24);
}

.aly1canyon-overview-stats:before{
  content:"GENERAL STATS";
  position:absolute;
  top:-12px;
  left:22px;
  min-height:24px;
  display:inline-flex;
  align-items:center;
  padding:0 11px;
  border-radius:999px;
  background:#071326;
  border:1px solid rgba(110,241,255,.22);
  color:#6ef1ff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.16em;
}

.aly1canyon-overview-stats .aly1canyon-stat-card{
  background:
    radial-gradient(circle at top right,rgba(110,241,255,.10),transparent 32%),
    rgba(255,255,255,.035);
  border-color:rgba(110,241,255,.14);
}

.aly1canyon-recent-panel{
  margin-top:22px;
  background:
    radial-gradient(circle at top right,rgba(255,209,102,.11),transparent 28%),
    radial-gradient(circle at bottom left,rgba(255,79,216,.07),transparent 34%),
    linear-gradient(180deg,rgba(12,24,48,.96),rgba(6,13,29,.98))!important;
  border-color:rgba(255,209,102,.18)!important;
  box-shadow:0 18px 58px rgba(0,0,0,.32),0 0 30px rgba(255,209,102,.035);
}

.aly1canyon-recent-panel .aly1canyon-kicker{
  color:#ffd166;
}

.aly1canyon-recent-panel .aly1canyon-event-list{
  gap:14px;
}

.aly1canyon-recent-panel .aly1canyon-event-card{
  background:
    linear-gradient(90deg,rgba(255,209,102,.055),transparent 42%),
    rgba(4,9,20,.34);
  border-color:rgba(255,255,255,.08);
}

.aly1canyon-recent-panel .aly1canyon-event-card:hover{
  border-color:rgba(255,209,102,.28);
  box-shadow:0 14px 40px rgba(0,0,0,.28),0 0 24px rgba(255,209,102,.055);
}

.aly1canyon-rotation-panel-hot{
  background:
    radial-gradient(circle at top right,rgba(255,79,216,.08),transparent 30%),
    linear-gradient(180deg,rgba(12,24,48,.96),rgba(6,13,29,.98))!important;
  border-color:rgba(255,79,216,.16)!important;
}

.aly1canyon-rotation-panel-low{
  background:
    radial-gradient(circle at top right,rgba(110,241,255,.085),transparent 30%),
    linear-gradient(180deg,rgba(12,24,48,.96),rgba(6,13,29,.98))!important;
  border-color:rgba(110,241,255,.16)!important;
}

.aly1canyon-panel-head{
  gap:18px;
}

@media (max-width:767px){
  .aly1canyon-overview-stats{
    padding:16px;
    border-radius:22px;
  }
  .aly1canyon-overview-stats:before{
    left:16px;
  }
  .aly1canyon-home-title{
    width:100%;
  }
}

/* v0.1.4 - compact participation snapshot blocks */
.aly1canyon-rotation-grid{
  max-width:940px;
  margin:0 auto 18px;
  gap:14px;
}

.aly1canyon-rotation-panel{
  padding:18px 18px 16px;
  border-radius:22px;
}

.aly1canyon-rotation-panel .aly1canyon-panel-head{
  margin-bottom:12px;
}

.aly1canyon-rotation-panel .aly1canyon-kicker{
  margin-bottom:7px;
  font-size:10px;
}

.aly1canyon-rotation-panel h2{
  font-size:clamp(21px,2.1vw,27px);
  letter-spacing:-.025em;
}

.aly1canyon-rotation-panel .aly1canyon-mini-list{
  gap:6px;
}

.aly1canyon-rotation-panel .aly1canyon-mini-row{
  padding:9px 11px;
  border-radius:13px;
}

.aly1canyon-rotation-panel .aly1canyon-mini-row strong{
  font-size:13.5px;
}

.aly1canyon-rotation-panel .aly1canyon-mini-row span{
  font-size:13px;
}

@media (max-width:820px){
  .aly1canyon-rotation-grid{
    max-width:none;
  }
}

/* v0.1.8: minimal header fix based on stable v0.1.4.
   This intentionally changes only the hero/title layout and keeps v0.1.4 compact stats unchanged. */
.aly1canyon .aly1canyon-hero-content{min-width:0;}
.aly1canyon .aly1canyon-kicker{display:flex;width:max-content;max-width:100%;}
.aly1canyon .aly1canyon-home-title{display:block;width:max-content;max-width:100%;color:#fff!important;text-decoration:none!important;}
.aly1canyon .aly1canyon-home-title h1{display:block;margin:0 0 8px!important;}
.aly1canyon .aly1canyon-home-title > span{display:inline-flex;align-items:center;width:max-content;max-width:100%;min-height:24px;padding:0 10px;border-radius:999px;background:rgba(110,241,255,.10);border:1px solid rgba(110,241,255,.18);color:var(--cyan)!important;font-size:11px;line-height:1;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}
.aly1canyon .aly1canyon-home-title:hover > span{background:rgba(110,241,255,.16);border-color:rgba(110,241,255,.34);}
@media (max-width:980px){.aly1canyon .aly1canyon-hero{flex-direction:column;align-items:flex-start}.aly1canyon .aly1canyon-unlock-card{width:100%;flex:initial;max-width:360px}}

/* v0.1.9: explicit logout button + cleaner unlocked header state */
.aly1canyon .aly1canyon-unlock-card{flex-direction:column;align-items:stretch;}
.aly1canyon .aly1canyon-unlock-state{display:flex;align-items:center;gap:14px;}
.aly1canyon .aly1canyon-lock-form{margin:12px 0 0;display:block;}
.aly1canyon .aly1canyon-lock-form button{width:100%;min-height:28px;font-size:11px;background:rgba(255,209,102,.08);border-color:rgba(255,209,102,.22);color:var(--gold)!important;}
.aly1canyon .aly1canyon-lock-form button:hover{background:rgba(255,209,102,.13);border-color:rgba(255,209,102,.38);}

/* v0.2.0 — compact attendance board for long DS attendance checks */
.aly1canyon-attendance-panel{
  padding:16px;
}

.aly1canyon-attendance-summary{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 12px;
}

.aly1canyon-attendance-summary span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}

.aly1canyon-attendance-summary strong{
  color:#fff;
  font-weight:900;
}

.aly1canyon-attendance-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}

.aly1canyon-attendance-row{
  grid-template-columns:1fr;
  align-items:stretch;
  gap:6px;
  padding:10px;
  border-radius:15px;
  transition:border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.aly1canyon-attendance-row.is-main{
  border-left:2px solid rgba(110,241,255,.34);
}

.aly1canyon-attendance-row.is-substitute{
  border-left:2px solid rgba(255,209,102,.34);
}

.aly1canyon-attendance-row.is-attended{
  background:rgba(103,245,164,.045);
  border-color:rgba(103,245,164,.16);
}

.aly1canyon-attendance-row.is-no_show{
  background:rgba(255,99,125,.045);
  border-color:rgba(255,99,125,.18);
}

.aly1canyon-attendance-player{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
}

.aly1canyon-attendance-player strong{
  font-size:13px;
}

.aly1canyon-attendance-player span{
  margin-top:0;
  flex:0 0 auto;
  min-height:20px;
  padding:0 8px;
  font-size:10px;
}

.aly1canyon-attendance-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  justify-content:stretch;
}

.aly1canyon-attendance-option{
  min-height:28px;
  justify-content:center;
  padding:0 5px;
  font-size:11px!important;
}

.aly1canyon-attendance-option input{
  margin:0;
}

.aly1canyon-attendance-form .aly1canyon-form-actions{
  position:sticky;
  bottom:12px;
  z-index:5;
  margin-top:14px;
  padding:10px;
  justify-content:flex-end;
  border-radius:18px;
  background:rgba(5,10,24,.88);
  border:1px solid rgba(110,241,255,.16);
  box-shadow:0 16px 38px rgba(0,0,0,.36);
  backdrop-filter:blur(10px);
}

.aly1canyon-attendance-form .aly1canyon-btn-primary{
  min-width:170px;
}

@media (min-width:1180px){
  .aly1canyon-attendance-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:820px){
  .aly1canyon-attendance-list{
    grid-template-columns:1fr;
  }

  .aly1canyon-attendance-form .aly1canyon-form-actions{
    position:static;
  }
}

/* v0.2.1 — attendance is binary: attended by default, no-show only after review */
.aly1canyon-attendance-options{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.aly1canyon-attendance-option-unknown,
.aly1canyon-chip-unknown{
  display:none!important;
}
.aly1canyon-attendance-row.is-unknown{
  background:rgba(103,245,164,.045)!important;
  border-color:rgba(103,245,164,.16)!important;
}


/* v0.2.2 — player no-show hint in event picker */
.aly1canyon-player-noshow{display:inline-flex;align-items:center;width:max-content;max-width:100%;min-height:20px;padding:0 8px;border-radius:999px;font-size:11px;line-height:1;font-weight:900;letter-spacing:.02em}
.aly1canyon-player-noshow.is-clean{color:#9dffc4;background:rgba(103,245,164,.075);border:1px solid rgba(103,245,164,.18)}
.aly1canyon-player-noshow.is-warning{color:#ff8fa3;background:rgba(255,99,125,.10);border:1px solid rgba(255,99,125,.30);box-shadow:0 0 14px rgba(255,99,125,.08)}


/* v0.2.5 - Waterfox / GPU safe card rendering
   Removes complex layered backgrounds from DS event rows that could render as visible rectangles. */
.aly1canyon-app .aly1canyon-event-card,
.aly1canyon-app .aly1canyon-event-row,
.aly1canyon-app .aly1canyon-latest-event,
.aly1canyon-app .aly1canyon-event-item{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  background:
    linear-gradient(135deg, rgba(14,26,54,.94) 0%, rgba(7,15,32,.98) 100%) !important;
  background-image:
    linear-gradient(135deg, rgba(14,26,54,.94) 0%, rgba(7,15,32,.98) 100%) !important;
  border:1px solid rgba(126,178,255,.14) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
  mask-image:none !important;
  -webkit-mask-image:none !important;
  transform:none !important;
}

.aly1canyon-app .aly1canyon-event-card::before,
.aly1canyon-app .aly1canyon-event-card::after,
.aly1canyon-app .aly1canyon-event-row::before,
.aly1canyon-app .aly1canyon-event-row::after,
.aly1canyon-app .aly1canyon-latest-event::before,
.aly1canyon-app .aly1canyon-latest-event::after,
.aly1canyon-app .aly1canyon-event-item::before,
.aly1canyon-app .aly1canyon-event-item::after{
  content:none !important;
  display:none !important;
  opacity:0 !important;
  background:none !important;
}

/* Stats chips inside DS rows keep their own compact dark style, but no fancy overlays. */
.aly1canyon-app .aly1canyon-event-card [class*="stat"],
.aly1canyon-app .aly1canyon-event-row [class*="stat"],
.aly1canyon-app .aly1canyon-latest-event [class*="stat"],
.aly1canyon-app .aly1canyon-event-item [class*="stat"]{
  background:rgba(4,10,22,.66) !important;
  background-image:none !important;
  border:1px solid rgba(126,178,255,.10) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
}

/* Safer background for the Latest events section itself. */
.aly1canyon-app .aly1canyon-section-events,
.aly1canyon-app .aly1canyon-latest-events,
.aly1canyon-app .aly1canyon-events-panel{
  isolation:isolate !important;
  background:
    radial-gradient(circle at 92% 0%, rgba(110,241,255,.08), transparent 30%),
    linear-gradient(135deg, rgba(10,23,48,.96), rgba(6,13,29,.98)) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
  mask-image:none !important;
  -webkit-mask-image:none !important;
}


/* v0.2.6 - Correct Waterfox safe rendering selectors
   Previous safe fix targeted .aly1canyon-app by mistake.
   The real root class is .aly1canyon, so this forces the latest event list/cards to use solid safe backgrounds. */

/* Recent events panel: keep premium shape, remove pseudo/radial overlay that may render as blocks. */
.aly1canyon .aly1canyon-recent-panel{
  isolation:isolate !important;
  background:#07172f !important;
  background-image:none !important;
  border:1px solid rgba(126,178,255,.18) !important;
  box-shadow:0 18px 58px rgba(0,0,0,.34) !important;
  overflow:hidden !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
  mask-image:none !important;
  -webkit-mask-image:none !important;
}

.aly1canyon .aly1canyon-recent-panel:before,
.aly1canyon .aly1canyon-recent-panel:after{
  content:none !important;
  display:none !important;
  opacity:0 !important;
  background:none !important;
}

/* Event rows: no gradients, no blend, no masks, no pseudo layers. */
.aly1canyon .aly1canyon-event-card{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  background:#0b1428 !important;
  background-image:none !important;
  border:1px solid rgba(126,178,255,.14) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
  mask-image:none !important;
  -webkit-mask-image:none !important;
  transform:none !important;
  will-change:auto !important;
}

.aly1canyon .aly1canyon-event-card:hover{
  background:#0e1a33 !important;
  background-image:none !important;
  border-color:rgba(110,241,255,.26) !important;
  transform:none !important;
  box-shadow:none !important;
}

.aly1canyon .aly1canyon-event-card:before,
.aly1canyon .aly1canyon-event-card:after{
  content:none !important;
  display:none !important;
  opacity:0 !important;
  background:none !important;
}

/* Event row children stay clean and transparent except the small metric boxes. */
.aly1canyon .aly1canyon-event-main{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}

.aly1canyon .aly1canyon-event-meta{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
}

.aly1canyon .aly1canyon-event-meta span{
  background:#071124 !important;
  background-image:none !important;
  border:1px solid rgba(126,178,255,.10) !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  mix-blend-mode:normal !important;
}

/* Make sure the event list container itself has no artifact layer. */
.aly1canyon .aly1canyon-event-list{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  isolation:isolate !important;
}


/* v0.2.7 - Add Most no-shows rotation panel */
.aly1canyon .aly1canyon-rotation-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  max-width:1180px !important;
}

.aly1canyon .aly1canyon-rotation-panel-noshow{
  background:
    radial-gradient(circle at top right,rgba(255,94,126,.10),transparent 30%),
    linear-gradient(180deg,rgba(12,24,48,.96),rgba(6,13,29,.98)) !important;
  border-color:rgba(255,94,126,.20) !important;
}

.aly1canyon .aly1canyon-rotation-panel-noshow .aly1canyon-mini-row span{
  color:#ff7c9c !important;
}

@media (max-width:1100px){
  .aly1canyon .aly1canyon-rotation-grid{
    grid-template-columns:1fr !important;
    max-width:640px !important;
  }
}

/* v0.2.9 - Expandable full rotation stats */
.aly1canyon .aly1canyon-full-stats{
  margin-top:12px;
  border-radius:16px;
  background:#081225;
  border:1px solid rgba(126,178,255,.12);
  overflow:hidden;
}

.aly1canyon .aly1canyon-full-stats summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  min-height:42px;
  padding:0 13px;
  color:var(--cyan);
  font-weight:900;
  user-select:none;
}

.aly1canyon .aly1canyon-full-stats summary::-webkit-details-marker{
  display:none;
}

.aly1canyon .aly1canyon-full-stats summary span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.aly1canyon .aly1canyon-full-stats summary span:before{
  content:"+";
  display:inline-flex;
  width:20px;
  height:20px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(110,241,255,.10);
  border:1px solid rgba(110,241,255,.18);
  color:var(--cyan);
  font-size:14px;
  line-height:1;
}

.aly1canyon .aly1canyon-full-stats[open] summary span:before{
  content:"−";
}

.aly1canyon .aly1canyon-full-stats summary small{
  color:var(--muted);
  font-size:11px;
  font-weight:800;
}

.aly1canyon .aly1canyon-full-stats-inner{
  border-top:1px solid rgba(126,178,255,.10);
  padding:13px;
}

.aly1canyon .aly1canyon-full-stats-inner h3{
  margin:0 0 10px;
  color:#fff;
  font-size:14px;
  letter-spacing:.02em;
}


.aly1canyon .aly1canyon-full-stats-note{
  margin:-4px 0 10px;
  color:rgba(159,178,212,.82);
  font-size:11.5px;
  line-height:1.45;
}

.aly1canyon .aly1canyon-full-table-wrap{
  max-height:360px;
  overflow:auto;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.06);
  background:#060e1d;
}

.aly1canyon .aly1canyon-full-stats-table{
  width:100%;
  border-collapse:collapse;
  min-width:430px;
  font-size:11px;
}

.aly1canyon .aly1canyon-full-stats-table th,
.aly1canyon .aly1canyon-full-stats-table td{
  padding:9px 10px;
  border-bottom:1px solid rgba(255,255,255,.06);
  text-align:left;
  color:var(--muted);
  white-space:nowrap;
}

.aly1canyon .aly1canyon-full-stats-table th{
  position:sticky;
  top:0;
  z-index:1;
  background:#0b1529;
  color:#dce8ff;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.aly1canyon .aly1canyon-full-stats-table td:first-child,
.aly1canyon .aly1canyon-full-stats-table th:first-child{
  width:44px;
  text-align:center;
}

.aly1canyon .aly1canyon-full-stats-table td:not(:nth-child(2)),
.aly1canyon .aly1canyon-full-stats-table th:not(:nth-child(2)){
  text-align:right;
}

.aly1canyon .aly1canyon-full-stats-table td strong{
  color:#fff;
}

.aly1canyon .aly1canyon-full-stats-table tr:last-child td{
  border-bottom:0;
}

.aly1canyon .aly1canyon-full-stats-table tr:hover td{
  background:#0a1428;
}

.aly1canyon .aly1canyon-full-main-metric{
  color:var(--cyan)!important;
  font-weight:900;
}

.aly1canyon .aly1canyon-rotation-panel-noshow .aly1canyon-full-main-metric{
  color:#ff7c9c!important;
}

@media (max-width:520px){
  .aly1canyon .aly1canyon-full-stats summary{
    align-items:flex-start;
    flex-direction:column;
    justify-content:center;
    padding:10px 13px;
  }
}

/* v0.3.3 — clickable DS player profiles */
.aly1canyon .aly1canyon-player-link{
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900;
  border-radius:10px;
  outline:none;
}

.aly1canyon .aly1canyon-player-link:hover,
.aly1canyon .aly1canyon-player-link:focus-visible{
  color:var(--cyan)!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
}

.aly1canyon .aly1canyon-mini-row .aly1canyon-player-link{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.aly1canyon .aly1canyon-chip.aly1canyon-player-link{
  text-decoration:none!important;
}

.aly1canyon .aly1canyon-chip.aly1canyon-player-link:hover,
.aly1canyon .aly1canyon-chip.aly1canyon-player-link:focus-visible{
  transform:translateY(-1px);
  filter:brightness(1.08);
}

.aly1canyon-player-profile-panel{
  margin-top:22px;
  border-color:rgba(110,241,255,.20)!important;
}

.aly1canyon-player-profile-stats{
  margin-bottom:16px;
}

.aly1canyon-profile-mini-summary{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 18px;
}

.aly1canyon-profile-mini-summary span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(110,241,255,.055);
  border:1px solid rgba(110,241,255,.14);
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}

.aly1canyon-profile-mini-summary strong{
  color:#fff;
  font-weight:950;
}

.aly1canyon-player-history-wrap{
  margin-top:12px;
}

.aly1canyon-player-history-wrap h3{
  margin:0 0 12px;
  color:#fff;
  font-size:20px;
}

.aly1canyon-player-history-table-wrap{
  max-height:460px;
}

.aly1canyon .aly1canyon-player-history-table a{
  color:#dce8ff!important;
  text-decoration:none!important;
  font-weight:800;
}

.aly1canyon .aly1canyon-player-history-table a:hover{
  color:var(--cyan)!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
}

.aly1canyon-inline-status{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}

.aly1canyon-inline-status-attended{
  color:#9dffc4;
  background:rgba(103,245,164,.08);
  border:1px solid rgba(103,245,164,.20);
}

.aly1canyon-inline-status-absent{
  color:#ffabb8;
  background:rgba(255,99,125,.08);
  border:1px solid rgba(255,99,125,.22);
}

@media (max-width:767px){
  .aly1canyon-player-profile-panel .aly1canyon-detail-head{
    gap:12px;
  }
  .aly1canyon-profile-mini-summary{
    flex-direction:column;
  }
  .aly1canyon-profile-mini-summary span{
    justify-content:space-between;
    width:100%;
  }
  .aly1canyon-player-history-table-wrap{
    max-height:420px;
  }
}

/* v0.3.4 — mobile UX pass */
@media (hover:none){
  .aly1canyon button:hover,
  .aly1canyon-btn:hover,
  .aly1canyon-home-title:hover,
  .aly1canyon .aly1canyon-chip.aly1canyon-player-link:hover{
    transform:none!important;
    filter:none!important;
  }
}

@media (max-width:767px){
  .aly1canyon{
    padding:12px 8px 28px;
    max-width:100%;
  }

  .aly1canyon:before{
    opacity:.55;
  }

  .aly1canyon-hero{
    padding:18px 15px;
    margin-bottom:12px;
    border-radius:18px;
    gap:14px;
  }

  .aly1canyon-hero h1{
    font-size:34px;
    letter-spacing:-.055em;
    line-height:.98;
  }

  .aly1canyon-hero p{
    font-size:13.5px;
    line-height:1.5;
  }

  .aly1canyon-home-title span{
    min-height:26px;
    padding:0 10px;
    font-size:9.5px;
  }

  .aly1canyon-kicker{
    margin-bottom:8px;
    font-size:9.5px;
    letter-spacing:.15em;
  }

  .aly1canyon-unlock-card{
    padding:12px;
    border-radius:16px;
  }

  .aly1canyon-unlock-card strong{
    font-size:13.5px;
  }

  .aly1canyon-unlock-card small{
    font-size:11.5px;
  }

  .aly1canyon-panel,
  .aly1canyon-player-column,
  .aly1canyon-picker-available,
  .aly1canyon-selected-box,
  .aly1canyon-attendance-panel{
    padding:13px;
    border-radius:17px;
  }

  .aly1canyon-panel-head{
    gap:10px;
    margin-bottom:12px;
  }

  .aly1canyon-panel-head h2,
  .aly1canyon-detail-head h2{
    font-size:22px;
    line-height:1.08;
  }

  .aly1canyon-soft,
  .aly1canyon-panel-head p,
  .aly1canyon-detail-head p{
    font-size:11px;
    line-height:1.45;
  }

  .aly1canyon-overview-stats,
  .aly1canyon-detail-stats,
  .aly1canyon-player-profile-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    padding:10px;
    margin-bottom:12px;
    border-radius:18px;
  }

  .aly1canyon-stat-card{
    padding:11px 10px;
    border-radius:15px;
    min-width:0;
  }

  .aly1canyon-stat-card span{
    font-size:9.5px;
    letter-spacing:.07em;
  }

  .aly1canyon-stat-card strong{
    margin:5px 0 3px;
    font-size:22px;
  }

  .aly1canyon-stat-card small{
    font-size:9.5px;
    line-height:1.25;
  }

  .aly1canyon-event-list{
    gap:9px;
  }

  .aly1canyon-event-card{
    padding:12px;
    border-radius:16px;
    gap:10px;
  }

  .aly1canyon-event-main{
    gap:7px;
  }

  .aly1canyon-event-main h3{
    margin:0;
    font-size:14px;
    line-height:1.1;
  }

  .aly1canyon-event-main p{
    font-size:12px;
    line-height:1.35;
  }

  .aly1canyon-result{
    min-height:24px;
    padding:0 8px;
    font-size:10px;
    letter-spacing:.08em;
  }

  .aly1canyon-event-meta{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }

  .aly1canyon-event-meta span{
    min-height:28px;
    padding:7px 8px;
    border-radius:10px;
    font-size:9.5px;
  }

  .aly1canyon-event-meta strong{
    font-size:13px;
  }

  .aly1canyon-rotation-grid{
    gap:12px;
  }

  .aly1canyon-rotation-panel .aly1canyon-panel-head{
    margin-bottom:9px;
  }

  .aly1canyon-mini-list{
    gap:7px;
  }

  .aly1canyon-mini-row{
    grid-template-columns:minmax(0,1fr) auto;
    gap:9px;
    min-height:40px;
    padding:9px 10px;
    border-radius:13px;
  }

  .aly1canyon-mini-row strong,
  .aly1canyon-mini-row .aly1canyon-player-link{
    font-size:13px;
  }

  .aly1canyon-mini-row span{
    font-size:12px;
    white-space:nowrap;
  }

  .aly1canyon .aly1canyon-full-stats{
    margin-top:8px;
    border-radius:14px;
  }

  .aly1canyon .aly1canyon-full-stats summary{
    gap:7px;
    padding:10px 11px;
  }

  .aly1canyon .aly1canyon-full-stats summary span{
    font-size:12px;
  }

  .aly1canyon .aly1canyon-full-stats summary small{
    font-size:9.5px;
  }

  .aly1canyon .aly1canyon-full-stats-inner{
    padding:10px;
  }

  .aly1canyon .aly1canyon-full-table-wrap{
    max-height:330px;
    overflow:auto;
    -webkit-overflow-scrolling:touch;
  }

  .aly1canyon .aly1canyon-full-stats-table{
    min-width:520px;
    font-size:12px;
  }

  .aly1canyon .aly1canyon-full-stats-table th,
  .aly1canyon .aly1canyon-full-stats-table td{
    padding:8px 8px;
  }

  .aly1canyon .aly1canyon-full-stats-table th:nth-child(2),
  .aly1canyon .aly1canyon-full-stats-table td:nth-child(2){
    position:sticky;
    left:0;
    z-index:2;
    background:#081224;
    box-shadow:8px 0 14px rgba(0,0,0,.22);
  }

  .aly1canyon .aly1canyon-full-stats-table th:nth-child(2){
    z-index:3;
    background:#0b1529;
  }

  .aly1canyon-detail-head{
    gap:10px;
    margin-bottom:13px;
  }

  .aly1canyon-detail-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
  }

  .aly1canyon-detail-actions .aly1canyon-btn,
  .aly1canyon-detail-actions button,
  .aly1canyon-detail-actions form{
    width:100%;
  }

  .aly1canyon-roster-columns{
    gap:11px;
  }

  .aly1canyon-player-column h3{
    font-size:14px;
    margin-bottom:10px;
  }

  .aly1canyon-chip-list{
    gap:7px;
  }

  .aly1canyon-chip{
    min-height:30px;
    padding:0 9px;
    font-size:12px;
    max-width:100%;
  }

  .aly1canyon-form-grid{
    gap:10px;
  }

  .aly1canyon input,
  .aly1canyon select,
  .aly1canyon textarea{
    min-height:44px;
    border-radius:10px;
    padding:11px 12px;
    font-size:15px;
  }

  .aly1canyon button,
  .aly1canyon-btn{
    min-height:42px;
    padding:0 14px;
    font-size:13px;
  }

  .aly1canyon-picker{
    gap:12px;
  }

  .aly1canyon-picker-title h3,
  .aly1canyon-selected-head h3{
    font-size:14px;
  }

  .aly1canyon-player-grid{
    max-height:420px;
    gap:6px;
  }

  .aly1canyon-player-option{
    padding:10px;
    border-radius:13px;
  }

  .aly1canyon-player-option strong{
    font-size:13px;
  }

  .aly1canyon-player-option-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
  }

  .aly1canyon-player-option-actions button{
    min-height:28px;
    padding:0 8px;
  }

  .aly1canyon-selected-list{
    gap:6px;
  }

  .aly1canyon-selected-player{
    padding:10px;
    border-radius:13px;
  }

  .aly1canyon-attendance-head h3{
    font-size:14px;
  }

  .aly1canyon-attendance-row{
    gap:9px;
    padding:10px;
    border-radius:13px;
  }

  .aly1canyon-attendance-options{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
  }

  .aly1canyon-attendance-option{
    min-height:36px;
    padding:0 6px;
    font-size:11px!important;
  }

  .aly1canyon-profile-mini-summary{
    gap:7px;
    margin-bottom:12px;
  }

  .aly1canyon-profile-mini-summary span{
    min-height:32px;
    padding:0 10px;
    font-size:11.5px;
  }

  .aly1canyon-player-history-wrap h3{
    font-size:14px;
  }

  .aly1canyon-player-history-table-wrap{
    max-height:360px;
  }

  .aly1canyon-player-history-table{
    min-width:610px!important;
  }
}

@media (max-width:420px){
  .aly1canyon-overview-stats,
  .aly1canyon-detail-stats,
  .aly1canyon-player-profile-stats{
    gap:7px;
  }

  .aly1canyon-stat-card{
    padding:10px 8px;
  }

  .aly1canyon-stat-card strong{
    font-size:20px;
  }

  .aly1canyon-event-meta span{
    font-size:10px;
  }

  .aly1canyon-mini-row span{
    font-size:11.5px;
  }
}

/* v0.3.5 — Compact Latest DS events cards, especially on mobile */
.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-card{
  grid-template-columns:1fr;
  gap:12px;
  padding:14px 16px;
}

.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-main{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  column-gap:12px;
  row-gap:3px;
  align-items:start;
}

.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-main .aly1canyon-result{
  grid-column:2;
  grid-row:1 / span 2;
  justify-self:end;
  align-self:start;
  margin-top:1px;
}

.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-main h3{
  grid-column:1;
  grid-row:1;
}

.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-main p{
  grid-column:1;
  grid-row:2;
}

.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
}

.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta span{
  min-height:42px;
  padding:8px 9px;
}

.aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta strong{
  margin-top:2px;
}

@media (max-width:767px){
  .aly1canyon .aly1canyon-recent-panel{
    padding:16px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-panel-head{
    margin-bottom:14px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-list{
    gap:10px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-card{
    padding:12px;
    gap:9px;
    border-radius:17px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-main{
    column-gap:9px;
    row-gap:2px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-main h3{
    font-size:14px;
    line-height:1.08;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-main p{
    font-size:12px;
    line-height:1.25;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-result{
    min-height:24px;
    padding:0 8px;
    font-size:9.5px;
    letter-spacing:.07em;
    white-space:nowrap;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:6px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta span{
    min-height:38px;
    padding:6px 5px;
    border-radius:11px;
    font-size:9.5px;
    line-height:1.1;
    text-align:center;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta strong{
    margin-top:3px;
    font-size:13px;
    line-height:1;
  }
}

@media (max-width:380px){
  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-card{
    padding:10px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta{
    gap:5px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta span{
    padding:6px 3px;
    font-size:8.8px;
  }

  .aly1canyon .aly1canyon-recent-panel .aly1canyon-event-meta strong{
    font-size:12px;
  }
}

/* v0.3.6 — compact rotation insights with 3 colored action buttons */
.aly1canyon-rotation-insights{
  max-width:1040px;
  margin:0 auto 18px;
  background:
    radial-gradient(circle at top right,rgba(110,241,255,.08),transparent 28%),
    radial-gradient(circle at bottom left,rgba(143,125,255,.08),transparent 34%),
    linear-gradient(180deg,rgba(12,24,48,.96),rgba(6,13,29,.98))!important;
}

.aly1canyon-insight-buttons{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.aly1canyon-insight-btn{
  appearance:none;
  width:100%;
  min-height:110px;
  padding:18px 16px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.03);
  text-align:left;
  color:#fff!important;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:6px;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease;
}

.aly1canyon-insight-btn:hover{
  transform:translateY(-3px);
}

.aly1canyon-insight-btn-title{
  display:block;
  font-size:21px;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.03em;
}

.aly1canyon-insight-btn small{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
  font-weight:700;
}

.aly1canyon-insight-btn-registered{
  border-color:rgba(110,241,255,.18);
  background:linear-gradient(180deg,rgba(110,241,255,.08),rgba(255,255,255,.02));
  box-shadow:inset 0 0 0 1px rgba(110,241,255,.04);
}
.aly1canyon-insight-btn-registered .aly1canyon-insight-btn-title{color:#8fefff;}
.aly1canyon-insight-btn-registered:hover,
.aly1canyon-insight-btn-registered.is-active{
  border-color:rgba(110,241,255,.36);
  box-shadow:0 14px 34px rgba(0,0,0,.25),0 0 20px rgba(110,241,255,.08);
}

.aly1canyon-insight-btn-low{
  border-color:rgba(143,125,255,.18);
  background:linear-gradient(180deg,rgba(143,125,255,.08),rgba(255,255,255,.02));
  box-shadow:inset 0 0 0 1px rgba(143,125,255,.04);
}
.aly1canyon-insight-btn-low .aly1canyon-insight-btn-title{color:#b7abff;}
.aly1canyon-insight-btn-low:hover,
.aly1canyon-insight-btn-low.is-active{
  border-color:rgba(143,125,255,.38);
  box-shadow:0 14px 34px rgba(0,0,0,.25),0 0 20px rgba(143,125,255,.10);
}

.aly1canyon-insight-btn-noshow{
  border-color:rgba(255,99,125,.22);
  background:linear-gradient(180deg,rgba(255,99,125,.08),rgba(255,255,255,.02));
  box-shadow:inset 0 0 0 1px rgba(255,99,125,.04);
}
.aly1canyon-insight-btn-noshow .aly1canyon-insight-btn-title{color:#ff9aaa;}
.aly1canyon-insight-btn-noshow:hover,
.aly1canyon-insight-btn-noshow.is-active{
  border-color:rgba(255,99,125,.40);
  box-shadow:0 14px 34px rgba(0,0,0,.25),0 0 20px rgba(255,99,125,.10);
}

.aly1canyon-insight-panels{
  margin-top:16px;
}

.aly1canyon-insight-panel{
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}

.aly1canyon-insight-panel + .aly1canyon-insight-panel{
  margin-top:12px;
}

.aly1canyon-insight-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}

.aly1canyon-insight-panel-head h3{
  margin:0 0 6px;
  color:#fff;
  font-size:22px;
  line-height:1.1;
}

.aly1canyon-insight-count{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.09);
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

@media (max-width:900px){
  .aly1canyon-insight-buttons{
    grid-template-columns:1fr;
  }
  .aly1canyon-insight-btn{
    min-height:94px;
  }
}

@media (max-width:767px){
  .aly1canyon-insight-btn-title{
    font-size:14px;
  }
  .aly1canyon-insight-btn small{
    font-size:12px;
  }
  .aly1canyon-insight-panel{
    padding:14px;
    border-radius:18px;
  }
  .aly1canyon-insight-panel-head{
    flex-direction:column;
  }
  .aly1canyon-insight-count{
    white-space:normal;
  }
}

/* v0.3.7 — slimmer, less rounded, more high-tech participation insight buttons */
.aly1canyon-insight-buttons{
  gap:12px;
}

.aly1canyon-insight-btn{
  position:relative;
  overflow:hidden;
  min-height:154px;
  padding:16px 15px;
  border-radius:18px;
  align-items:center;
  text-align:center;
  gap:7px;
  background:linear-gradient(180deg,rgba(12,23,43,.97),rgba(7,14,26,.99));
  border-color:rgba(100,155,235,.18);
  box-shadow:0 12px 28px rgba(0,0,0,.22);
}

.aly1canyon-insight-btn::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.03);
}

.aly1canyon-insight-icon{
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:18px;
  font-size:28px;
  font-weight:900;
  line-height:1;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 0 18px rgba(255,255,255,.03);
}

.aly1canyon-insight-tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  font-size:10px;
  line-height:1;
  letter-spacing:.14em;
  font-weight:900;
  text-transform:uppercase;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}

.aly1canyon-insight-btn-title{
  font-size:20px;
  line-height:1.05;
  font-weight:950;
  letter-spacing:-.03em;
}

.aly1canyon-insight-btn small{
  max-width:220px;
  font-size:13px;
  line-height:1.45;
}

.aly1canyon-insight-btn-registered{
  background:
    radial-gradient(circle at 50% 12%,rgba(110,241,255,.08),transparent 34%),
    linear-gradient(180deg,rgba(12,23,43,.97),rgba(7,14,26,.99));
}
.aly1canyon-insight-btn-registered .aly1canyon-insight-icon,
.aly1canyon-insight-btn-registered .aly1canyon-insight-tag{
  color:#66ddff;
  border-color:rgba(102,221,255,.16);
}
.aly1canyon-insight-btn-registered.is-active,
.aly1canyon-insight-btn-registered:hover{
  border-color:rgba(102,221,255,.34);
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 22px rgba(102,221,255,.07);
}

.aly1canyon-insight-btn-low{
  background:
    radial-gradient(circle at 50% 12%,rgba(143,125,255,.08),transparent 34%),
    linear-gradient(180deg,rgba(12,23,43,.97),rgba(7,14,26,.99));
}
.aly1canyon-insight-btn-low .aly1canyon-insight-icon,
.aly1canyon-insight-btn-low .aly1canyon-insight-tag{
  color:#8f7dff;
  border-color:rgba(143,125,255,.18);
}
.aly1canyon-insight-btn-low.is-active,
.aly1canyon-insight-btn-low:hover{
  border-color:rgba(143,125,255,.36);
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 22px rgba(143,125,255,.09);
}

.aly1canyon-insight-btn-noshow{
  background:
    radial-gradient(circle at 50% 12%,rgba(255,99,125,.08),transparent 34%),
    linear-gradient(180deg,rgba(12,23,43,.97),rgba(7,14,26,.99));
}
.aly1canyon-insight-btn-noshow .aly1canyon-insight-icon,
.aly1canyon-insight-btn-noshow .aly1canyon-insight-tag{
  color:#ff6b82;
  border-color:rgba(255,107,130,.18);
}
.aly1canyon-insight-btn-noshow.is-active,
.aly1canyon-insight-btn-noshow:hover{
  border-color:rgba(255,107,130,.36);
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 22px rgba(255,107,130,.09);
}

@media (max-width:900px){
  .aly1canyon-insight-btn{
    min-height:138px;
  }
}

@media (max-width:767px){
  .aly1canyon-insight-btn{
    min-height:128px;
    padding:14px 12px;
    border-radius:16px;
  }
  .aly1canyon-insight-btn::after{
    border-radius:16px;
  }
  .aly1canyon-insight-icon{
    width:50px;
    height:50px;
    border-radius:16px;
    font-size:24px;
  }
  .aly1canyon-insight-btn-title{
    font-size:14px;
  }
  .aly1canyon-insight-btn small{
    font-size:12px;
  }
}

/* v0.3.8 — insight buttons redesigned to match command center menu cards */
.aly1canyon-insight-buttons{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.aly1canyon-insight-btn{
  --tool-accent:#9beeff;
  --tool-accent-rgb:155,238,255;
  position:relative;
  overflow:hidden;
  min-height:248px;
  padding:20px 16px 18px;
  border-radius:24px;
  text-align:center;
  text-decoration:none!important;
  color:#f3f8ff!important;
  border:1px solid rgba(100,155,235,.22);
  background:linear-gradient(180deg,rgba(12,23,43,.97),rgba(7,14,26,.99));
  box-shadow:0 14px 34px rgba(0,0,0,.26);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:0;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}

.aly1canyon-insight-btn::before{
  content:"";
  position:absolute;
  top:0;
  left:18px;
  right:18px;
  height:2px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,transparent,rgba(var(--tool-accent-rgb),.85),transparent);
  opacity:.62;
  pointer-events:none;
}

.aly1canyon-insight-btn:hover,
.aly1canyon-insight-btn.is-active{
  transform:translateY(-4px);
  border-color:rgba(var(--tool-accent-rgb),.45);
  background:linear-gradient(180deg,rgba(15,29,53,.98),rgba(8,16,30,.99));
  box-shadow:0 18px 42px rgba(0,0,0,.32),0 0 22px rgba(var(--tool-accent-rgb),.08);
}

.aly1canyon-insight-icon-wrap{
  width:86px;
  height:86px;
  margin:0 auto 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:24px;
  background:radial-gradient(circle at 50% 35%,rgba(var(--tool-accent-rgb),.14),transparent 58%),rgba(255,255,255,.025);
  border:1px solid rgba(var(--tool-accent-rgb),.18);
  box-shadow:inset 0 0 22px rgba(var(--tool-accent-rgb),.04),0 0 18px rgba(var(--tool-accent-rgb),.05);
}

.aly1canyon-insight-icon-img{
  display:block;
  width:68px;
  height:68px;
  object-fit:contain;
  object-position:center;
}

.aly1canyon-insight-tag{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:24px;
  margin-bottom:10px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(var(--tool-accent-rgb),.055);
  border:1px solid rgba(var(--tool-accent-rgb),.16);
  color:var(--tool-accent);
  font-size:10px;
  line-height:1;
  letter-spacing:.14em;
  font-weight:900;
  text-transform:uppercase;
}

.aly1canyon-insight-btn-title{
  margin:0 0 10px;
  color:#fff;
  font-size:22px;
  line-height:1.08;
  letter-spacing:-.03em;
  font-weight:950;
}

.aly1canyon-insight-btn small{
  display:block;
  margin:0;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.5;
  max-width:240px;
}

.aly1canyon-insight-cta{
  margin-top:auto;
  padding-top:18px;
  color:var(--tool-accent);
  font-size:13.5px;
  font-weight:850;
}

.aly1canyon-insight-cta::after{
  content:" →";
}

.aly1canyon-insight-btn-registered{
  --tool-accent:#66ddff;
  --tool-accent-rgb:102,221,255;
}
.aly1canyon-insight-btn-low{
  --tool-accent:#8f7dff;
  --tool-accent-rgb:143,125,255;
}
.aly1canyon-insight-btn-noshow{
  --tool-accent:#ff6b82;
  --tool-accent-rgb:255,107,130;
}

@media (max-width:1024px){
  .aly1canyon-insight-buttons{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:767px){
  .aly1canyon-insight-buttons{
    grid-template-columns:1fr;
    gap:12px;
  }
  .aly1canyon-insight-btn{
    min-height:220px;
    padding:16px 12px 15px;
    border-radius:20px;
  }
  .aly1canyon-insight-icon-wrap{
    width:76px;
    height:76px;
    margin-bottom:13px;
    border-radius:22px;
  }
  .aly1canyon-insight-icon-img{
    width:60px;
    height:60px;
  }
  .aly1canyon-insight-btn-title{
    font-size:14px;
  }
  .aly1canyon-insight-btn small{
    font-size:11px;
    line-height:1.42;
  }
  .aly1canyon-insight-cta{
    padding-top:13px;
    font-size:11px;
  }
}

@media (max-width:390px){
  .aly1canyon-insight-btn{
    min-height:208px;
    padding:14px 10px;
  }
  .aly1canyon-insight-icon-wrap{
    width:70px;
    height:70px;
  }
  .aly1canyon-insight-icon-img{
    width:56px;
    height:56px;
  }
  .aly1canyon-insight-btn-title{
    font-size:16px;
  }
  .aly1canyon-insight-btn small{
    font-size:12px;
  }
}


/* v0.3.9 — force Command Center card style for Participation Insights
   This overrides the generic .aly1canyon button pill style that made the cards look round/oval. */
.aly1canyon .aly1canyon-rotation-insights{
  width:100% !important;
  max-width:none !important;
  margin:0 0 18px !important;
  padding:24px !important;
  border-radius:28px !important;
}

.aly1canyon .aly1canyon-insight-buttons{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  width:100% !important;
}

.aly1canyon .aly1canyon-insight-btn{
  --tool-accent:#9beeff;
  --tool-accent-rgb:155,238,255;

  position:relative !important;
  overflow:hidden !important;
  appearance:none !important;

  width:100% !important;
  min-height:215px !important;
  padding:18px 16px 16px !important;

  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:0 !important;

  border-radius:24px !important;
  border:1px solid rgba(100,155,235,.22) !important;
  background:
    linear-gradient(180deg, rgba(12,23,43,.97), rgba(7,14,26,.99)) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.26) !important;

  text-align:center !important;
  color:#f3f8ff !important;
  transform:none;
  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease !important;
}

.aly1canyon .aly1canyon-insight-btn::before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  left:18px !important;
  right:18px !important;
  height:2px !important;
  border-radius:0 0 999px 999px !important;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(var(--tool-accent-rgb), .85),
    transparent
  ) !important;
  opacity:.62 !important;
  pointer-events:none !important;
}

.aly1canyon .aly1canyon-insight-btn::after{
  display:none !important;
}

.aly1canyon .aly1canyon-insight-btn:hover,
.aly1canyon .aly1canyon-insight-btn.is-active{
  transform:translateY(-4px) !important;
  border-color:rgba(var(--tool-accent-rgb), .45) !important;
  background:
    linear-gradient(180deg, rgba(15,29,53,.98), rgba(8,16,30,.99)) !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.32),
    0 0 22px rgba(var(--tool-accent-rgb), .08) !important;
}

.aly1canyon .aly1canyon-insight-icon-wrap{
  width:86px !important;
  height:86px !important;
  margin:0 auto 14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  border-radius:24px !important;
  border:1px solid rgba(var(--tool-accent-rgb), .24) !important;
  background:
    radial-gradient(circle at 50% 35%, rgba(var(--tool-accent-rgb), .18), transparent 58%),
    rgba(255,255,255,.025) !important;
  box-shadow:
    inset 0 0 22px rgba(var(--tool-accent-rgb), .045),
    0 0 18px rgba(var(--tool-accent-rgb), .06) !important;
}

.aly1canyon .aly1canyon-insight-icon-img{
  display:block !important;
  width:68px !important;
  height:68px !important;
  object-fit:contain !important;
  object-position:center !important;
  filter:
    drop-shadow(0 0 8px rgba(var(--tool-accent-rgb), .22))
    drop-shadow(0 0 16px rgba(var(--tool-accent-rgb), .08)) !important;
}

.aly1canyon .aly1canyon-insight-tag{
  display:inline-flex !important;
  justify-content:center !important;
  align-items:center !important;
  min-height:24px !important;
  margin:0 0 10px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  background:rgba(var(--tool-accent-rgb), .055) !important;
  border:1px solid rgba(var(--tool-accent-rgb), .16) !important;
  color:var(--tool-accent) !important;
  font-size:10px !important;
  line-height:1 !important;
  letter-spacing:.14em !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}

.aly1canyon .aly1canyon-insight-btn-title{
  display:block !important;
  margin:0 0 9px !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
  font-weight:950 !important;
}

.aly1canyon .aly1canyon-insight-btn small{
  display:block !important;
  margin:0 !important;
  max-width:240px !important;
  color:var(--muted) !important;
  font-size:13px !important;
  line-height:1.46 !important;
  font-weight:700 !important;
}

.aly1canyon .aly1canyon-insight-cta{
  display:block !important;
  margin-top:auto !important;
  padding-top:15px !important;
  color:var(--tool-accent) !important;
  font-size:13px !important;
  font-weight:850 !important;
  line-height:1.2 !important;
}

.aly1canyon .aly1canyon-insight-cta::after{
  content:" →" !important;
}

.aly1canyon .aly1canyon-insight-btn-registered{
  --tool-accent:#66ddff;
  --tool-accent-rgb:102,221,255;
}

.aly1canyon .aly1canyon-insight-btn-low{
  --tool-accent:#8f7dff;
  --tool-accent-rgb:143,125,255;
}

.aly1canyon .aly1canyon-insight-btn-noshow{
  --tool-accent:#ff6b82;
  --tool-accent-rgb:255,107,130;
}

@media (max-width:1024px){
  .aly1canyon .aly1canyon-insight-buttons{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  .aly1canyon .aly1canyon-insight-btn{
    min-height:205px !important;
    padding:16px 12px 15px !important;
    border-radius:22px !important;
  }
  .aly1canyon .aly1canyon-insight-btn-title{
    font-size:18px !important;
  }
}

@media (max-width:767px){
  .aly1canyon .aly1canyon-rotation-insights{
    padding:18px !important;
    border-radius:22px !important;
  }

  .aly1canyon .aly1canyon-insight-buttons{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .aly1canyon .aly1canyon-insight-btn{
    min-height:0 !important;
    padding:14px 14px 13px !important;
    border-radius:20px !important;
  }

  .aly1canyon .aly1canyon-insight-icon-wrap{
    width:72px !important;
    height:72px !important;
    margin-bottom:12px !important;
    border-radius:20px !important;
  }

  .aly1canyon .aly1canyon-insight-icon-img{
    width:58px !important;
    height:58px !important;
  }

  .aly1canyon .aly1canyon-insight-btn-title{
    font-size:18px !important;
    margin-bottom:8px !important;
  }

  .aly1canyon .aly1canyon-insight-btn small{
    font-size:12.5px !important;
    line-height:1.4 !important;
  }

  .aly1canyon .aly1canyon-insight-cta{
    padding-top:12px !important;
    font-size:12.5px !important;
  }
}


/* v0.4.0 — keep Participation Insights in 3 compact columns on mobile */
@media (max-width:767px){
  .aly1canyon .aly1canyon-insight-buttons{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
  }

  .aly1canyon .aly1canyon-insight-btn{
    min-height:152px !important;
    padding:10px 6px 9px !important;
    border-radius:16px !important;
  }

  .aly1canyon .aly1canyon-insight-btn::before{
    left:10px !important;
    right:10px !important;
  }

  .aly1canyon .aly1canyon-insight-icon-wrap{
    width:48px !important;
    height:48px !important;
    margin-bottom:7px !important;
    border-radius:15px !important;
  }

  .aly1canyon .aly1canyon-insight-icon-img{
    width:39px !important;
    height:39px !important;
  }

  .aly1canyon .aly1canyon-insight-tag{
    min-height:18px !important;
    margin-bottom:6px !important;
    padding:0 5px !important;
    font-size:7.5px !important;
    letter-spacing:.08em !important;
  }

  .aly1canyon .aly1canyon-insight-btn-title{
    margin-bottom:5px !important;
    font-size:12.5px !important;
    line-height:1.08 !important;
    letter-spacing:-.02em !important;
  }

  .aly1canyon .aly1canyon-insight-btn small{
    display:none !important;
  }

  .aly1canyon .aly1canyon-insight-cta{
    padding-top:6px !important;
    font-size:10.5px !important;
  }
}

@media (max-width:390px){
  .aly1canyon .aly1canyon-insight-buttons{
    gap:6px !important;
  }

  .aly1canyon .aly1canyon-insight-btn{
    min-height:142px !important;
    padding:9px 5px 8px !important;
    border-radius:15px !important;
  }

  .aly1canyon .aly1canyon-insight-icon-wrap{
    width:44px !important;
    height:44px !important;
    margin-bottom:6px !important;
    border-radius:14px !important;
  }

  .aly1canyon .aly1canyon-insight-icon-img{
    width:36px !important;
    height:36px !important;
  }

  .aly1canyon .aly1canyon-insight-tag{
    font-size:7px !important;
    padding:0 4px !important;
  }

  .aly1canyon .aly1canyon-insight-btn-title{
    font-size:11.5px !important;
  }

  .aly1canyon .aly1canyon-insight-cta{
    font-size:10px !important;
  }
}


/* v0.4.1 — Command Center harmonization + tighter DS layout */
.aly1canyon{
  --aly-panel:rgba(12,23,43,.97);
  --aly-panel-dark:rgba(7,14,26,.99);
  --aly-border:rgba(100,155,235,.22);
  --aly-text:#f3f8ff;
  --aly-muted:#9fb4d2;
  --aly-cyan:#66ddff;
  --aly-gold:#f3c65f;
  --aly-purple:#8f7dff;
  --aly-green:#64f5b4;
  --aly-red:#ff6b82;

  max-width:1220px!important;
  padding:18px 12px 34px!important;
}

/* Hero closer to ALY1 Command Center header */
.aly1canyon-hero{
  min-height:0!important;
  margin-bottom:18px!important;
  padding:22px 24px!important;
  border-radius:24px!important;
  border:1px solid var(--aly-border)!important;
  background:
    linear-gradient(180deg, rgba(11,22,42,.96), rgba(6,12,24,.98))!important;
  box-shadow:0 16px 42px rgba(0,0,0,.28)!important;
}

.aly1canyon-hero-grid,
.aly1canyon-hero-glow{
  display:none!important;
}

.aly1canyon-hero-content{
  max-width:760px!important;
}

.aly1canyon-hero h1{
  margin:0 0 8px!important;
  font-size:clamp(30px,5vw,48px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
  font-weight:950!important;
}

.aly1canyon-hero p{
  margin:0!important;
  color:var(--aly-muted)!important;
  font-size:15px!important;
  line-height:1.55!important;
}

/* Generic panels: same visual language as Command Center cards */
.aly1canyon-panel{
  isolation:isolate!important;
  margin-bottom:16px!important;
  padding:20px!important;
  border-radius:24px!important;
  border:1px solid var(--aly-border)!important;
  background:
    linear-gradient(180deg, rgba(12,23,43,.97), rgba(7,14,26,.99))!important;
  box-shadow:0 14px 34px rgba(0,0,0,.26)!important;
}

.aly1canyon-panel::before{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:24px!important;
  right:24px!important;
  height:2px!important;
  inset:auto 24px auto 24px!important;
  border-radius:0 0 999px 999px!important;
  background:linear-gradient(90deg,transparent,rgba(102,221,255,.62),transparent)!important;
  opacity:.68!important;
  pointer-events:none!important;
}

.aly1canyon-panel::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:.95!important;
  background:
    radial-gradient(circle at 8% 0%, rgba(102,221,255,.075), transparent 30%),
    radial-gradient(circle at 94% 12%, rgba(126,173,255,.055), transparent 30%)!important;
}

.aly1canyon-panel>*{
  position:relative!important;
  z-index:2!important;
}

.aly1canyon-panel-head{
  margin-bottom:14px!important;
}

.aly1canyon-panel h2,
.aly1canyon-detail-head h2{
  font-size:clamp(22px,2.4vw,32px)!important;
  line-height:1.08!important;
  letter-spacing:-.03em!important;
}

.aly1canyon-soft,
.aly1canyon-panel p.aly1canyon-soft{
  line-height:1.45!important;
  font-size:14px!important;
}

/* Color halos per section */
.aly1canyon-overview-panel::before,
.aly1canyon-overview-stats::before{
  background:linear-gradient(90deg,transparent,rgba(102,221,255,.62),transparent)!important;
}
.aly1canyon-overview-panel::after{
  background:
    radial-gradient(circle at 8% 0%, rgba(102,221,255,.08), transparent 30%),
    radial-gradient(circle at 94% 12%, rgba(126,173,255,.055), transparent 30%)!important;
}

.aly1canyon-recent-panel::before{
  background:linear-gradient(90deg,transparent,rgba(255,209,102,.72),transparent)!important;
}
.aly1canyon-recent-panel::after{
  background:
    radial-gradient(circle at 8% 0%, rgba(255,209,102,.085), transparent 30%),
    radial-gradient(circle at 94% 12%, rgba(255,79,154,.055), transparent 30%)!important;
}

.aly1canyon-rotation-insights::before{
  background:linear-gradient(90deg,transparent,rgba(143,125,255,.72),transparent)!important;
}
.aly1canyon-rotation-insights::after{
  background:
    radial-gradient(circle at 8% 0%, rgba(143,125,255,.075), transparent 30%),
    radial-gradient(circle at 94% 12%, rgba(102,221,255,.055), transparent 30%)!important;
}

.aly1canyon-form-panel::before,
.aly1canyon-locked-panel::before{
  background:linear-gradient(90deg,transparent,rgba(100,245,180,.66),transparent)!important;
}
.aly1canyon-form-panel::after,
.aly1canyon-locked-panel::after{
  background:
    radial-gradient(circle at 8% 0%, rgba(100,245,180,.07), transparent 30%),
    radial-gradient(circle at 94% 12%, rgba(255,209,102,.055), transparent 30%)!important;
}

.aly1canyon-player-profile-panel::before{
  background:linear-gradient(90deg,transparent,rgba(255,107,130,.66),transparent)!important;
}

/* Stats cards: compact */
.aly1canyon-stats-grid,
.aly1canyon-detail-stats{
  gap:12px!important;
  margin-bottom:16px!important;
}

.aly1canyon-stat-card{
  min-height:0!important;
  padding:14px!important;
  border-radius:18px!important;
  border-color:rgba(100,155,235,.18)!important;
  background:
    linear-gradient(180deg, rgba(12,23,43,.95), rgba(7,14,26,.98))!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}

.aly1canyon-stat-card span{
  font-size:10.5px!important;
  letter-spacing:.12em!important;
}

.aly1canyon-stat-card strong{
  margin:5px 0 3px!important;
  font-size:26px!important;
}

.aly1canyon-stat-card small{
  font-size:12px!important;
  line-height:1.3!important;
}

/* Latest events: more compact app cards */
.aly1canyon-event-list{
  gap:10px!important;
}

.aly1canyon-event-card{
  grid-template-columns:minmax(210px,.75fr) minmax(0,1.6fr)!important;
  gap:12px!important;
  min-height:0!important;
  padding:13px 16px!important;
  border-radius:18px!important;
  border:1px solid rgba(100,155,235,.18)!important;
  background:
    linear-gradient(180deg, rgba(12,23,43,.95), rgba(7,14,26,.98))!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}

.aly1canyon-event-card:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(255,209,102,.36)!important;
  background:
    linear-gradient(180deg, rgba(15,29,53,.98), rgba(8,16,30,.99))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.24),0 0 18px rgba(255,209,102,.055)!important;
}

.aly1canyon-event-main{
  gap:4px!important;
}

.aly1canyon-event-main h3{
  font-size:19px!important;
  line-height:1.12!important;
}

.aly1canyon-event-main p{
  font-size:13px!important;
}

.aly1canyon-result{
  min-height:23px!important;
  padding:0 9px!important;
  font-size:10px!important;
}

.aly1canyon-event-meta{
  gap:8px!important;
}

.aly1canyon-event-meta span{
  padding:7px 9px!important;
  border-radius:13px!important;
  font-size:11px!important;
  background:rgba(4,9,20,.44)!important;
  border-color:rgba(100,155,235,.13)!important;
}

.aly1canyon-event-meta strong{
  margin-top:2px!important;
  font-size:15px!important;
}

/* Participation insight cards stay same direction, but tighter */
.aly1canyon-rotation-insights{
  width:100%!important;
  max-width:none!important;
  margin:0 0 16px!important;
}

.aly1canyon-insight-btn{
  min-height:190px!important;
  padding:15px 12px 13px!important;
  border-radius:22px!important;
}

.aly1canyon-insight-icon-wrap{
  width:70px!important;
  height:70px!important;
  margin-bottom:10px!important;
  border-radius:20px!important;
}

.aly1canyon-insight-icon-img{
  width:56px!important;
  height:56px!important;
}

.aly1canyon-insight-btn-title{
  font-size:18px!important;
  margin-bottom:7px!important;
}

.aly1canyon-insight-btn small{
  font-size:12.5px!important;
}

.aly1canyon-insight-cta{
  padding-top:12px!important;
}

/* Forms / details: reduce empty visual mass */
.aly1canyon-form-grid,
.aly1canyon-player-picker-layout,
.aly1canyon-detail-grid{
  gap:12px!important;
}

.aly1canyon-field,
.aly1canyon-picker-column,
.aly1canyon-selected-panel,
.aly1canyon-attendance-panel,
.aly1canyon-detail-box,
.aly1canyon-full-stats-table,
.aly1canyon-full-table-wrap{
  border-radius:16px!important;
}

.aly1canyon-field{
  padding:12px!important;
}

.aly1canyon-note{
  padding:12px 14px!important;
  border-radius:14px!important;
}

/* Mobile: preserve compact 3 insight cards and clean panels */
@media (max-width:767px){
  .aly1canyon{
    padding:12px 10px 26px!important;
  }

  .aly1canyon-hero{
    padding:18px!important;
    border-radius:20px!important;
    margin-bottom:14px!important;
  }

  .aly1canyon-hero h1{
    font-size:32px!important;
  }

  .aly1canyon-panel{
    padding:16px!important;
    border-radius:20px!important;
    margin-bottom:14px!important;
  }

  .aly1canyon-panel h2,
  .aly1canyon-detail-head h2{
    font-size:22px!important;
  }

  .aly1canyon-stats-grid,
  .aly1canyon-detail-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .aly1canyon-stat-card{
    padding:12px!important;
    border-radius:16px!important;
  }

  .aly1canyon-stat-card strong{
    font-size:24px!important;
  }

  .aly1canyon-event-card{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:13px!important;
    border-radius:17px!important;
  }

  .aly1canyon-event-main{
    padding-right:66px!important;
    position:relative!important;
  }

  .aly1canyon-event-main .aly1canyon-result{
    position:absolute!important;
    top:0!important;
    right:0!important;
  }

  .aly1canyon-event-meta{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
  }

  .aly1canyon-event-meta span{
    padding:6px 4px!important;
    font-size:8.7px!important;
    text-align:center!important;
  }

  .aly1canyon-event-meta strong{
    font-size:12px!important;
  }

  .aly1canyon-insight-buttons{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .aly1canyon-insight-btn{
    min-height:150px!important;
    padding:10px 6px 9px!important;
    border-radius:16px!important;
  }

  .aly1canyon-insight-icon-wrap{
    width:48px!important;
    height:48px!important;
    margin-bottom:7px!important;
    border-radius:15px!important;
  }

  .aly1canyon-insight-icon-img{
    width:39px!important;
    height:39px!important;
  }

  .aly1canyon-insight-tag{
    min-height:18px!important;
    margin-bottom:6px!important;
    padding:0 5px!important;
    font-size:7.5px!important;
    letter-spacing:.08em!important;
  }

  .aly1canyon-insight-btn-title{
    margin-bottom:5px!important;
    font-size:12px!important;
    line-height:1.08!important;
  }

  .aly1canyon-insight-btn small{
    display:none!important;
  }

  .aly1canyon-insight-cta{
    padding-top:6px!important;
    font-size:10px!important;
  }
}

@media (max-width:390px){
  .aly1canyon-panel{
    padding:14px!important;
  }

  .aly1canyon-event-meta{
    gap:5px!important;
  }

  .aly1canyon-event-meta span{
    font-size:8px!important;
  }

  .aly1canyon-insight-buttons{
    gap:6px!important;
  }

  .aly1canyon-insight-btn{
    min-height:140px!important;
    padding:9px 5px 8px!important;
  }

  .aly1canyon-insight-btn-title{
    font-size:11px!important;
  }
}


/* v0.4.2 — remove global wrapper card + Command Center luminous outlines */
.aly1canyon{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}

.aly1canyon::before{
  content:none!important;
  display:none!important;
}

/* Base luminous card contour */
.aly1canyon-hero,
.aly1canyon-panel,
.aly1canyon-stat-card,
.aly1canyon-event-card,
.aly1canyon-insight-btn,
.aly1canyon-detail-box,
.aly1canyon-field,
.aly1canyon-picker-column,
.aly1canyon-selected-panel,
.aly1canyon-attendance-panel{
  --tool-accent:#66ddff;
  --tool-accent-rgb:102,221,255;
  border-color:rgba(var(--tool-accent-rgb),.25)!important;
  box-shadow:
    0 14px 34px rgba(0,0,0,.24),
    0 0 0 1px rgba(var(--tool-accent-rgb),.045),
    0 0 22px rgba(var(--tool-accent-rgb),.045)!important;
}

/* Colored top accent line, same spirit as Command Center cards */
.aly1canyon-hero::before,
.aly1canyon-panel::before,
.aly1canyon-event-card::before,
.aly1canyon-insight-btn::before{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:22px!important;
  right:22px!important;
  height:2px!important;
  inset:auto 22px auto 22px!important;
  border-radius:0 0 999px 999px!important;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(var(--tool-accent-rgb),.86),
    transparent
  )!important;
  opacity:.68!important;
  pointer-events:none!important;
}

/* Section color families */
.aly1canyon-hero,
.aly1canyon-overview-panel,
.aly1canyon-overview-stats,
.aly1canyon-stat-card{
  --tool-accent:#66ddff;
  --tool-accent-rgb:102,221,255;
}

.aly1canyon-recent-panel,
.aly1canyon-recent-panel .aly1canyon-event-card{
  --tool-accent:#f3c65f;
  --tool-accent-rgb:243,198,95;
}

.aly1canyon-rotation-insights,
.aly1canyon-insight-btn-low{
  --tool-accent:#8f7dff;
  --tool-accent-rgb:143,125,255;
}

.aly1canyon-insight-btn-registered{
  --tool-accent:#66ddff;
  --tool-accent-rgb:102,221,255;
}

.aly1canyon-insight-btn-noshow{
  --tool-accent:#ff6b82;
  --tool-accent-rgb:255,107,130;
}

.aly1canyon-form-panel,
.aly1canyon-locked-panel,
.aly1canyon-form-panel .aly1canyon-field,
.aly1canyon-form-panel .aly1canyon-picker-column,
.aly1canyon-form-panel .aly1canyon-selected-panel,
.aly1canyon-form-panel .aly1canyon-attendance-panel{
  --tool-accent:#64f5b4;
  --tool-accent-rgb:100,245,180;
}

.aly1canyon-player-profile-panel,
.aly1canyon-player-profile-panel .aly1canyon-detail-box{
  --tool-accent:#8f7dff;
  --tool-accent-rgb:143,125,255;
}

/* Keep only a subtle internal glow; no huge “global card” effect */
.aly1canyon-panel::after{
  background:
    radial-gradient(circle at 8% 0%, rgba(var(--tool-accent-rgb),.055), transparent 28%),
    radial-gradient(circle at 94% 10%, rgba(var(--tool-accent-rgb),.035), transparent 26%)!important;
}

/* Make event/insight hover feel like Command Center */
.aly1canyon-event-card:hover,
.aly1canyon-insight-btn:hover,
.aly1canyon-insight-btn.is-active{
  border-color:rgba(var(--tool-accent-rgb),.44)!important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.30),
    0 0 26px rgba(var(--tool-accent-rgb),.085)!important;
}

/* Re-allow top accent on event cards despite older GPU-safe cleanup */
.aly1canyon-app .aly1canyon-event-card::before,
.aly1canyon .aly1canyon-event-card::before{
  display:block!important;
  opacity:.68!important;
}

/* Slightly cleaner spacing now that the outer card is gone */
.aly1canyon-hero{
  margin-bottom:18px!important;
}

.aly1canyon-panel{
  margin-bottom:16px!important;
}

@media (max-width:767px){
  .aly1canyon{
    padding:12px 10px 26px!important;
  }

  .aly1canyon-hero::before,
  .aly1canyon-panel::before,
  .aly1canyon-event-card::before,
  .aly1canyon-insight-btn::before{
    left:14px!important;
    right:14px!important;
    inset:auto 14px auto 14px!important;
  }
}

/* =========================================================
   v0.4.3 — Canyon registration requests helper
   ========================================================= */
.aly1canyon-requests-panel{
  position:relative;
  z-index:1;
  margin:18px 0 20px;
  padding:18px;
  border:1px solid rgba(100,245,180,.22);
  border-radius:22px;
  background:linear-gradient(135deg, rgba(9,20,36,.74), rgba(13,32,54,.56));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

.aly1canyon-requests-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
}

.aly1canyon-requests-head h3{
  margin:2px 0 6px;
  color:#fff;
  font-size:1.18rem;
}

.aly1canyon-requests-head p{
  margin:0;
  color:rgba(226,238,255,.72);
  line-height:1.55;
}

.aly1canyon-requests-stats{
  display:grid;
  grid-template-columns:repeat(3, minmax(82px,1fr));
  gap:6px;
  min-width:280px;
}

.aly1canyon-requests-stats span{
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(255,255,255,.045);
  color:rgba(226,238,255,.72);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.aly1canyon-requests-stats strong{
  color:#64f5b4;
  font-size:1.28rem;
  letter-spacing:0;
}

.aly1canyon-request-duplicates{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:14px;
  padding:11px 12px;
  border:1px solid rgba(255,186,73,.22);
  border-radius:16px;
  background:rgba(255,186,73,.07);
  color:rgba(255,239,213,.86);
  font-size:.88rem;
}

.aly1canyon-request-duplicates strong{
  color:#ffd48a;
}

.aly1canyon-request-duplicates span{
  color:rgba(255,239,213,.42);
}

.aly1canyon-requests-import{
  margin-top:14px;
}

.aly1canyon-requests-import summary{
  cursor:pointer;
  width:max-content;
  max-width:100%;
  color:#64f5b4;
  font-weight:800;
}

.aly1canyon-requests-form{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.aly1canyon-requests-form label{
  display:grid;
  gap:7px;
  color:rgba(226,238,255,.72);
  font-size:.88rem;
  font-weight:800;
}

.aly1canyon-requests-form input,
.aly1canyon-requests-form textarea,
.aly1canyon-request-toolbar select{
  width:100%;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  background:rgba(3,10,20,.78);
  color:#fff;
  padding:11px 12px;
  outline:none;
}

.aly1canyon-requests-form textarea{
  min-height:180px;
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:.82rem;
  line-height:1.45;
}

.aly1canyon-requests-clear{
  margin-top:10px;
}

.aly1canyon-request-toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin:16px 0 14px;
  padding:14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  background:rgba(255,255,255,.045);
}

.aly1canyon-request-toolbar strong,
.aly1canyon-request-toolbar label{
  display:block;
  color:#fff;
  font-weight:900;
}

.aly1canyon-request-toolbar span{
  display:block;
  margin-top:4px;
  color:rgba(226,238,255,.68);
  font-size:.88rem;
}

.aly1canyon-request-toolbar label{
  min-width:280px;
  font-size:.84rem;
}

.aly1canyon-request-toolbar select{
  margin-top:7px;
}

.aly1canyon-player-option.is-requested{
  border-color:rgba(100,245,180,.38)!important;
  background:linear-gradient(135deg, rgba(100,245,180,.105), rgba(255,255,255,.035))!important;
}

.aly1canyon-request-badge{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-top:7px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(100,245,180,.13);
  border:1px solid rgba(100,245,180,.30);
  color:#8fffd0;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}

@media (max-width:767px){
  .aly1canyon-requests-head,
  .aly1canyon-request-toolbar{
    display:grid;
  }

  .aly1canyon-requests-stats{
    grid-template-columns:repeat(3, 1fr);
    min-width:0;
  }

  .aly1canyon-request-toolbar label{
    min-width:0;
  }
}

/* =========================================================
   v0.4.4 — Simplified DS session/date + JSON upload
   ========================================================= */
.aly1canyon-auto-date-card{
  margin:0 0 14px;
  padding:14px 16px;
  border:1px solid rgba(110,241,255,.18);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(110,241,255,.075), rgba(255,255,255,.035));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.aly1canyon-auto-date-card strong{
  color:#fff;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
}

.aly1canyon-auto-date-card span{
  color:#6ef1ff;
  font-weight:900;
}

.aly1canyon-auto-date-card small{
  color:rgba(226,238,255,.66);
  line-height:1.45;
}

.aly1canyon-auto-date-card-small{
  margin:0;
}

.aly1canyon-form-grid-compact{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.aly1canyon-json-example{
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  padding:10px 12px;
  background:rgba(255,255,255,.035);
}

.aly1canyon-json-example summary{
  cursor:pointer;
  color:#64f5b4;
  font-weight:800;
}

.aly1canyon-json-example pre{
  margin:10px 0 0;
  white-space:pre-wrap;
  overflow:auto;
  color:rgba(226,238,255,.82);
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:.8rem;
  line-height:1.45;
}

.aly1canyon-requests-form input[type="file"]{
  cursor:pointer;
}

@media (max-width:767px){
  .aly1canyon-form-grid-compact{
    grid-template-columns:1fr;
  }

  .aly1canyon-auto-date-card{
    display:grid;
  }
}


/* =========================================================
   v0.4.5 — Compact picker stats + visible legend
   ========================================================= */
.aly1canyon-picker-legend{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:center;
  margin:0 0 14px;
  padding:13px 14px;
  border-radius:18px;
  border:1px solid rgba(255,209,102,.24);
  background:linear-gradient(135deg, rgba(255,209,102,.085), rgba(110,241,255,.045));
}
.aly1canyon-picker-legend-title{
  display:grid;
  gap:2px;
  min-width:120px;
}
.aly1canyon-picker-legend-title strong{
  color:#fff;
  font-size:.92rem;
  font-weight:950;
}
.aly1canyon-picker-legend-title span{
  color:rgba(226,238,255,.68);
  font-size:.75rem;
  line-height:1.35;
}
.aly1canyon-picker-legend-items{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  align-items:center;
}
.aly1canyon-picker-legend-items span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:rgba(226,238,255,.78);
  font-size:.78rem;
  line-height:1.25;
}
.aly1canyon-legend-badge,
.aly1canyon-stat-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:20px;
  padding:0 5px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:#eaf2ff;
  font-size:.68rem;
  line-height:1;
  font-weight:950;
  white-space:nowrap;
}
.aly1canyon-legend-req{color:#8fffd0;background:rgba(100,245,180,.13);border-color:rgba(100,245,180,.32)}
.aly1canyon-legend-p8{color:#b9d4ff;background:rgba(126,173,255,.11);border-color:rgba(126,173,255,.26)}
.aly1canyon-legend-last{color:#9dffc4;background:rgba(103,245,164,.09);border-color:rgba(103,245,164,.24)}
.aly1canyon-legend-np{color:#ffdca0;background:rgba(255,209,102,.11);border-color:rgba(255,209,102,.28)}
.aly1canyon-legend-ns{color:#ffabb8;background:rgba(255,99,125,.10);border-color:rgba(255,99,125,.28)}
.aly1canyon-player-name-stack{
  display:grid;
  gap:6px;
  min-width:0;
}
.aly1canyon-player-name-stack strong{
  min-width:0;
  overflow-wrap:anywhere;
}
.aly1canyon-player-stat-badges{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  align-items:center;
}
.aly1canyon-stat-badge.is-favor{
  color:#9dffc4;
  background:rgba(103,245,164,.08);
  border-color:rgba(103,245,164,.24);
}
.aly1canyon-stat-badge.is-neutral{
  color:#b9d4ff;
  background:rgba(126,173,255,.10);
  border-color:rgba(126,173,255,.25);
}
.aly1canyon-stat-badge.is-heavy{
  color:#ffcf8d;
  background:rgba(255,160,90,.10);
  border-color:rgba(255,160,90,.28);
}
.aly1canyon-stat-badge.is-pending{
  color:#ffdca0;
  background:rgba(255,209,102,.12);
  border-color:rgba(255,209,102,.30);
  box-shadow:0 0 14px rgba(255,209,102,.06);
}
.aly1canyon-stat-badge.is-warning{
  color:#ffabb8;
  background:rgba(255,99,125,.10);
  border-color:rgba(255,99,125,.30);
}
.aly1canyon-stat-badge.is-clean{
  color:#9dffc4;
  background:rgba(103,245,164,.07);
  border-color:rgba(103,245,164,.18);
}
.aly1canyon-stat-badge.is-muted{
  color:rgba(226,238,255,.55);
  background:rgba(255,255,255,.035);
  border-color:rgba(255,255,255,.08);
}
.aly1canyon-request-badge{
  min-height:20px;
  margin-top:0!important;
  padding:0 7px!important;
  font-size:.68rem!important;
}
.aly1canyon-player-option{
  align-content:start;
}
.aly1canyon-selected-player{
  align-items:flex-start;
}
@media (max-width:767px){
  .aly1canyon-picker-legend{
    grid-template-columns:1fr;
  }
  .aly1canyon-picker-legend-items{
    display:grid;
    grid-template-columns:1fr;
  }
}

/* =========================================================
   v0.4.6 — Clear 6-week picker stats, fixed colors, grey selected
   ========================================================= */
.aly1canyon-picker-legend{
  border-color:rgba(126,173,255,.24)!important;
  background:linear-gradient(135deg, rgba(126,173,255,.08), rgba(255,255,255,.035))!important;
}
.aly1canyon-picker-legend-title{
  min-width:150px;
}
.aly1canyon-picker-legend-title strong{
  font-size:.98rem;
}
.aly1canyon-picker-legend-title span{
  max-width:220px;
}
.aly1canyon-picker-legend-items{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(220px,1fr));
  gap:8px 14px!important;
}
.aly1canyon-picker-legend-items span{
  align-items:flex-start!important;
  font-size:.8rem!important;
}
.aly1canyon-legend-badge,
.aly1canyon-stat-badge{
  min-height:21px!important;
  padding:0 8px!important;
  font-size:.68rem!important;
  letter-spacing:.02em;
}
.aly1canyon-legend-req,
.aly1canyon-stat-badge.is-req{
  color:#8fffd0!important;
  background:rgba(100,245,180,.13)!important;
  border-color:rgba(100,245,180,.32)!important;
}
.aly1canyon-legend-sel,
.aly1canyon-stat-badge.is-sel{
  color:#b9d4ff!important;
  background:rgba(126,173,255,.11)!important;
  border-color:rgba(126,173,255,.28)!important;
}
.aly1canyon-legend-last,
.aly1canyon-stat-badge.is-last{
  color:#d7c8ff!important;
  background:rgba(165,135,255,.10)!important;
  border-color:rgba(165,135,255,.26)!important;
}
.aly1canyon-legend-wait,
.aly1canyon-stat-badge.is-wait{
  color:#ffdca0!important;
  background:rgba(255,209,102,.12)!important;
  border-color:rgba(255,209,102,.30)!important;
}
.aly1canyon-legend-ns,
.aly1canyon-stat-badge.is-ns{
  color:#ffabb8!important;
  background:rgba(255,99,125,.10)!important;
  border-color:rgba(255,99,125,.30)!important;
}
.aly1canyon-player-stat-badges{
  gap:5px!important;
}
.aly1canyon-player-option.is-selected{
  opacity:.48!important;
  filter:grayscale(.55);
  border-color:rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.035)!important;
}
.aly1canyon-player-option.is-selected strong,
.aly1canyon-player-option.is-selected .aly1canyon-stat-badge{
  color:rgba(226,238,255,.62)!important;
}
.aly1canyon-player-option.is-selected .aly1canyon-used-label{
  color:rgba(226,238,255,.62)!important;
  font-weight:800;
}
@media (max-width:767px){
  .aly1canyon-picker-legend-items{
    grid-template-columns:1fr!important;
  }
  .aly1canyon-picker-legend-title span{
    max-width:none;
  }
}

/* v0.4.9 — current week edit shortcuts */
.aly1canyon-current-week-panel{
  margin:18px 0 20px;
  padding:18px;
  border:1px solid rgba(93,240,255,.18);
  border-radius:18px;
  background:rgba(12,25,39,.72);
  box-shadow:0 14px 40px rgba(0,0,0,.18);
}
.aly1canyon-current-week-panel-full{
  border-color:rgba(255,209,102,.26);
  background:rgba(255,209,102,.06);
}
.aly1canyon-current-week-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.aly1canyon-current-week-head h3,
.aly1canyon-current-week-panel-full h3{
  margin:0 0 6px;
  color:#fff;
  font-size:1.05rem;
}
.aly1canyon-current-week-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.aly1canyon-current-week-card{
  padding:14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(5,12,23,.44);
}
.aly1canyon-current-week-card.is-current{
  border-color:rgba(100,245,255,.42);
  box-shadow:0 0 0 1px rgba(100,245,255,.08), 0 0 24px rgba(100,245,255,.08);
}
.aly1canyon-current-week-card strong{
  display:block;
  color:#fff;
  font-size:1rem;
  margin-bottom:4px;
}
.aly1canyon-current-week-card span{
  display:block;
  color:#9df4ff;
  font-size:.86rem;
  font-weight:800;
  margin-bottom:6px;
}
.aly1canyon-current-week-card small{
  display:block;
  color:rgba(226,238,255,.72);
  font-size:.78rem;
  margin-bottom:12px;
}
.aly1canyon-current-week-actions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.aly1canyon-mini-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:0 12px;
  border:1px solid rgba(93,240,255,.24);
  border-radius:999px;
  background:rgba(93,240,255,.11);
  color:#8ff7ff!important;
  text-decoration:none!important;
  font-size:.78rem;
  font-weight:900;
}
.aly1canyon-mini-btn:hover{
  border-color:rgba(93,240,255,.48);
  background:rgba(93,240,255,.18);
}
.aly1canyon-mini-btn-soft{
  color:#ffdca0!important;
  border-color:rgba(255,209,102,.24);
  background:rgba(255,209,102,.10);
}
.aly1canyon-mini-btn-soft:hover{
  border-color:rgba(255,209,102,.46);
  background:rgba(255,209,102,.16);
}
@media (max-width:767px){
  .aly1canyon-current-week-grid{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   v0.5.0 — Admin comfort pass
   Direct event actions + inline editors
   ========================================================= */
.aly1canyon-admin-workflow-panel{
  border-color:rgba(110,241,255,.22);
}
.aly1canyon-admin-workflow-head{margin-bottom:16px}
.aly1canyon-admin-session-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  align-items:start;
}
.aly1canyon-admin-session-card,
.aly1canyon-event-action-card{
  position:relative;
  overflow:hidden;
}
.aly1canyon-admin-session-card{
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:center;
  min-height:158px;
  padding:18px;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(9,20,42,.88),rgba(5,11,25,.96));
  border:1px solid rgba(126,178,255,.16);
}
.aly1canyon-admin-session-card.is-active,
.aly1canyon-event-action-card.is-active{
  border-color:rgba(110,241,255,.50)!important;
  box-shadow:0 0 0 1px rgba(110,241,255,.14),0 18px 55px rgba(0,0,0,.34);
}
.aly1canyon-admin-session-tag{
  display:inline-flex;
  width:max-content;
  min-height:24px;
  align-items:center;
  padding:0 9px;
  border-radius:999px;
  background:rgba(255,209,102,.08);
  border:1px solid rgba(255,209,102,.24);
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.aly1canyon-admin-session-main{display:grid;gap:8px}
.aly1canyon-admin-session-main h3{margin:0;color:#fff;font-size:24px;line-height:1.05}
.aly1canyon-admin-session-main p{margin:0}
.aly1canyon-admin-session-counts{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:4px;
}
.aly1canyon-admin-session-counts span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}
.aly1canyon-admin-session-counts strong{color:#fff;font-size:14px}
.aly1canyon-admin-session-actions,
.aly1canyon-event-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
}
.aly1canyon-admin-session-actions{min-width:170px}
.aly1canyon-action-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 13px;
  border-radius:999px;
  background:rgba(110,241,255,.08);
  border:1px solid rgba(110,241,255,.22);
  color:var(--cyan)!important;
  font-weight:900;
  font-size:13px;
  line-height:1;
  white-space:nowrap;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.aly1canyon-action-btn:hover{
  transform:translateY(-2px);
  background:rgba(110,241,255,.15);
  border-color:rgba(110,241,255,.45);
}
.aly1canyon-action-primary{
  background:linear-gradient(135deg,rgba(110,241,255,.20),rgba(126,173,255,.12));
  border-color:rgba(110,241,255,.34);
  color:#fff!important;
}
.aly1canyon-inline-admin-editor{
  grid-column:1 / -1;
  margin:-2px 0 10px;
  border-radius:26px;
  border:1px solid rgba(110,241,255,.20);
  background:rgba(3,8,18,.42);
  padding:12px;
}
.aly1canyon-inline-admin-editor .aly1canyon-panel{
  margin-bottom:0;
  box-shadow:none;
}
.aly1canyon-form-panel-inline,
.aly1canyon-detail-panel-inline{
  border-color:rgba(110,241,255,.24);
}
.aly1canyon-event-action-list{gap:14px}
.aly1canyon-event-action-card{
  display:grid!important;
  grid-template-columns:1.05fr 1.35fr auto!important;
  align-items:center;
  color:var(--text)!important;
}
.aly1canyon-event-action-card:hover{transform:none!important}
.aly1canyon-event-action-card .aly1canyon-event-actions{min-width:170px}
.aly1canyon-result-editor-grid{
  display:grid;
  grid-template-columns:minmax(160px,.42fr) 1fr;
  gap:12px;
  margin-bottom:14px;
}
.aly1canyon-result-editor-grid label{
  display:grid;
  gap:7px;
  color:var(--muted);
  font-size:12px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.aly1canyon-detail-panel-inline .aly1canyon-detail-head h2,
.aly1canyon-form-panel-inline .aly1canyon-panel-head h2{
  font-size:clamp(22px,2.4vw,30px);
}
@media (max-width:1100px){
  .aly1canyon-admin-session-grid{grid-template-columns:1fr}
  .aly1canyon-event-action-card{grid-template-columns:1fr!important}
  .aly1canyon-event-actions,.aly1canyon-admin-session-actions{justify-content:flex-start;min-width:0}
  .aly1canyon-result-editor-grid{grid-template-columns:1fr}
}
@media (max-width:620px){
  .aly1canyon-admin-session-card{grid-template-columns:1fr;align-items:start}
  .aly1canyon-action-btn{width:100%}
  .aly1canyon-admin-session-actions,.aly1canyon-event-actions{width:100%}
  .aly1canyon-inline-admin-editor{padding:8px;border-radius:20px}
}

/* v0.5.2 — Battlefield assignments + generated alliance mail */
.aly1canyon-assignment-panel{
  margin-top:18px;
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(110,241,255,.16);
}
.aly1canyon-assignment-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:16px;
}
.aly1canyon-assignment-head h3{
  margin:0 0 6px;
  color:#fff;
  font-size:22px;
}
.aly1canyon-assignment-total{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 13px;
  border-radius:999px;
  border:1px solid rgba(110,241,255,.25);
  background:rgba(110,241,255,.08);
  color:var(--cyan);
  font-size:13px;
  font-weight:900;
}
.aly1canyon-assignment-board{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.aly1canyon-assignment-group{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:20px;
  background:rgba(4,9,20,.32);
  border:1px solid rgba(255,255,255,.07);
}
.aly1canyon-assignment-group h4{
  margin:0 0 2px;
  color:#fff;
  font-size:16px;
  letter-spacing:.02em;
}
.aly1canyon-assignment-role{
  padding:10px;
  border-radius:15px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.07);
}
.aly1canyon-assignment-role.is-complete{
  border-color:rgba(103,245,164,.24);
  background:rgba(103,245,164,.045);
}
.aly1canyon-assignment-role-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:8px;
}
.aly1canyon-assignment-role-head strong{color:#fff;font-size:13px}
.aly1canyon-assignment-role-head span{
  color:var(--cyan);
  font-size:12px;
  font-weight:900;
}
.aly1canyon-assignment-role-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.aly1canyon-assignment-role-list span,
.aly1canyon-assignment-unassigned span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(110,241,255,.08);
  border:1px solid rgba(110,241,255,.16);
  color:#dffcff;
  font-size:12px;
  font-weight:800;
}
.aly1canyon-assignment-role-list em{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(255,255,255,.025);
  border:1px dashed rgba(255,255,255,.13);
  color:rgba(207,224,255,.48);
  font-size:12px;
  font-style:normal;
}
.aly1canyon-assignment-empty,
.aly1canyon-assignment-unassigned{
  grid-column:1/-1;
  padding:13px;
  border-radius:16px;
  background:rgba(255,209,102,.06);
  border:1px solid rgba(255,209,102,.20);
  color:#f7dd99;
}
.aly1canyon-assignment-unassigned strong{
  display:block;
  margin-bottom:8px;
}
.aly1canyon-assignment-unassigned div{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.aly1canyon-assignment-select{
  margin-top:8px;
  min-height:34px!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  font-size:12px!important;
  font-weight:850!important;
}
.aly1canyon-mail-panel{
  margin:0 0 18px;
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(110,241,255,.15);
}
.aly1canyon-mail-panel.is-incomplete{
  border-color:rgba(255,209,102,.30);
  background:linear-gradient(180deg,rgba(255,209,102,.045),rgba(255,255,255,.025));
}
.aly1canyon-mail-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:12px;
}
.aly1canyon-mail-head h3{
  margin:0 0 6px;
  color:#fff;
  font-size:22px;
}
.aly1canyon-mail-warning{
  margin:0 0 12px;
  padding:11px 13px;
  border-radius:14px;
  background:rgba(255,209,102,.08);
  border:1px solid rgba(255,209,102,.18);
  color:#f7dd99;
  font-weight:800;
}
.aly1canyon-mail-text{
  width:100%;
  min-height:560px;
  white-space:pre;
  font-family:Consolas,Monaco,monospace!important;
  font-size:13px!important;
  line-height:1.5!important;
  resize:vertical;
}
@media (max-width:1100px){
  .aly1canyon-assignment-board{grid-template-columns:1fr}
}
@media (max-width:620px){
  .aly1canyon-assignment-head,.aly1canyon-mail-head{flex-direction:column;align-items:stretch}
  .aly1canyon-assignment-total,.aly1canyon-copy-mail{width:100%}
}


/* v0.5.3 — drag & drop battlefield assignment comfort */
.aly1canyon-assignment-drag-chip{
  cursor:grab;
  user-select:none;
}
.aly1canyon-assignment-drag-chip:active{
  cursor:grabbing;
}
.aly1canyon-assignment-drag-chip.is-handle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:28px;
  margin-top:8px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(110,241,255,.20);
  background:rgba(110,241,255,.08);
  color:#dffcff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
}
.aly1canyon-assignment-drag-chip.is-handle:hover{
  border-color:rgba(110,241,255,.45);
  background:rgba(110,241,255,.14);
}
.aly1canyon-assignment-dropzone{
  transition:border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}
.aly1canyon-assignment-dropzone.aly1canyon-drag-over{
  border-color:rgba(110,241,255,.70)!important;
  background:rgba(110,241,255,.11)!important;
  box-shadow:0 0 0 2px rgba(110,241,255,.12),0 16px 30px rgba(0,0,0,.22);
  transform:translateY(-1px);
}
.aly1canyon-is-dragging-assignment .aly1canyon-assignment-dropzone{
  border-color:rgba(110,241,255,.25);
}
.aly1canyon-assignment-role-list .aly1canyon-assignment-drag-chip,
.aly1canyon-assignment-unassigned .aly1canyon-assignment-drag-chip{
  cursor:grab;
}
.aly1canyon-assignment-unassigned small{
  display:block;
  margin:-4px 0 9px;
  color:rgba(247,221,153,.72);
  font-size:12px;
  font-weight:700;
}
.aly1canyon-assignment-unassigned.is-empty{
  background:rgba(103,245,164,.045);
  border-color:rgba(103,245,164,.18);
  color:#bff8d2;
}
.aly1canyon-assignment-unassigned div em{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(103,245,164,.06);
  border:1px solid rgba(103,245,164,.15);
  color:rgba(210,255,226,.72);
  font-size:12px;
  font-style:normal;
  font-weight:800;
}
@media (max-width:760px){
  .aly1canyon-assignment-drag-chip.is-handle{
    width:100%;
  }
}

/* v0.5.4 — direct drag from available list into battlefield roles / SUB */
.aly1canyon-picker-direct .aly1canyon-player-option:not(.is-blocked){
  cursor:grab;
}
.aly1canyon-picker-direct .aly1canyon-player-option:not(.is-blocked):active{
  cursor:grabbing;
}
.aly1canyon-direct-hint{
  margin-top:5px!important;
  font-size:12px!important;
  line-height:1.45!important;
}
.aly1canyon-drag-hint{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 8px;
  border-radius:999px;
  color:rgba(207,224,255,.62);
  font-size:11px;
  font-weight:850;
  border:1px dashed rgba(126,178,255,.18);
  background:rgba(126,178,255,.045);
}
.aly1canyon-selected-zone-summary .aly1canyon-selected-box{
  opacity:.92;
}
.aly1canyon-selected-zone-summary .aly1canyon-selected-head span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--muted);
  font-size:13px;
}
.aly1canyon-selected-zone-summary .aly1canyon-selected-head span strong{
  color:var(--cyan);
  font-size:14px;
}
.aly1canyon-selected-mini-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}
.aly1canyon-selected-mini-grid h4{
  margin:0 0 8px;
  color:#fff;
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.aly1canyon-selected-mini-grid .aly1canyon-selected-list{
  max-height:260px;
  overflow:auto;
  padding-right:3px;
}
.aly1canyon-selected-zone-summary .aly1canyon-selected-player{
  padding:8px;
}
.aly1canyon-selected-zone-summary .aly1canyon-player-stat-badges,
.aly1canyon-selected-zone-summary .aly1canyon-assignment-select,
.aly1canyon-selected-zone-summary .aly1canyon-assignment-drag-chip.is-handle{
  display:none!important;
}
.aly1canyon-assignment-group-sub{
  border-color:rgba(255,209,102,.18);
  background:rgba(255,209,102,.045);
}
.aly1canyon-assignment-sub-role{
  min-height:100%;
  border-color:rgba(255,209,102,.20);
}
.aly1canyon-assignment-sub-role .aly1canyon-assignment-role-head span{
  color:var(--gold);
}
.aly1canyon-assignment-drag-chip.is-sub{
  background:rgba(255,209,102,.10)!important;
  border-color:rgba(255,209,102,.20)!important;
  color:#fff1bd!important;
}
.aly1canyon-is-dragging-assignment .aly1canyon-player-option:not(.is-blocked){
  border-color:rgba(110,241,255,.22);
}
@media (max-width:900px){
  .aly1canyon-selected-mini-grid{grid-template-columns:1fr}
}

/* v0.5.6 — refined battlefield map layout + top/bottom admin flow */
.aly1canyon-picker-direct{
  grid-template-columns:1fr;
}
.aly1canyon-picker-available-full,
.aly1canyon-selected-zone-full{
  width:100%;
}
.aly1canyon-picker-available-full .aly1canyon-player-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  max-height:290px;
}
.aly1canyon-selected-zone-full .aly1canyon-selected-list{
  max-height:200px;
}
.aly1canyon-assignment-board{
  display:grid;
  grid-template-columns:minmax(720px,1fr) 300px;
  grid-template-areas:
    "map reserve"
    "unassigned reserve";
  align-items:stretch;
  gap:16px;
}
.aly1canyon-battlefield-map{
  grid-area:map;
  position:relative;
  min-height:760px;
  overflow:hidden;
  border-radius:32px;
  border:1px solid rgba(255,209,102,.28);
  background:
    radial-gradient(circle at 50% 53%,rgba(255,229,153,.14),transparent 16%),
    radial-gradient(circle at 24% 26%,rgba(255,255,255,.07),transparent 24%),
    radial-gradient(circle at 80% 76%,rgba(130,73,25,.22),transparent 24%),
    linear-gradient(145deg,#ae6d39 0%,#db9450 48%,#c57b39 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10),inset 0 40px 90px rgba(255,245,186,.12),0 20px 50px rgba(0,0,0,.22);
}
.aly1canyon-battlefield-map:before,
.aly1canyon-battlefield-map:after{
  content:"";
  position:absolute;
  pointer-events:none;
  opacity:.52;
}
.aly1canyon-battlefield-map:before{
  left:-8%;
  right:-8%;
  top:-2%;
  height:26%;
  background:repeating-linear-gradient(135deg,rgba(91,55,31,.28) 0 18px,rgba(255,235,176,.10) 18px 34px);
  clip-path:polygon(0 0,100% 0,100% 58%,89% 42%,78% 67%,64% 49%,54% 73%,43% 46%,31% 70%,18% 49%,8% 63%,0 53%);
}
.aly1canyon-battlefield-map:after{
  left:-10%;
  right:-10%;
  bottom:-4%;
  height:24%;
  background:repeating-linear-gradient(45deg,rgba(91,55,31,.20) 0 16px,rgba(255,235,176,.09) 16px 36px);
  clip-path:polygon(0 50%,14% 30%,24% 55%,37% 31%,51% 58%,66% 35%,82% 58%,100% 42%,100% 100%,0 100%);
}
.aly1canyon-map-decor,
.aly1canyon-map-decor span{
  position:absolute;
  pointer-events:none;
}
.aly1canyon-map-decor{inset:0;z-index:0}
.aly1canyon-map-decor .spawn{
  width:84px;
  height:56px;
  border:4px solid rgba(110,241,255,.70);
  background:rgba(110,241,255,.16);
  transform:rotate(35deg) skew(-8deg);
  box-shadow:0 0 22px rgba(110,241,255,.25);
}
.aly1canyon-map-decor .spawn-left{left:7%;top:43%}
.aly1canyon-map-decor .spawn-right{right:7%;top:43%;border-color:rgba(255,99,125,.72);background:rgba(255,99,125,.15);box-shadow:0 0 22px rgba(255,99,125,.22)}
.aly1canyon-map-decor .map-road{
  left:24%;
  right:26%;
  top:50%;
  height:2px;
  border-top:2px dashed rgba(255,245,186,.18);
  transform:rotate(-14deg);
}
.aly1canyon-map-decor .road-b{transform:rotate(16deg);top:56%}
.aly1canyon-map-role{
  position:absolute;
  z-index:2;
  width:136px;
  min-height:92px;
  padding:7px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:6px;
  border-radius:18px;
  background:rgba(7,14,29,.82);
  border:2px solid rgba(255,255,255,.14);
  backdrop-filter:blur(8px);
  box-shadow:0 15px 35px rgba(42,21,4,.22),inset 0 0 0 1px rgba(255,255,255,.04);
}
.aly1canyon-map-role.is-complete{
  background:rgba(4,28,24,.84);
  box-shadow:0 18px 38px rgba(0,0,0,.24),0 0 0 1px rgba(103,245,164,.20),0 0 22px rgba(103,245,164,.08);
}
.aly1canyon-map-role.pos-info{left:31%;top:12%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-arsenal{left:50%;top:17%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-nuke{left:50%;top:41%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-mercenary{left:50%;top:65%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-h1{left:13%;top:60%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-h2{left:87%;top:30%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-oil1{left:11%;top:32%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-h3{left:23%;top:81%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-h4{left:71%;top:10%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-science{left:67%;top:81%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-oil2{left:87%;top:59%;transform:translateX(-50%)}
.aly1canyon-map-role.role-hospital{border-color:#ffe45c}
.aly1canyon-map-role.role-info{border-color:#49e574}
.aly1canyon-map-role.role-science{border-color:#ff5be9}
.aly1canyon-map-role.role-oil{border-color:#69a7ff}
.aly1canyon-map-role.role-nuke{border-color:#f1f5f9}
.aly1canyon-map-role.role-arsenal{border-color:#ffb347}
.aly1canyon-map-role.role-mercenary{border-color:#9ca3af}
.aly1canyon-map-building-icon{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:10px;
  color:#fff;
  font-size:14px;
  line-height:1;
  font-weight:950;
  text-shadow:0 2px 8px rgba(0,0,0,.40);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 8px 16px rgba(0,0,0,.22);
}
.aly1canyon-map-role.role-hospital .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ffe977,#b98b21);color:#fff8d0}
.aly1canyon-map-role.role-info .aly1canyon-map-building-icon{background:linear-gradient(145deg,#70ff8f,#13954b);color:#effff2}
.aly1canyon-map-role.role-science .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ff7cf0,#b334a0);color:#fff2ff}
.aly1canyon-map-role.role-oil .aly1canyon-map-building-icon{background:linear-gradient(145deg,#92baff,#355fdc);color:#eef5ff}
.aly1canyon-map-role.role-nuke .aly1canyon-map-building-icon{background:linear-gradient(145deg,#f8fafc,#9ca3af);color:#111827}
.aly1canyon-map-role.role-arsenal .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ffcf7a,#b36b17);color:#fff8dc}
.aly1canyon-map-role.role-mercenary .aly1canyon-map-building-icon{background:linear-gradient(145deg,#d1d5db,#4b5563);color:#f9fafb}
.aly1canyon-map-role-body{min-width:0}
.aly1canyon-map-role .aly1canyon-assignment-role-head{margin-bottom:6px;align-items:flex-start}
.aly1canyon-map-role .aly1canyon-assignment-role-head strong{display:block;font-size:11px;line-height:1.1}
.aly1canyon-map-role .aly1canyon-assignment-role-head small{display:block;margin-top:2px;color:rgba(207,224,255,.62);font-size:9px;font-weight:800;line-height:1.15}
.aly1canyon-map-role .aly1canyon-assignment-role-head span,
.aly1canyon-map-reserve-head span{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:0 5px;
  border-radius:999px;
  background:rgba(110,241,255,.10);
  border:1px solid rgba(110,241,255,.20);
  color:var(--cyan);
  font-size:11px;
  font-weight:950;
}
.aly1canyon-map-role .aly1canyon-assignment-role-list,
.aly1canyon-map-reserve-list{
  gap:4px;
}
.aly1canyon-map-role .aly1canyon-assignment-role-list span,
.aly1canyon-map-role .aly1canyon-assignment-role-list em,
.aly1canyon-map-reserve-list span,
.aly1canyon-map-reserve-list em{
  max-width:100%;
  min-height:20px;
  padding:0 5px;
  font-size:9.5px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.aly1canyon-map-reserve{
  grid-area:reserve;
  min-height:760px;
  padding:16px;
  border-radius:26px;
  border:2px solid rgba(255,209,102,.32);
  background:
    radial-gradient(circle at 40% 20%,rgba(255,209,102,.15),transparent 26%),
    linear-gradient(180deg,rgba(28,21,7,.76),rgba(7,14,29,.90));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 18px 42px rgba(0,0,0,.18);
}
.aly1canyon-map-reserve.is-complete{
  border-color:rgba(103,245,164,.34);
  background:linear-gradient(180deg,rgba(25,45,24,.76),rgba(7,14,29,.90));
}
.aly1canyon-map-reserve-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.aly1canyon-map-reserve-head strong{display:block;color:#fff;font-size:22px;line-height:1}
.aly1canyon-map-reserve-head small{display:block;margin-top:5px;color:rgba(247,221,153,.78);font-size:12px;font-weight:800;line-height:1.25}
.aly1canyon-map-reserve .aly1canyon-map-reserve-list{
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
.aly1canyon-map-reserve-list .aly1canyon-assignment-drag-chip,
.aly1canyon-map-reserve-list em{
  width:100%;
  justify-content:flex-start;
}
.aly1canyon-assignment-board > .aly1canyon-assignment-unassigned{
  grid-area:unassigned;
}
@media (max-width:1180px){
  .aly1canyon-picker-available-full .aly1canyon-player-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-height:340px;
  }
  .aly1canyon-assignment-board{
    grid-template-columns:1fr;
    grid-template-areas:"map" "reserve" "unassigned";
  }
  .aly1canyon-battlefield-map{min-height:880px}
  .aly1canyon-map-reserve{min-height:initial}
  .aly1canyon-map-reserve .aly1canyon-map-reserve-list{flex-direction:row;flex-wrap:wrap}
  .aly1canyon-map-reserve-list .aly1canyon-assignment-drag-chip,
  .aly1canyon-map-reserve-list em{width:auto}
}
@media (max-width:760px){
  .aly1canyon-battlefield-map{
    min-height:initial;
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    padding:14px;
  }
  .aly1canyon-map-decor{display:none}
  .aly1canyon-map-role{
    position:relative;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    width:auto;
    min-height:0;
    transform:none!important;
  }
}

/* v0.6.0 — force full-width top picker row */
.aly1canyon-picker-direct{display:block!important;}
.aly1canyon-picker-available-full{display:block!important;width:100%!important;max-width:none!important;margin-bottom:16px;}
.aly1canyon-picker-available-full .aly1canyon-picker-title{align-items:flex-start;}
.aly1canyon-picker-available-full .aly1canyon-player-grid{width:100%!important;}
@media (min-width:1181px){
  .aly1canyon-picker-available-full .aly1canyon-player-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-height:300px!important;}
}

/* v0.6.1 — screenshot action in assignment header */
.aly1canyon-assignment-total{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.aly1canyon-assignment-total .aly1canyon-map-shot{min-height:36px;padding:0 14px;white-space:nowrap;}

/* v0.6.2 — remove decorative spawn frames */
.aly1canyon-map-decor .spawn{display:none!important;}

/* v0.6.3 — clearer player stat badges */
.aly1canyon-player-stat-badges .aly1canyon-stat-badge{
  max-width:100%;
  white-space:normal;
  line-height:1.15;
}
.aly1canyon-picker-legend-simple .aly1canyon-picker-legend-items{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (max-width:820px){
  .aly1canyon-picker-legend-simple .aly1canyon-picker-legend-items{
    grid-template-columns:1fr;
  }
}

/* v0.6.4 — role history badges */
.aly1canyon-player-stat-badges .aly1canyon-stat-badge.is-history{
  flex-basis:100%;
  width:100%;
  justify-content:flex-start;
  white-space:normal;
  line-height:1.25;
}
.aly1canyon-player-stat-badges .aly1canyon-stat-badge.is-history::first-letter{
  text-transform:uppercase;
}

/* v0.6.5 — Last 5 DS status grid */
.aly1canyon-player-last5-wrap{
  display:block!important;
}
.aly1canyon-last5-status{
  display:grid;
  gap:6px;
  width:100%;
}
.aly1canyon-last5-status > strong{
  display:block;
  color:rgba(207,224,255,.78);
  font-size:11px;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.aly1canyon-last5-cells{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:4px;
}
.aly1canyon-last5-cell{
  min-width:0;
  min-height:38px;
  padding:4px 4px 5px;
  border-radius:9px;
  display:grid;
  align-content:center;
  gap:2px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  text-align:center;
}
.aly1canyon-last5-cell small{
  display:block;
  color:rgba(207,224,255,.52);
  font-size:9px;
  line-height:1;
  font-weight:850;
}
.aly1canyon-last5-cell b{
  display:block;
  color:#fff;
  font-size:9.5px;
  line-height:1.05;
  font-weight:900;
}
.aly1canyon-last5-cell.status-main{
  border-color:rgba(103,245,164,.32);
  background:rgba(103,245,164,.12);
}
.aly1canyon-last5-cell.status-sub{
  border-color:rgba(110,241,255,.28);
  background:rgba(110,241,255,.10);
}
.aly1canyon-last5-cell.status-main_ns,
.aly1canyon-last5-cell.status-sub_ns{
  border-color:rgba(255,99,125,.38);
  background:rgba(255,99,125,.14);
}
.aly1canyon-last5-cell.status-left_out{
  border-color:rgba(255,209,102,.36);
  background:rgba(255,209,102,.13);
}
.aly1canyon-last5-cell.status-not_signed{
  border-color:rgba(159,178,212,.16);
  background:rgba(159,178,212,.06);
  opacity:.82;
}
@media (max-width:760px){
  .aly1canyon-last5-cells{
    grid-template-columns:repeat(5,minmax(44px,1fr));
  }
}

/* v0.6.6 diagnostic badge */
.aly1canyon-version-badge{display:inline-flex;align-items:center;margin:0 0 10px 10px;min-height:24px;padding:0 9px;border-radius:999px;background:rgba(255,209,102,.08);border:1px solid rgba(255,209,102,.18);color:rgba(247,221,153,.86);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}

/* v0.6.9 — denser map layout to avoid overlap with 5-slot buildings */
.aly1canyon-battlefield-map{min-height:840px;}
.aly1canyon-map-role .aly1canyon-assignment-role-list{gap:3px;}

/* v0.7.0 — role cap adjustments + extra spacing for central stack */
.aly1canyon-map-role.pos-arsenal, .aly1canyon-map-role.pos-nuke, .aly1canyon-map-role.pos-mercenary{z-index:3;}


/* v0.7.1 — screenshot readability + science reposition */
.aly1canyon-assignment-board.aly1canyon-screenshot-mode{
  padding:14px;
  border-radius:28px;
  background:#08111d;
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-battlefield-map{
  border-color:rgba(255,209,102,.38);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 18px 30px rgba(0,0,0,.28);
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-role{
  background:rgba(7,14,29,.94);
  border-color:rgba(255,255,255,.20);
  box-shadow:0 12px 24px rgba(0,0,0,.30), inset 0 0 0 1px rgba(255,255,255,.04);
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-role.is-complete{
  background:rgba(7,33,24,.96);
  box-shadow:0 14px 26px rgba(0,0,0,.30),0 0 0 1px rgba(103,245,164,.18);
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-reserve{
  background:linear-gradient(180deg,rgba(15,20,30,.98),rgba(7,14,29,.98));
  border-color:rgba(255,209,102,.42);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 18px 30px rgba(0,0,0,.22);
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-assignment-unassigned{
  background:rgba(16,26,42,.96);
  border-color:rgba(255,209,102,.30);
  color:#f8e2ab;
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-assignment-unassigned small{
  color:rgba(248,226,171,.82);
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-role .aly1canyon-assignment-role-list span,
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-role .aly1canyon-assignment-role-list em,
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-reserve-list span,
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-reserve-list em{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.12);
  color:#f7fbff;
}


/* v0.7.2 — clearer empty slot placeholders */
.aly1canyon-map-role .aly1canyon-assignment-role-list em.aly1canyon-empty-slot,
.aly1canyon-map-reserve-list em.aly1canyon-empty-slot,
.aly1canyon-assignment-unassigned div em.aly1canyon-empty-slot{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:20px;
  padding:0 5px;
  border-radius:999px;
  background:rgba(255,255,255,.03)!important;
  border:1px dashed rgba(255,255,255,.16)!important;
  color:rgba(207,224,255,.42)!important;
  font-style:italic;
  font-weight:700;
  letter-spacing:.01em;
}
.aly1canyon-map-role .aly1canyon-assignment-role-list em.aly1canyon-empty-slot{
  background:rgba(255,255,255,.025)!important;
}
.aly1canyon-map-reserve-list em.aly1canyon-empty-slot{
  background:rgba(255,209,102,.035)!important;
  border-color:rgba(255,209,102,.18)!important;
  color:rgba(247,221,153,.46)!important;
}
.aly1canyon-empty-slot.is-message{
  min-height:24px;
  padding:0 8px;
  font-style:normal;
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-role .aly1canyon-assignment-role-list em.aly1canyon-empty-slot,
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-reserve-list em.aly1canyon-empty-slot,
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-assignment-unassigned div em.aly1canyon-empty-slot{
  background:rgba(255,255,255,.025)!important;
  border:1px dashed rgba(255,255,255,.14)!important;
  color:rgba(240,245,250,.38)!important;
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-reserve-list em.aly1canyon-empty-slot{
  background:rgba(255,209,102,.03)!important;
  color:rgba(247,221,153,.40)!important;
  border-color:rgba(255,209,102,.16)!important;
}

/* v0.7.3 — keep drop labels, but clearly separate placeholders from real players */
.aly1canyon-map-role .aly1canyon-assignment-role-list .aly1canyon-assignment-drag-chip,
.aly1canyon-map-reserve-list .aly1canyon-assignment-drag-chip{
  background:rgba(255,255,255,.13)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#f7fbff!important;
  font-style:normal!important;
  font-weight:900!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 2px 6px rgba(0,0,0,.16);
}
.aly1canyon-map-role .aly1canyon-assignment-role-list em.aly1canyon-empty-slot,
.aly1canyon-map-reserve-list em.aly1canyon-empty-slot{
  background:transparent!important;
  border:1px dashed rgba(255,255,255,.13)!important;
  color:rgba(207,224,255,.34)!important;
  font-size:9px!important;
  font-style:italic!important;
  font-weight:650!important;
  box-shadow:none!important;
}
.aly1canyon-map-reserve-list em.aly1canyon-empty-slot{
  color:rgba(247,221,153,.34)!important;
  border-color:rgba(255,209,102,.14)!important;
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-role .aly1canyon-assignment-role-list .aly1canyon-assignment-drag-chip,
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-reserve-list .aly1canyon-assignment-drag-chip{
  background:rgba(255,255,255,.16)!important;
  border-color:rgba(255,255,255,.22)!important;
  color:#ffffff!important;
}
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-role .aly1canyon-assignment-role-list em.aly1canyon-empty-slot,
.aly1canyon-assignment-board.aly1canyon-screenshot-mode .aly1canyon-map-reserve-list em.aly1canyon-empty-slot{
  background:transparent!important;
  border:1px dashed rgba(255,255,255,.12)!important;
  color:rgba(240,245,250,.30)!important;
}

/* v0.7.4 — editable generated alliance mail */
.aly1canyon-mail-text{
  background:rgba(4,9,20,.88)!important;
  border-color:rgba(110,241,255,.22)!important;
}
.aly1canyon-mail-text:focus{
  border-color:rgba(110,241,255,.48)!important;
  box-shadow:0 0 0 3px rgba(110,241,255,.08)!important;
}

/* v0.7.5 — compact mobile/in-game screenshot card */
.aly1canyon-mobile-shot-panel{
  margin:0 0 18px;
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,209,102,.16);
}
.aly1canyon-mobile-shot-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:14px;
}
.aly1canyon-mobile-shot-head h3{
  margin:0 0 6px;
  color:#fff;
  font-size:22px;
}
.aly1canyon-mobile-shot-card{
  width:min(100%,720px);
  margin:0 auto;
  padding:18px;
  border-radius:24px;
  background:#07111f;
  border:1px solid rgba(255,209,102,.28);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 18px 44px rgba(0,0,0,.25);
  color:#f8fbff;
}
.aly1canyon-mobile-shot-top{
  display:grid;
  gap:5px;
  padding:16px;
  margin-bottom:12px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(110,241,255,.12),rgba(255,209,102,.08));
  border:1px solid rgba(255,255,255,.10);
  text-align:center;
}
.aly1canyon-mobile-shot-top span{
  color:#ffd166;
  font-size:12px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.aly1canyon-mobile-shot-top strong{
  color:#fff;
  font-size:30px;
  line-height:1;
}
.aly1canyon-mobile-shot-top small,
.aly1canyon-mobile-shot-top em{
  color:#cfe0ff;
  font-size:14px;
  line-height:1.25;
  font-style:normal;
  font-weight:800;
}
.aly1canyon-mobile-shot-section{
  display:grid;
  gap:8px;
  padding:13px;
  margin-top:10px;
  border-radius:18px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}
.aly1canyon-mobile-shot-section h4{
  margin:0;
  color:#ffd166;
  font-size:13px;
  letter-spacing:.12em;
  line-height:1;
  text-transform:uppercase;
}
.aly1canyon-mobile-role-row{
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:8px;
  align-items:start;
  padding:8px;
  border-radius:14px;
  background:rgba(4,9,20,.66);
  border:1px solid rgba(255,255,255,.07);
}
.aly1canyon-mobile-role-label{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(110,241,255,.12);
  border:1px solid rgba(110,241,255,.20);
  color:#dffcff;
  font-size:13px;
  font-weight:950;
  text-align:center;
}
.aly1canyon-mobile-role-players{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.aly1canyon-mobile-role-players span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 9px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  font-size:13px;
  line-height:1;
  font-weight:900;
}
.aly1canyon-mobile-reserve-section{
  border-color:rgba(255,209,102,.18);
  background:rgba(255,209,102,.055);
}
.aly1canyon-mobile-reserve-list span{
  background:rgba(255,209,102,.12);
  border-color:rgba(255,209,102,.18);
  color:#fff1bd;
}
.aly1canyon-mobile-unassigned-section{
  border-color:rgba(255,99,125,.24);
  background:rgba(255,99,125,.06);
}
.aly1canyon-mobile-empty{
  margin:0;
  color:rgba(207,224,255,.60);
  font-weight:800;
}
.aly1canyon-compact-shot-capture{
  width:720px!important;
  max-width:720px!important;
}
@media (max-width:760px){
  .aly1canyon-mobile-shot-head{
    flex-direction:column;
  }
  .aly1canyon-download-shot{
    width:100%;
  }
  .aly1canyon-mobile-shot-panel{
    padding:14px;
  }
  .aly1canyon-mobile-shot-card{
    padding:14px;
  }
  .aly1canyon-mobile-role-row{
    grid-template-columns:1fr;
  }
  .aly1canyon-mobile-role-label{
    justify-content:flex-start;
    width:max-content;
    max-width:100%;
  }
}

/* v0.7.6 — internal output tools placement */
.aly1canyon-output-tools-inline{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-top:14px;
  padding:14px;
  border-radius:18px;
  background:rgba(255,209,102,.055);
  border:1px solid rgba(255,209,102,.18);
}
.aly1canyon-output-tools-inline strong{
  display:block;
  color:#fff;
  font-size:15px;
  line-height:1.2;
}
.aly1canyon-output-tools-inline span{
  display:block;
  margin-top:3px;
  color:rgba(247,221,153,.72);
  font-size:12px;
  line-height:1.35;
  font-weight:700;
}
@media (max-width:760px){
  .aly1canyon-output-tools-inline{
    flex-direction:column;
    align-items:stretch;
  }
  .aly1canyon-output-tools-inline .aly1canyon-btn{
    width:100%;
  }
}

/* v0.7.8 — placement reset helper */
.aly1canyon-output-tools-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.aly1canyon-assignment-pending{border-color:rgba(110,241,255,.18)!important;background:rgba(110,241,255,.045)!important}
.aly1canyon-assignment-drag-chip.is-pending{padding-right:6px}
.aly1canyon-pending-remove{display:inline-flex;align-items:center;justify-content:center;margin-left:7px;width:20px;height:20px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;font-size:13px;line-height:1;cursor:pointer}
.aly1canyon-pending-remove:hover{background:rgba(255,99,125,.18);border-color:rgba(255,99,125,.35)}
@media (max-width:767px){.aly1canyon-output-tools-actions{width:100%;justify-content:stretch}.aly1canyon-output-tools-actions .aly1canyon-btn{flex:1 1 100%}}


/* Canyon MVP v0.1.1 — provisional map reference, no assignment roles yet */
.aly1canyon-map-reference-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,320px);
  gap:24px;
  align-items:center;
  margin:22px 0;
  padding:22px;
  border:1px solid rgba(106,167,255,.28);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(14,33,57,.96),rgba(21,52,78,.88));
}
.aly1canyon-map-reference-panel img{
  width:100%;
  max-width:320px;
  justify-self:end;
  border-radius:18px;
  box-shadow:0 16px 38px rgba(0,0,0,.34);
}
.aly1canyon-map-reference-copy h3{margin:.15rem 0 .7rem}
.aly1canyon-map-code-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}
.aly1canyon-map-code-list span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(137,190,255,.35);
  background:rgba(8,19,35,.58);
  font-weight:700;
  font-size:.82rem;
}
.aly1canyon-mobile-main-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.aly1canyon-mobile-shot-foot{
  padding:10px 14px 14px;
  text-align:center;
  font-size:11px;
  opacity:.72;
}
@media (max-width:760px){
  .aly1canyon-map-reference-panel{grid-template-columns:1fr}
  .aly1canyon-map-reference-panel img{justify-self:center}
}


/* v0.1.2 — provisional Canyon assignment positions */
.aly1canyon-assignment-panel{margin-top:18px}
.aly1canyon-assignment-head .aly1canyon-soft{max-width:760px;margin-top:6px}
.aly1canyon-battlefield-map{
  min-height:780px;
  background:
    radial-gradient(circle at 50% 50%,rgba(204,172,82,.20),transparent 19%),
    radial-gradient(circle at 18% 20%,rgba(255,255,255,.08),transparent 25%),
    radial-gradient(circle at 83% 78%,rgba(50,86,36,.26),transparent 28%),
    linear-gradient(145deg,#607f45 0%,#779a53 48%,#55723f 100%);
  border-color:rgba(178,220,135,.34);
}
.aly1canyon-battlefield-map:before{
  background:repeating-linear-gradient(135deg,rgba(45,69,36,.30) 0 18px,rgba(213,230,154,.09) 18px 34px);
}
.aly1canyon-battlefield-map:after{
  background:repeating-linear-gradient(45deg,rgba(45,69,36,.25) 0 16px,rgba(213,230,154,.08) 16px 36px);
}
.aly1canyon-map-decor .road-a{left:31%;right:31%;top:18%;transform:rotate(90deg)}
.aly1canyon-map-decor .road-b{left:18%;right:18%;top:52%;transform:rotate(0deg)}
.aly1canyon-map-decor .road-c{left:28%;right:28%;top:73%;height:2px;border-top:2px dashed rgba(255,245,186,.18);transform:rotate(0deg)}
.aly1canyon-map-role{width:154px;min-height:96px}
.aly1canyon-map-role.has-players{background:rgba(4,28,24,.84);box-shadow:0 18px 38px rgba(0,0,0,.24),0 0 0 1px rgba(103,245,164,.16),0 0 22px rgba(103,245,164,.07)}
.aly1canyon-map-role.pos-a1{left:50%;top:3%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c1{left:18%;top:19%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-b{left:50%;top:25%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2{left:82%;top:19%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-d1{left:32%;top:48%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-d2{left:68%;top:48%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-a2{left:16%;top:75%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-a4{left:50%;top:78%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-a3{left:84%;top:75%;transform:translateX(-50%)}
.aly1canyon-map-role.role-spawn{border-color:#f1f5f9}
.aly1canyon-map-role.role-safe{border-color:#5bc0eb}
.aly1canyon-map-role.role-low{border-color:#ff9f43}
.aly1canyon-map-role.role-high{border-color:#ff5ca8}
.aly1canyon-map-role.role-spawn .aly1canyon-map-building-icon{background:linear-gradient(145deg,#f8fafc,#7f8da3);color:#172033}
.aly1canyon-map-role.role-safe .aly1canyon-map-building-icon{background:linear-gradient(145deg,#75d7ff,#2676b7);color:#f4fbff}
.aly1canyon-map-role.role-low .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ffc274,#c46b18);color:#fff9ec}
.aly1canyon-map-role.role-high .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ff8bc3,#b82e77);color:#fff4fa}
.aly1canyon-map-building-icon{width:34px;height:34px;font-size:10px;border-radius:11px}
.aly1canyon-map-role{grid-template-columns:34px minmax(0,1fr)}
.aly1canyon-map-role .aly1canyon-assignment-role-head strong{font-size:14px}
.aly1canyon-map-role .aly1canyon-assignment-role-head small{font-size:9.5px}
.aly1canyon-map-role .aly1canyon-assignment-role-head span{font-size:9px;white-space:nowrap}
.aly1canyon-output-tools-inline{margin-top:14px}
@media (max-width:1180px){.aly1canyon-battlefield-map{min-height:900px}}
@media (max-width:760px){.aly1canyon-battlefield-map{min-height:initial}.aly1canyon-map-role{width:auto}}


/* v0.1.3 — validated Canyon building map */
.aly1canyon-assignment-head .aly1canyon-soft{max-width:860px}
.aly1canyon-battlefield-map{
  min-height:940px;
  background:
    radial-gradient(circle at 50% 50%,rgba(204,172,82,.18),transparent 18%),
    radial-gradient(circle at 18% 20%,rgba(255,255,255,.08),transparent 25%),
    radial-gradient(circle at 83% 78%,rgba(50,86,36,.22),transparent 28%),
    linear-gradient(145deg,#607f45 0%,#789d57 48%,#55723f 100%);
  border-color:rgba(178,220,135,.34);
}
.aly1canyon-map-decor .road-a{left:31%;right:31%;top:22%;transform:rotate(90deg)}
.aly1canyon-map-decor .road-b{left:18%;right:18%;top:57%;transform:rotate(0deg)}
.aly1canyon-map-decor .road-c{left:12%;right:12%;top:77%;height:2px;border-top:2px dashed rgba(255,245,186,.18);transform:rotate(0deg)}
.aly1canyon-map-role{width:146px;min-height:96px;grid-template-columns:34px minmax(0,1fr)}
.aly1canyon-map-role.has-players{background:rgba(4,28,24,.86);box-shadow:0 18px 38px rgba(0,0,0,.24),0 0 0 1px rgba(103,245,164,.16),0 0 22px rgba(103,245,164,.07)}
.aly1canyon-map-role .aly1canyon-assignment-role-head strong{font-size:13px;line-height:1.05}
.aly1canyon-map-role .aly1canyon-assignment-role-head small{font-size:9px;line-height:1.15}
.aly1canyon-map-role .aly1canyon-assignment-role-head span{font-size:9px;white-space:nowrap}
.aly1canyon-map-building-icon{width:34px;height:34px;font-size:10px;border-radius:11px}

.aly1canyon-map-role.pos-c1-1{left:24%;top:8%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c1-2{left:76%;top:8%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-d1{left:50%;top:24%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e1-1{left:16%;top:39%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e2-1{left:84%;top:39%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-d2{left:50%;top:55%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e2-2{left:16%;top:55%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e1-2{left:84%;top:55%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-1{left:10.5%;top:77%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-2{left:36.5%;top:77%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-3{left:63.5%;top:77%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-4{left:89.5%;top:77%;transform:translateX(-50%)}

.aly1canyon-map-role.role-c1{border-color:#ff6b6b}
.aly1canyon-map-role.role-c2{border-color:#69a7ff}
.aly1canyon-map-role.role-d{border-color:#ff5ca8}
.aly1canyon-map-role.role-e1{border-color:#ffb347}
.aly1canyon-map-role.role-e2{border-color:#ffc857}
.aly1canyon-map-role.role-c1 .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ff9a9a,#c43232);color:#fff7f7}
.aly1canyon-map-role.role-c2 .aly1canyon-map-building-icon{background:linear-gradient(145deg,#92baff,#355fdc);color:#eef5ff}
.aly1canyon-map-role.role-d .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ff8bc3,#b82e77);color:#fff4fa}
.aly1canyon-map-role.role-e1 .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ffd289,#cc7a1d);color:#fff8ec}
.aly1canyon-map-role.role-e2 .aly1canyon-map-building-icon{background:linear-gradient(145deg,#ffe08a,#be7b11);color:#fff9ea}

@media (max-width:1280px){
  .aly1canyon-battlefield-map{min-height:980px}
}
@media (max-width:980px){
  .aly1canyon-battlefield-map{min-height:1040px}
  .aly1canyon-map-role{width:138px}
  .aly1canyon-map-role.pos-c1-1,.aly1canyon-map-role.pos-c1-2{top:7%}
  
}
@media (max-width:760px){
  .aly1canyon-battlefield-map{min-height:1220px}
  .aly1canyon-map-role{width:128px}
  .aly1canyon-map-role.pos-c1-1{left:18%;top:6%}
  .aly1canyon-map-role.pos-c1-2{left:82%;top:6%}
  .aly1canyon-map-role.pos-d1{top:21%}
  .aly1canyon-map-role.pos-e1-1{left:15%;top:34%}
  .aly1canyon-map-role.pos-e2-1{left:85%;top:34%}
  .aly1canyon-map-role.pos-d2{top:51%}
  .aly1canyon-map-role.pos-e2-2{left:15%;top:51%}
  .aly1canyon-map-role.pos-e1-2{left:85%;top:51%}
  .aly1canyon-map-role.pos-c2-1{left:10.5%;top:76%}
  .aly1canyon-map-role.pos-c2-2{left:36.5%;top:76%}
  .aly1canyon-map-role.pos-c2-3{left:63.5%;top:76%}
  .aly1canyon-map-role.pos-c2-4{left:89.5%;top:76%}
}


/* v0.1.4 — evenly spaced Sample Warehouse row */


/* v0.1.5 — canonical save navigation / Edit players reload fix */


/* v0.1.6 — clearer in-game grid alignment */
.aly1canyon-battlefield-map{
  min-height:980px;
  background:
    radial-gradient(circle at 50% 48%,rgba(214,185,77,.14),transparent 18%),
    radial-gradient(circle at 18% 20%,rgba(255,255,255,.08),transparent 25%),
    radial-gradient(circle at 83% 78%,rgba(50,86,36,.20),transparent 28%),
    linear-gradient(145deg,#648649 0%,#7ba05a 48%,#577440 100%);
}
.aly1canyon-map-decor{position:absolute;inset:18px;pointer-events:none;z-index:0}
.aly1canyon-map-decor .map-band,
.aly1canyon-map-decor .map-cell,
.aly1canyon-map-decor .map-core,
.aly1canyon-map-decor .map-core-ring{position:absolute;border-radius:8px}
.aly1canyon-map-decor .map-band{border:2px solid rgba(245,245,245,.78);background:rgba(255,255,255,.05)}
.aly1canyon-map-decor .band-top{left:2.5%;right:2.5%;top:1.5%;height:6.2%;background:linear-gradient(180deg,rgba(129,222,98,.85),rgba(103,192,77,.78));border-color:rgba(204,255,187,.78)}
.aly1canyon-map-decor .band-bottom-left{left:3.2%;width:45%;bottom:2.2%;height:6%;background:linear-gradient(180deg,rgba(245,143,120,.82),rgba(212,104,90,.78));border-color:rgba(255,213,205,.75)}
.aly1canyon-map-decor .band-bottom-right{right:3.2%;width:45%;bottom:2.2%;height:6%;background:linear-gradient(180deg,rgba(245,143,120,.82),rgba(212,104,90,.78));border-color:rgba(255,213,205,.75)}
.aly1canyon-map-decor .map-cell{border:2px solid rgba(241,245,249,.72);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.aly1canyon-map-decor .cell-c1-left{left:8%;top:10%;width:27%;height:9%}
.aly1canyon-map-decor .cell-c1-right{right:8%;top:10%;width:27%;height:9%}
.aly1canyon-map-decor .cell-d1{left:27%;right:27%;top:20%;height:10%}
.aly1canyon-map-decor .cell-e1-1{left:4.5%;top:30%;width:21%;height:12%}
.aly1canyon-map-decor .cell-e2-1{right:4.5%;top:30%;width:21%;height:12%}
.aly1canyon-map-decor .cell-e2-2{left:4.5%;top:44%;width:21%;height:12%}
.aly1canyon-map-decor .cell-e1-2{right:4.5%;top:44%;width:21%;height:12%}
.aly1canyon-map-decor .map-core{left:26%;right:26%;top:33%;height:24%;background:rgba(110,110,110,.35);border:2px solid rgba(239,242,245,.5)}
.aly1canyon-map-decor .map-core-ring{left:25%;right:25%;top:32%;height:26%;border:4px solid rgba(255,225,76,.88);border-radius:4px;background:transparent;box-shadow:0 0 0 1px rgba(0,0,0,.1) inset}
.aly1canyon-map-decor .cell-c2-1{left:3%;bottom:11%;width:21%;height:8%}
.aly1canyon-map-decor .cell-c2-2{left:27%;bottom:11%;width:21%;height:8%}
.aly1canyon-map-decor .cell-c2-3{left:52%;bottom:11%;width:21%;height:8%}
.aly1canyon-map-decor .cell-c2-4{right:3%;bottom:11%;width:21%;height:8%}

.aly1canyon-map-role{width:136px;min-height:92px;z-index:1}
.aly1canyon-map-role .aly1canyon-assignment-role-head strong{font-size:12px}
.aly1canyon-map-role .aly1canyon-assignment-role-head small{font-size:8.7px}
.aly1canyon-map-role .aly1canyon-assignment-role-head span{font-size:8.5px}
.aly1canyon-map-role.pos-c1-1{left:21.5%;top:11.4%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c1-2{left:78.5%;top:11.4%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-d1{left:50%;top:22.6%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e1-1{left:15%;top:34.5%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e2-1{left:85%;top:34.5%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-d2{left:50%;top:46.6%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e2-2{left:15%;top:46.6%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-e1-2{left:85%;top:46.6%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-1{left:13.5%;top:72.4%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-2{left:37.5%;top:72.4%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-3{left:62.5%;top:72.4%;transform:translateX(-50%)}
.aly1canyon-map-role.pos-c2-4{left:86.5%;top:72.4%;transform:translateX(-50%)}

@media (max-width:1180px){
  .aly1canyon-battlefield-map{min-height:1020px}
  .aly1canyon-map-role{width:130px}
}
@media (max-width:760px){
  .aly1canyon-battlefield-map{min-height:1180px}
  .aly1canyon-map-decor{inset:12px}
  .aly1canyon-map-role{width:122px}
  .aly1canyon-map-role.pos-c1-1{left:21%;top:12.2%}
  .aly1canyon-map-role.pos-c1-2{left:79%;top:12.2%}
  .aly1canyon-map-role.pos-d1{top:23.8%}
  .aly1canyon-map-role.pos-e1-1{left:16%;top:35.8%}
  .aly1canyon-map-role.pos-e2-1{left:84%;top:35.8%}
  .aly1canyon-map-role.pos-d2{top:48.4%}
  .aly1canyon-map-role.pos-e2-2{left:16%;top:48.4%}
  .aly1canyon-map-role.pos-e1-2{left:84%;top:48.4%}
  .aly1canyon-map-role.pos-c2-1{left:14%;top:73.5%}
  .aly1canyon-map-role.pos-c2-2{left:38%;top:73.5%}
  .aly1canyon-map-role.pos-c2-3{left:62%;top:73.5%}
  .aly1canyon-map-role.pos-c2-4{left:86%;top:73.5%}
}
