/* Guild tab (#413) — ui/guild.js. Loaded after style.css; reuses the Party tab's
   .party-btn / .party-member-* pieces and the #385 pixel theme tokens. */

#guild-page .os-panel-body { gap: 6px; overflow-y: auto; }
#guild-page .party-blurb {
    color: var(--ui-muted);
    font-size: 0.8rem; font-size: calc(round(0.8rem * var(--fz, 1), 1px) / var(--fz, 1));
    line-height: 1.35;
    margin-bottom: 4px;
}

.guild-head { display: flex; align-items: baseline; gap: 6px; min-width: 0; }
.guild-tag,
#pf-name[data-guild-tag]::before,
#char-name[data-guild-tag]::before {
    font-family: var(--ui-font-pixel);
    color: var(--ui-gold);
    text-shadow: var(--ui-px) var(--ui-px) 0 #000;
}
.guild-tag { font-size: 0.6rem; font-size: calc(round(0.6rem * var(--fz, 1), 1px) / var(--fz, 1)); white-space: nowrap; }
.guild-name {
    flex: 1; min-width: 0;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-family: var(--ui-font-body); font-weight: 700;
    font-size: 1rem; font-size: calc(round(1rem * var(--fz, 1), 1px) / var(--fz, 1));
    color: var(--ui-gold-lite);
    text-shadow: var(--ui-px) var(--ui-px) 0 #000;
}
.guild-sub,
.guild-help {
    color: var(--ui-muted);
    font-size: 0.72rem; font-size: calc(round(0.72rem * var(--fz, 1), 1px) / var(--fz, 1));
}
.guild-help b { color: var(--ui-text); }

.guild-motd {
    padding: 5px 7px;
    color: var(--ui-text);
    font-size: 0.78rem; font-size: calc(round(0.78rem * var(--fz, 1), 1px) / var(--fz, 1));
    line-height: 1.35;
    background: rgba(5, 3, 8, 0.55);
    border: var(--ui-px) solid #050407;
    box-shadow: inset 0 0 0 1px var(--ui-gold-dark);
    overflow-wrap: anywhere;
}
.guild-motd.is-empty { color: var(--ui-muted); font-style: italic; }
.guild-link {
    background: none; border: 0; padding: 0; margin-left: 4px;
    font: inherit; font-style: normal;
    color: var(--ui-gold); text-decoration: underline; cursor: pointer;
}
.guild-link:hover { color: var(--ui-gold-lite); }

/* Roster */
.guild-roster { display: flex; flex-direction: column; gap: 3px; max-height: 46vh; overflow-y: auto; }
.guild-member {
    display: flex; align-items: center; gap: 5px; flex-wrap: wrap;
    padding: 3px 5px;
    font-family: var(--ui-font-body);
    font-size: 0.72rem; font-size: calc(round(0.72rem * var(--fz, 1), 1px) / var(--fz, 1));
    background: rgba(5, 3, 8, 0.55);
    border: var(--ui-px) solid #050407;
    box-shadow: inset var(--ui-px) var(--ui-px) 0 #000, inset calc(var(--ui-px) * -1) calc(var(--ui-px) * -1) 0 #2e2834;
}
.guild-member:not(.is-online) { opacity: 0.6; }
.guild-member.is-self { border-color: var(--ui-gold-dark); }
.guild-member .guild-member-name {
    flex: 1 1 6em; min-width: 0;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-weight: 700; color: var(--ui-text); text-shadow: var(--ui-px) var(--ui-px) 0 #000;
}
.guild-member .party-member-level,
.guild-member .party-member-zone { color: var(--ui-muted); white-space: nowrap; }
.guild-member .party-member-tools { display: flex; gap: 3px; flex-basis: 100%; justify-content: flex-end; }
.guild-dot {
    width: 6px; height: 6px; flex: none;
    background: #3a3540; box-shadow: 0 0 0 1px #050407;
}
.guild-member.is-online .guild-dot { background: #4fd36b; }
.guild-rank {
    font-family: var(--ui-font-pixel);
    font-size: 0.38rem; font-size: calc(round(0.38rem * var(--fz, 1), 1px) / var(--fz, 1));
    text-transform: uppercase;
    color: var(--ui-muted);
}
.guild-member.rank-leader .guild-rank { color: var(--ui-gold-lite); }
.guild-member.rank-officer .guild-rank { color: #9fc3ff; }
.party-btn.is-armed { color: #fff; background: var(--btn-blood-hi, #8a1820); }

/* Forms: create / invite / message of the day */
.guild-form { display: flex; gap: 5px; align-items: flex-end; flex-wrap: wrap; }
.guild-create-form { flex-direction: column; align-items: stretch; }
.guild-field { display: flex; flex-direction: column; gap: 2px; flex: 1 1 auto; }
.guild-field > span {
    font-family: var(--ui-font-pixel);
    font-size: 0.4rem; font-size: calc(round(0.4rem * var(--fz, 1), 1px) / var(--fz, 1));
    text-transform: uppercase; color: var(--ui-muted);
}
.guild-form input {
    flex: 1 1 8em; min-width: 0;
    padding: 4px 6px;
    font-family: var(--ui-font-body);
    font-size: 0.8rem; font-size: calc(round(0.8rem * var(--fz, 1), 1px) / var(--fz, 1));
    color: var(--ui-text);
    background: rgba(0, 0, 0, 0.55);
    border: var(--ui-px) solid #050407;
    box-shadow: 0 0 0 1px var(--ui-iron, #3e3844);
    border-radius: 0;
    outline: none;
}
.guild-form input:focus { box-shadow: 0 0 0 1px var(--ui-gold); }
.guild-form input.guild-tag-input { text-transform: uppercase; letter-spacing: 0.15em; }
.guild-form .party-btn-sm { flex: none; }
.guild-footer { display: flex; flex-direction: column; gap: 4px; margin-top: 4px; }

/* Your own tag: HUD player frame + character screen name (mechanics/guildUI.js sets data-guild-tag) */
#pf-name[data-guild-tag]::before,
#char-name[data-guild-tag]::before {
    content: '<' attr(data-guild-tag) '> ';
    font-size: 0.75em;
}

/* Guild channel lines in the chat box (ui/chat.js 'guild') */
.chat-guild .chat-sender { color: #5fd4c4; }
.chat-guild { color: #cfeff0; }
