/*
 * Copyright © 2026 ITXL LTD.
 * Copyright owner: ITXL LTD
 * Author: ITXL LTD
 * GPL-2.0-or-later where required by the applicable WordPress/GPL licence.
 */
.zzagp-level-badge{position:absolute;top:18px;right:18px;z-index:20;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid rgba(255,255,255,.54);border-radius:999px;background:rgba(0,2,34,.88);box-shadow:0 12px 30px rgba(0,2,34,.28);backdrop-filter:blur(10px);font-family:Inter,system-ui,sans-serif;color:#fff}
.zzagp-level-badge span{color:#00FFFF;font-size:15px}.zzagp-level-badge strong{font-size:11px;letter-spacing:.14em}.zzagp-level-badge.agency_max{background:linear-gradient(135deg,rgba(0,2,34,.96),rgba(22,63,105,.96));border-color:rgba(0,255,255,.72)}.zzagp-level-badge.agency_max span{color:#00FFFF}
.zzagp-public-agency .zzv3-public-tier-status[data-agency-star="1"]{display:grid;grid-template-columns:auto auto;grid-template-areas:"small small" "star label";column-gap:6px;align-items:center}.zzagp-public-agency .zzv3-public-tier-status[data-agency-star="1"] small{grid-area:small;font-size:7px;line-height:1;letter-spacing:.14em;opacity:.78}.zzagp-public-agency .zzv3-public-tier-status[data-agency-star="1"] span{grid-area:star;color:var(--zzagp-agency-star,#FF6B5E)}.zzagp-public-agency .zzv3-public-tier-status[data-agency-star="1"] strong{grid-area:label}
.zzagp-join-agency{margin:24px 0;padding:24px 26px;border:1px solid rgba(0,255,255,.35);border-radius:20px;background:linear-gradient(135deg,#000222,#121e37);box-shadow:0 18px 45px rgba(0,2,34,.18);display:flex;align-items:center;justify-content:space-between;gap:22px;font-family:Inter,system-ui,sans-serif;color:#fff}.zzagp-join-agency>div:first-child>span{display:block;margin-bottom:5px;color:#00FFFF;font-size:9px;font-weight:800;letter-spacing:.18em}.zzagp-join-agency h2{margin:0 0 6px!important;color:#fff!important;font-size:22px!important}.zzagp-join-agency p{margin:0;color:#c9d1e2;font-size:12.5px;line-height:1.5}.zzagp-join-action{display:flex;flex-direction:column;align-items:center;gap:6px;flex:0 0 auto}.zzagp-join-action a,.zzagp-join-action button{min-width:142px;border:0;border-radius:11px;padding:12px 16px;background:#00FFFF;color:#000222;font:800 12px/1 Inter,system-ui,sans-serif;text-align:center;text-decoration:none!important;cursor:pointer}.zzagp-join-action button[disabled]{background:#657086;color:#eef2f8;cursor:not-allowed}.zzagp-join-action small{font-size:8px;letter-spacing:.16em;color:#00FFFF}.zzagp-join-agency.state-request_sent{border-color:rgba(0,255,255,.55)}
.zzagp-public-roster{margin:28px 0;padding:28px;border:1px solid rgba(0,2,34,.1);border-radius:22px;background:linear-gradient(145deg,#fff,#f7f9fc);box-shadow:0 18px 50px rgba(0,2,34,.08);font-family:Inter,system-ui,sans-serif}.zzagp-public-roster>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.zzagp-public-roster>header>div:first-child>span{display:block;margin-bottom:5px;color:#007F8A;font-size:10px;font-weight:800;letter-spacing:.18em}.zzagp-public-roster>header h2{margin:0 0 7px!important;color:#000222!important;font-size:28px!important;line-height:1.1!important}.zzagp-public-roster>header p{margin:0;color:#596174;font-size:13px}
.zzagp-roster-tools{display:flex;align-items:center;gap:10px}.zzagp-roster-count{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(0,2,34,.11);border-radius:10px;background:#fff}.zzagp-roster-count strong{font-size:11px;color:#000222}.zzagp-roster-count small,.zzagp-roster-count em{font-size:8px;font-style:normal;font-weight:800;letter-spacing:.11em;color:#007F8A}.zzagp-roster-count.is-full{border-color:rgba(255,102,0,.35);background:#fff8f2}.zzagp-roster-count.is-full em{color:#FF6600}
.zzagp-roster-toggle{display:flex;padding:3px;border:1px solid rgba(0,2,34,.12);border-radius:10px;background:#fff}.zzagp-roster-toggle button{border:0;border-radius:7px;padding:7px 11px;background:transparent;color:#596174;font-size:11px;font-weight:700;cursor:pointer}.zzagp-roster-toggle button.active{background:#000222;color:#fff}
.zzagp-roster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.zzagp-roster-card{display:flex;min-width:0;overflow:hidden;border:1px solid rgba(0,2,34,.09);border-radius:16px;background:#fff;transition:transform .18s ease,box-shadow .18s ease}.zzagp-roster-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,2,34,.1)}.zzagp-roster-image{width:104px;min-height:112px;flex:0 0 104px;overflow:hidden;background:#e9eef6;display:flex;align-items:center;justify-content:center}.zzagp-roster-image img{width:100%;height:100%;object-fit:cover}.zzagp-roster-fallback{font-size:28px;color:#00FFFF}.zzagp-roster-copy{min-width:0;padding:14px;flex:1}.zzagp-roster-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.zzagp-roster-top>span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#697287;text-transform:uppercase}.zzagp-roster-top i{font-style:normal;color:var(--zzagp-star);font-size:17px}.zzagp-roster-copy h3{margin:7px 0 5px!important;font-size:16px!important;line-height:1.2!important}.zzagp-roster-copy h3 a{color:#000222!important;text-decoration:none!important}.zzagp-roster-copy>p{margin:0;color:#596174;font-size:12px;line-height:1.4}
.zzagp-relationship-display{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px;padding-top:10px;border-top:1px solid rgba(0,2,34,.08)}.zzagp-relationship-display>span{display:flex;flex-direction:column;gap:1px;padding:5px 7px;border-radius:8px;background:#f1f4f8}.zzagp-relationship-display small{font-size:7px;letter-spacing:.1em;color:#697287}.zzagp-relationship-display strong{font-size:10px;color:#000222;text-transform:capitalize}.zzagp-zsplit-state.state-on,.zzagp-zsplit-state.state-active,.zzagp-agreement-state.state-agreed{background:rgba(0,255,255,.12)}.zzagp-zsplit-state.state-pending,.zzagp-agreement-state.state-pending{background:rgba(255,212,46,.18)}
@media(max-width:980px){.zzagp-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.zzagp-join-agency{align-items:flex-start;flex-direction:column}.zzagp-roster-tools{align-items:flex-end;flex-direction:column}}
@media(max-width:640px){.zzagp-level-badge{top:10px;right:10px}.zzagp-public-roster{padding:20px}.zzagp-public-roster>header{align-items:flex-start;flex-direction:column}.zzagp-roster-tools{align-items:flex-start}.zzagp-roster-grid{grid-template-columns:1fr}.zzagp-roster-image{width:90px;flex-basis:90px}}

.zzagp-level-badge img{width:24px;height:24px;border-radius:7px;object-fit:cover;border:1px solid rgba(0,255,255,.38)}


/* Agency Core v2 live Join/representation actions. */
.zzagp-join-action{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.zzagp-join-action button,.zzagp-join-action a{appearance:none;text-decoration:none;cursor:pointer}.zzagp-join-action button.secondary{background:#15233b;color:#c9d5e8;border:1px solid rgba(255,255,255,.14)}.zzagp-join-action button.danger{border-color:rgba(255,102,0,.42);color:#ffc19d}.zzagp-join-action button:disabled{cursor:not-allowed;opacity:.68}.zzagp-join-feedback{display:block;min-height:12px;margin-top:7px;color:#ffb69a;font-size:10px}.zzagp-join-agency.state-invited{border-color:rgba(0,255,255,.34)}.zzagp-join-agency.state-represented{border-color:rgba(0,255,255,.34)}

.zzagp-roster-image:focus-visible,
.zzagp-roster-copy h3 a:focus-visible{
    outline:2px solid #57C0FF;
    outline-offset:2px;
}

/* Agency Profiles 11: Agency identity colour is #00FFFF across profile surfaces. */
.zzagp-public-agency .zzagp-role-badge{
    color:#00FFFF!important;
    border-color:#00FFFF!important;
    background:rgba(0,255,255,.08)!important;
    box-shadow:0 0 0 1px rgba(0,255,255,.08),0 0 16px rgba(0,255,255,.10)!important;
}
.zzagp-public-agency a:focus-visible,
.zzagp-public-agency button:focus-visible{outline-color:#00FFFF!important}
.zzagp-public-agency .zzagp-level-badge{border-color:rgba(0,255,255,.58)}
.zzagp-public-agency .zzagp-level-badge strong{color:#00FFFF}


/* Version 18: lighter professional heading weight. */
.zzagp-public-roster h2,.zzagp-public-roster h3,.zzagp-join-agency h2,.zzagp-roster-copy h3{font-weight:500!important}.zzagp-roster-count strong{font-weight:500!important}

/* Version 22: Agency Max public Showcase Kit. */
.zzagp-max-showcase-public{margin:22px 0;padding:20px;border:1px solid rgba(232,75,255,.22);border-radius:16px;background:linear-gradient(145deg,rgba(232,75,255,.045),rgba(0,255,255,.025) 42%,#07142c);color:#eef5ff}
.zzagp-max-showcase-public>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.zzagp-max-showcase-public>header span{display:block;color:#f38cff;font-size:9px;letter-spacing:.14em;font-weight:600}.zzagp-max-showcase-public>header h2{margin:4px 0 4px;color:#fff;font-size:24px;font-weight:500;letter-spacing:-.02em}.zzagp-max-showcase-public>header p{max-width:720px;margin:0;color:#a9b8cf;font-size:12px;line-height:1.55}.zzagp-max-showcase-public>header>strong{flex:0 0 auto;padding:7px 10px;border:1px solid rgba(232,75,255,.3);border-radius:7px;color:#f7b0ff;background:rgba(232,75,255,.06);font-size:9px;font-weight:600;letter-spacing:.09em}
.zzagp-max-showcase-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.zzagp-max-showcase-public-grid article{padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(4,14,34,.72)}.zzagp-max-showcase-public-grid small{display:block;color:#00FFFF;font-size:8px;letter-spacing:.12em;font-weight:600}.zzagp-max-showcase-public-grid h3{margin:5px 0 6px;color:#fff;font-size:15px;font-weight:500}.zzagp-max-showcase-public-grid p{margin:0;color:#a7b6cd;font-size:11px;line-height:1.55}.zzagp-max-showcase-public-grid b{display:block;margin-top:12px;color:#20E3A2;font-size:16px;font-weight:500}.zzagp-max-showcase-public-grid em{display:block;margin-top:5px;color:#7385a3;font-size:8px;font-style:normal}
@media(max-width:760px){.zzagp-max-showcase-public-grid{grid-template-columns:1fr}.zzagp-max-showcase-public>header{display:grid}.zzagp-max-showcase-public>header>strong{justify-self:start}}
