#alliances-player { min-width: 0; --alliance-line: rgba(190, 208, 217, .18); }
#alliances-player *, #alliances-player *::before, #alliances-player *::after { box-sizing: border-box; letter-spacing: 0; }
#alliances-player button { min-height: 44px; cursor: pointer; }
#alliances-player button:disabled { opacity: .5; cursor: default; }
#alliances-player button svg { width: 20px; height: 20px; flex-shrink: 0; }
#alliances-player input, #alliances-player select, #alliances-player textarea { min-width: 0; width: 100%; min-height: 44px; border: 1px solid var(--alliance-line); border-radius: 4px; padding: 10px; background: #101619; color: #edf2f4; font: inherit; }
#alliances-player textarea { min-height: 90px; resize: vertical; }
#alliances-player label { display: grid; gap: 6px; font-size: 13px; color: #b7c5cd; }
#alliances-player h2 { margin: 0 0 12px; font-size: 20px; line-height: 1.3; overflow-wrap: anywhere; }
#alliances-player p { line-height: 1.5; overflow-wrap: anywhere; }
.alliance-toolbar { display: flex; gap: 12px; align-items: end; flex-wrap: wrap; }
.alliance-toolbar > label:first-child { flex: 1 1 220px; }
.alliance-toolbar > label:nth-child(2) { flex: 0 1 170px; }
.alliance-status { min-height: 24px; color: #b7c5cd; }
.alliance-status.alliance-error { color: #ff7188; }
.alliance-workspace { display: grid; grid-template-columns: minmax(230px, .75fr) minmax(0, 1.5fr); gap: 28px; }
.alliance-directory { min-width: 0; border-right: 1px solid var(--alliance-line); padding-right: 22px; }
.alliance-directory-items { max-height: 560px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: none; }
.alliance-directory-items::-webkit-scrollbar { display: none; }
.alliance-directory-row { display: flex; align-items: center; text-align: left; gap: 14px; width: 100%; padding: 16px 6px; border: 0; border-bottom: 1px solid var(--alliance-line); border-radius: 0; background: transparent; color: #e8eef2; touch-action: pan-y; }
.alliance-directory-row > svg { width: 28px !important; height: 28px !important; color: #00baff; }
.alliance-directory-row[data-faction="GREEN"] > svg { color: #00cf83; }
.alliance-directory-row[data-faction="RED"] > svg { color: #ff5267; }
.alliance-directory-row:hover { background: rgba(255,255,255,.04); }
.alliance-copy { min-width: 0; display: grid; gap: 7px; overflow-wrap: anywhere; }
.alliance-copy small { color: #a5b5bf; }
.alliance-detail { min-width: 0; }
.alliance-detail-heading { padding-bottom: 18px; border-bottom: 1px solid var(--alliance-line); }
.alliance-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-top: 12px; }
.alliance-actions button { font-size: 13px; }
.alliance-tabs { display: flex; flex-wrap: wrap; gap: 4px; margin: 16px 0; border-bottom: 1px solid var(--alliance-line); }
.alliance-tabs button { border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; color: #bccbd2; padding: 10px 14px; }
.alliance-tabs button[aria-pressed="true"] { border-color: var(--accent, #00baff); color: #fff; }
.alliance-member-row { display: flex; justify-content: space-between; gap: 18px; flex-wrap: wrap; padding: 16px 0; border-bottom: 1px solid var(--alliance-line); touch-action: pan-y; }
.alliance-member-row .alliance-actions { margin-top: 0; }
.alliance-form { display: grid; gap: 16px; max-width: 640px; padding: 18px 0; }
.alliance-form > button { justify-self: start; }
.alliance-content { scrollbar-width: none; }
.alliance-content::-webkit-scrollbar { display: none; }
.alliance-chat-messages { max-height: 360px; overflow-y: auto; overflow-wrap: anywhere; overscroll-behavior: contain; scrollbar-width: none; }
.alliance-chat-messages::-webkit-scrollbar { display: none; }
@media (max-width: 900px) {
  .mobile-nav { grid-template-columns: repeat(9, minmax(74px, 1fr)); }
}
@media (max-width: 760px) {
  .alliance-workspace { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .alliance-directory { border-right: 0; padding-right: 0; }
  .alliance-directory-items { max-height: 320px; }
  .alliance-toolbar > label { flex: 1 1 100% !important; }
  .alliance-tabs button { padding: 10px; font-size: 13px; }
}
