/* Raids: shared member attendance, officer management, and verified Forever composition. */
.vmw-raids-page { display: grid; gap: 18px; width: 100%; min-width: 0; }
.vmw-raids-page > .vmw-page-head { margin-bottom: 0; }
.vmw-raid-eyebrow { display: block; color: var(--vmw-link); font-size: .65rem; font-weight: 650; text-transform: uppercase; letter-spacing: .1em; line-height: 1.6; }
.vmw-raid-section-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding: 18px; }
.vmw-raid-section-head > div { min-width: 0; flex: 1; }
.vmw-raid-section-head h2 { font-family: var(--vmw-font-display); font-size: 1.15rem; font-weight: 600; margin: 4px 0 0; }
.vmw-raid-section-head p { margin: 8px 0 0; font-size: .8rem; color: var(--vmw-dim); line-height: 1.7; max-width: 85ch; }
.vmw-home-raids { min-width: 0; border-top: 2px solid var(--vmw-accent); }
.vmw-home-raids > .vmw-raid-section-head { padding: 18px; border-bottom: 1px solid var(--vmw-border); }
.vmw-home-raids-body { flex: 1; min-width: 0; padding: 18px; }
.vmw-home-raids .vmw-link-btn, .vmw-raids-page .vmw-page-head-actions > .vmw-link-btn { display: inline-flex; align-items: center; gap: 8px; }
.vmw-raid-upcoming-row { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(300px, 1fr); gap: 18px; overflow-x: auto; padding: 6px 6px 12px; margin: -6px; scroll-snap-type: x proximity; }
.vmw-raid-summary { min-width: 0; padding: 18px; gap: 16px; border-top: 3px solid var(--vmw-accent); scroll-snap-align: start; color: var(--rz-text-color); text-decoration: none; cursor: pointer; transition: border-color .1s ease, background-color .1s ease; }
.vmw-raid-summary:visited { color: var(--rz-text-color); }
.vmw-raid-summary:hover { color: var(--rz-text-color); text-decoration: none; border-color: var(--vmw-accent); background-color: color-mix(in srgb, var(--vmw-accent) 6%, var(--vmw-surface)); }
.vmw-raid-summary:focus-visible { outline: 2px solid var(--vmw-accent); outline-offset: 2px; }
.vmw-raid-summary.is-canceled, .vmw-raid-intro.is-canceled { border-top-color: var(--vmw-danger); }
.vmw-raid-summary-top { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.vmw-raid-summary h3 { font-family: var(--vmw-font-display); font-size: 1.05rem; font-weight: 600; line-height: 1.5; margin: 0; overflow-wrap: anywhere; }
.vmw-raid-summary:hover h3, .vmw-raid-summary:focus-visible h3 { color: var(--vmw-link); }
.vmw-raid-state { display: inline-flex; padding: 3px 7px; font-size: .64rem; font-weight: 650; border: 1px solid var(--vmw-border); border-radius: var(--vmw-radius-sm); background: var(--vmw-inset); color: var(--vmw-dim); white-space: nowrap; }
.vmw-raid-state.is-open { color: var(--vmw-link); background: var(--vmw-accent-faint); border-color: color-mix(in srgb, var(--vmw-accent) 35%, var(--vmw-border)); }
.vmw-raid-state.is-cancelled, .vmw-raid-state.is-canceled { color: color-mix(in srgb, var(--vmw-danger) 80%, var(--rz-text-color)); background: color-mix(in srgb, var(--vmw-danger) 9%, transparent); border-color: color-mix(in srgb, var(--vmw-danger) 35%, var(--vmw-border)); }
.vmw-raid-time { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.vmw-raid-time > time { font-size: .85rem; line-height: 1.6; font-weight: 600; }
.vmw-raid-time > span { font-size: .7rem; color: var(--vmw-dim); line-height: 1.6; }
.vmw-raid-summary-counts { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 18px; font-size: .75rem; color: var(--vmw-dim); }
.vmw-raid-summary-counts > span { display: inline-flex; align-items: center; gap: 6px; }
.vmw-raid-summary-counts .rzi { font-size: 18px; }
.vmw-raid-summary-counts > .vmw-link-btn { margin-left: auto; }
.vmw-raid-summary-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--vmw-border); }
.vmw-raid-attendance { display: inline-flex; align-items: center; gap: 7px; font-size: .77rem; font-weight: 650; }
.vmw-raid-attendance > .rzi { font-size: 19px; }
.vmw-raid-attendance.is-not_signed_up { color: color-mix(in srgb, var(--vmw-warn) 60%, var(--rz-text-color)); }
.vmw-raid-attendance.is-signed_up { color: color-mix(in srgb, var(--vmw-ok) 60%, var(--rz-text-color)); }
.vmw-raid-attendance.is-absent { color: var(--vmw-dim); }
.vmw-raid-list-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; padding: 18px; border: 1px solid var(--vmw-border); border-radius: var(--vmw-radius); background: var(--vmw-surface); }
.vmw-raid-list-toolbar > .vmw-search { flex: 1; min-width: 220px; }
.vmw-raid-tabs { display: inline-grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 6px; }
.vmw-raid-tabs button { min-height: 36px; padding: 8px 12px; border: 1px solid var(--vmw-border); border-radius: var(--vmw-radius-sm); background: transparent; color: var(--vmw-dim); font: 600 .75rem var(--vmw-font); cursor: pointer; }
.vmw-raid-tabs button[aria-pressed="true"] { border-color: var(--vmw-accent); background: var(--vmw-accent-soft); color: var(--vmw-link); }
.vmw-raid-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 330px), 1fr)); gap: 18px; }
.vmw-raid-live-error { display: flex; align-items: flex-start; gap: 8px; padding: 12px 16px; margin: 0; border: 1px solid color-mix(in srgb, var(--vmw-danger) 25%, var(--vmw-border)); border-radius: var(--vmw-radius); font-size: .8rem; line-height: 1.7; color: var(--vmw-dim); }
.vmw-raid-live-error > .rzi { color: var(--vmw-danger); font-size: 20px; flex-shrink: 0; }
.vmw-raid-intro { border-top: 3px solid var(--vmw-accent); }
.vmw-raids-page .vmw-raid-back-button { min-height: 40px; padding: 0 16px; border: 1px solid var(--vmw-border-strong); border-radius: var(--vmw-radius); background: var(--vmw-surface); color: var(--rz-text-color); }
.vmw-raids-page .vmw-raid-back-button:hover { border-color: var(--vmw-accent); background: var(--vmw-accent-faint); }
.vmw-raids-page .vmw-raid-back-button:focus-visible { outline: 2px solid var(--vmw-accent); outline-offset: 2px; }
.vmw-raid-intro-body { display: flex; flex-direction: column; gap: 18px; padding: 18px; }
.vmw-raid-intro h2 { font-family: var(--vmw-font-display); font-size: 1.2rem; font-weight: 600; margin: 0; }
.vmw-raid-notes { white-space: pre-wrap; overflow-wrap: anywhere; font-size: .87rem; line-height: 1.8; margin: 0; }
.vmw-raid-my-attendance { border-left: 3px solid var(--vmw-accent); }
.vmw-raid-attendance-controls { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 18px; padding: 0 18px 18px; }
.vmw-raid-character-choice { display: flex; align-items: flex-end; gap: 12px; min-width: 0; flex: 1; }
.vmw-raid-character-choice > img { border: 1px solid var(--vmw-border-strong); border-radius: var(--vmw-radius-sm); flex-shrink: 0; }
.vmw-raid-character-choice > div { display: flex; flex-direction: column; gap: 8px; flex: 1; min-width: 0; max-width: 440px; }
.vmw-raid-character-choice label, .vmw-raid-form label { font-size: .8rem; font-weight: 600; }
.vmw-raid-character-choice select { width: 100%; min-height: 44px; border: 1px solid var(--vmw-border-strong); border-radius: var(--vmw-radius); padding: 10px 32px 10px 12px; color: var(--rz-text-color); background: var(--rz-body-background-color); font: .85rem var(--vmw-font); }
.vmw-raid-character-select-shell { position: relative; display: flex; min-width: 0; }
.vmw-raid-character-select-shell select { appearance: none; height: 44px; min-width: 0; padding: 0 44px 0 14px; text-overflow: ellipsis; cursor: pointer; }
.vmw-raid-character-select-shell > .rzi { position: absolute; inset-inline-end: 14px; top: 50%; transform: translateY(-50%); font-size: 20px; color: var(--vmw-dim); pointer-events: none; }
.vmw-raid-character-select-shell select:disabled { cursor: default; opacity: .6; }
.vmw-raid-character-select-shell select:disabled + .rzi { opacity: .6; }
@media (forced-colors: active) { .vmw-raid-character-select-shell select { appearance: auto; padding-inline-end: 14px; } .vmw-raid-character-select-shell > .rzi { display: none; } }
.vmw-raid-attendance-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.vmw-raid-my-attendance > .vmw-field-help { margin: 0; padding: 0 18px 18px; }
.vmw-raid-role-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--vmw-border); }
.vmw-raid-role { padding: 18px; min-width: 0; }
.vmw-raid-role:nth-child(odd) { border-right: 1px solid var(--vmw-border); }
.vmw-raid-role:nth-child(-n+2) { border-bottom: 1px solid var(--vmw-border); }
.vmw-raid-role h3, .vmw-raid-absences h3 { display: flex; align-items: center; gap: 8px; font-size: .86rem; font-weight: 650; margin: 0 0 16px; }
.vmw-raid-role h3 > .rzi, .vmw-raid-absences h3 > .rzi { color: var(--vmw-link); font-size: 20px; }
.vmw-raid-role h3 > span { margin-left: auto; color: var(--vmw-dim); font-variant-numeric: tabular-nums; }
.vmw-raid-role ul { padding: 0; margin: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.vmw-raid-role li { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 10px; background: var(--vmw-hover); border-radius: var(--vmw-radius-sm); }
.vmw-raid-role li > img { flex-shrink: 0; border: 1px solid var(--vmw-border-strong); border-radius: var(--vmw-radius-sm); }
.vmw-raid-role li > div { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.vmw-raid-role li strong { font-size: .8rem; font-weight: 600; overflow-wrap: anywhere; }
.vmw-raid-role li div > span { font-size: .69rem; color: var(--vmw-dim); }
.vmw-raid-role li > a { color: var(--vmw-dim); padding: 6px; }
.vmw-raid-role li > a .rzi { font-size: 17px; }
.vmw-raid-role-empty { color: var(--vmw-dim); font-size: .8rem; margin: 20px 0; }
.vmw-raid-absences { padding: 18px; border-top: 1px solid var(--vmw-border); }
.vmw-raid-absences > ul { padding: 0; margin: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }
.vmw-raid-absences li { min-width: 0; }
.vmw-raid-absences a { color: var(--vmw-link); font-size: .8rem; overflow-wrap: anywhere; text-underline-offset: 3px; }
.vmw-raid-absences p { display: flex; flex-direction: column; gap: 5px; white-space: pre-wrap; overflow-wrap: anywhere; font-size: .8rem; line-height: 1.6; margin: 8px 0 0; padding: 12px; background: var(--vmw-inset); border-radius: var(--vmw-radius-sm); }
.vmw-raid-absences p > span { font-size: .62rem; text-transform: uppercase; letter-spacing: .05em; color: var(--vmw-dim); }
.vmw-raid-coverage-total { padding: 8px 10px; border: 1px solid var(--vmw-border); border-radius: var(--vmw-radius); color: var(--vmw-link); font-size: .75rem; white-space: nowrap; }
.vmw-raid-buff-groups { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--vmw-border); }
.vmw-raid-buff-group { padding: 18px; min-width: 0; }
.vmw-raid-buff-group + .vmw-raid-buff-group { border-left: 1px solid var(--vmw-border); }
.vmw-raid-buff-group h3 { margin: 0 0 15px; font-size: .85rem; font-weight: 650; }
.vmw-raid-buff { margin: 0 0 5px; }
.vmw-raid-buff summary { display: flex; align-items: center; gap: 7px; padding: 7px 3px; border-radius: var(--vmw-radius-sm); list-style: none; cursor: pointer; }
.vmw-raid-buff summary::-webkit-details-marker { display: none; }
.vmw-raid-buff summary:hover { background: var(--vmw-hover); }
.vmw-raid-buff-state { flex: 0 0 17px; font-size: 18px; color: color-mix(in srgb, var(--vmw-ok) 60%, var(--rz-text-color)); }
.vmw-raid-buff.is-missing .vmw-raid-buff-state { color: color-mix(in srgb, var(--vmw-danger) 70%, var(--rz-text-color)); }
.vmw-raid-buff-link { display: inline-flex; align-items: center; gap: 7px; }
.vmw-raid-buff-link > img { flex: 0 0 24px; border-radius: var(--vmw-radius-sm); }
.vmw-raid-buff summary > a { flex: 1; min-width: 0; color: var(--vmw-link); font-size: .75rem; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere; }
.vmw-raid-buff summary > a:hover { text-decoration: underline; text-underline-offset: 3px; }
.vmw-raid-provider-count { flex: 0 0 20px; color: var(--vmw-dim); font-size: .7rem; text-align: right; font-variant-numeric: tabular-nums; }
.vmw-raid-buff-detail { margin: 3px 0 12px 27px; padding: 12px; font-size: .73rem; color: var(--vmw-dim); line-height: 1.7; border-left: 2px solid var(--vmw-accent); background: var(--vmw-inset); }
.vmw-raid-buff-detail p { margin: 0 0 8px; overflow-wrap: anywhere; }
.vmw-raid-buff-detail p:last-child { margin-bottom: 0; }
/* Keep provider details visually part of the game's dark tooltip in either site theme. */
.wowhead-tooltip .vmw-buff-tooltip-providers { box-sizing: border-box; max-width: 340px; margin-top: 8px; padding: 10px 12px; border-top: 1px solid color-mix(in srgb, var(--vmw-gold) 45%, transparent); color: var(--vmw-parchment); background: var(--vmw-iron); font: 12px/1.5 var(--vmw-font); white-space: normal; overflow-wrap: anywhere; }
.wowhead-tooltip .vmw-buff-tooltip-providers :is(h3, h4, strong) { color: #d9c59a; font: 650 12px/1.5 var(--vmw-font); }
.wowhead-tooltip .vmw-buff-tooltip-providers :is(h3, h4, p) { margin: 0 0 6px; }
.wowhead-tooltip .vmw-buff-tooltip-context { display: block; margin-bottom: 6px; }
.wowhead-tooltip .vmw-buff-tooltip-condition { color: color-mix(in srgb, var(--vmw-parchment) 75%, var(--vmw-iron)); }
.wowhead-tooltip .vmw-buff-tooltip-providers ul { margin: 3px 0 9px; padding-left: 16px; list-style: disc; }
.wowhead-tooltip .vmw-buff-tooltip-providers li { margin: 2px 0; padding: 0; color: inherit; font: inherit; }
.wowhead-tooltip .vmw-buff-tooltip-providers > :last-child { margin-bottom: 0; }
.vmw-raid-form { display: grid; gap: 18px; }
.vmw-raid-form > div:not(.vmw-raid-form-pair), .vmw-raid-form-pair > div { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.vmw-raid-form-pair { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 16px; }
.vmw-raid-form-schedule { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, .8fr); }
.vmw-raid-date-picker { width: 100%; min-width: 0; }
.vmw-raid-form .rz-textbox, .vmw-raid-form .rz-textarea { width: 100%; }
.vmw-raid-form .rz-textarea { min-height: 110px; resize: vertical; padding: 12px; }
.vmw-raid-form .vmw-field-help { margin: -6px 0 0; line-height: 1.7; }
.vmw-raid-form label > span { color: var(--vmw-dim); font-weight: 400; }
.vmw-raid-channel-select { width: 100%; min-height: 44px; }
.vmw-raid-ping-setting { padding: 15px 16px; border: 1px solid var(--vmw-border); border-radius: var(--vmw-radius); background: var(--vmw-inset); }
.vmw-raid-ping-control { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.vmw-raid-ping-control > div:first-child { flex: 1; min-width: 0; }
.vmw-raid-form .vmw-raid-ping-control .vmw-field-help { margin: 5px 0 0; }
.vmw-raid-ping-control > .rz-switch { flex-shrink: 0; }
.vmw-raid-ping-setting > .vmw-raid-channel-notice { margin-top: 4px; }
.vmw-raid-channel-option { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-width: 0; }
.vmw-raid-channel-option > span { font-size: .84rem; overflow-wrap: anywhere; }
.vmw-raid-channel-option > small { color: var(--vmw-dim); font-size: .68rem; white-space: normal; text-align: right; }
.vmw-raid-channel-field .vmw-empty { margin: 0; }
.vmw-raid-channel-retry { align-self: flex-start; }
.vmw-raid-channel-notice { display: flex; align-items: flex-start; gap: 9px; padding: 12px; margin: 0; border: 1px solid color-mix(in srgb, var(--vmw-warn) 35%, var(--vmw-border)); border-radius: var(--vmw-radius-sm); background: var(--vmw-inset); color: var(--vmw-dim); font-size: .78rem; line-height: 1.6; }
.vmw-raid-channel-notice > .rzi { flex-shrink: 0; font-size: 19px; color: color-mix(in srgb, var(--vmw-warn) 65%, var(--rz-text-color)); }
@media (prefers-reduced-motion: reduce) { .vmw-raid-summary { transition: none; } }
.vmw-raid-channel-destination { padding: 14px 16px; border: 1px solid var(--vmw-border); border-radius: var(--vmw-radius); background: var(--vmw-inset); }
.vmw-raid-channel-destination > .vmw-link-btn { max-width: 100%; margin: 8px 0; white-space: normal; overflow-wrap: anywhere; }
.vmw-raid-channel-destination > .vmw-link-btn > .rzi { flex-shrink: 0; }
.vmw-raid-form .vmw-raid-channel-destination .vmw-field-help, .vmw-raid-form .vmw-raid-channel-field .vmw-field-help { margin: 0; }
.vmw-raids-page a:focus-visible, .vmw-raid-tabs button:focus-visible, .vmw-raid-character-choice select:focus-visible, .vmw-raid-buff summary:focus-visible, .vmw-raid-upcoming-row a:focus-visible { outline: 2px solid var(--vmw-accent); outline-offset: 3px; }
@media (max-width: 1100px) { .vmw-raid-buff-groups { grid-template-columns: minmax(0, 1fr); } .vmw-raid-buff-group + .vmw-raid-buff-group { border-left: 0; border-top: 1px solid var(--vmw-border); } }
@media (max-width: 760px) { .vmw-raid-role-grid, .vmw-raid-absences > ul { grid-template-columns: minmax(0, 1fr); } .vmw-raid-role:nth-child(odd) { border-right: 0; } .vmw-raid-role:not(:last-child) { border-bottom: 1px solid var(--vmw-border); } .vmw-raid-character-choice { flex-basis: 100%; } .vmw-raid-character-choice > div { max-width: none; } .vmw-raid-attendance-actions { width: 100%; justify-content: flex-end; } }
@media (max-width: 640px) {
    .vmw-raid-upcoming-row { grid-auto-columns: minmax(min(280px, 100%), 85%); }
    .vmw-raid-list-toolbar { gap: 12px; }
    .vmw-raid-list-toolbar > .vmw-search { flex-basis: 100%; min-width: 0; }
    .vmw-raid-list-toolbar > .vmw-card-meta { margin-left: auto; }
    .vmw-raid-attendance-actions > .rz-button { flex: 1; }
    .vmw-raid-summary-counts > .vmw-link-btn { margin-left: 0; }
    .vmw-raid-form-pair { grid-template-columns: minmax(0, 1fr); }
}
