/* Player guilds (item 67, src/player-guild-ui.js): the guild window and the invite card (top centre, not modal, under the
   trade invite card). The green/gold palette of the guild officer and party screens, all classes new (.player-guild-*).
   Phones (390 px wide and landscape): the window fills the screen, tabs scroll sideways, buttons stay 36 px or taller. */
#player-guild-invite{position:absolute;z-index:4;top:176px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;box-sizing:border-box;width:min(330px,calc(100vw - 24px));padding:8px 10px;border:1.5px solid #e2c36b;border-radius:10px;background:#2b2a1ef2;box-shadow:0 4px 14px #0008;color:#fff8dc;font:12px Tahoma,"Noto Sans Thai",sans-serif}
#player-guild-invite[hidden],.player-guild-dialog [hidden]{display:none!important}
.player-guild-invite-body{display:grid;flex:1;gap:4px;min-width:0;text-align:center}
.player-guild-invite-text{margin:0;font-weight:bold;overflow-wrap:anywhere}
.player-guild-invite-count{color:#f4dfa8;font-size:10px;font-variant-numeric:tabular-nums}
.player-guild-emblem{display:block;flex:none;image-rendering:auto}
#player-guild-dialog{box-sizing:border-box;width:min(620px,calc(100vw - 16px));max-height:calc(100dvh - 16px);margin:auto;padding:0;overflow:hidden;border:2px solid #e2c36b;border-radius:14px;background:#1f2a22;color:#fff8dc;font:13px Tahoma,"Noto Sans Thai",sans-serif;box-shadow:0 10px 40px #000b}
#player-guild-dialog[open]{display:flex;flex-direction:column}
#player-guild-dialog::backdrop{background:#0008}
.player-guild-head{display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(#3a4a2c,#2a3622);border-bottom:1px solid #e2c36b66}
.player-guild-head-emblem{display:flex;flex:none}
.player-guild-head-text{flex:1;min-width:0}
.player-guild-head h2{margin:0;overflow:hidden;font-size:17px;text-overflow:ellipsis;white-space:nowrap;color:#ffe9a8}
.player-guild-sub{margin:2px 0 0;color:#cfe8c9;font-size:11px}
.player-guild-close{flex:none;width:36px;height:36px;border:1px solid #ffffff44;border-radius:50%;background:#0004;color:#fff8dc;font-size:20px;line-height:1;cursor:pointer}
.player-guild-close:hover,.player-guild-close:focus-visible{background:#b8452f}
.player-guild-message{margin:0;padding:6px 14px 0;color:#cfe8c9;font-size:12px}
.player-guild-message[data-kind="error"]{color:#ffb4a3}
.player-guild-message[data-kind="ok"]{color:#b9f0a8}
.player-guild-confirm{margin:8px 14px 0;padding:10px;border:1px solid #e2c36b;border-radius:10px;background:#3a3420}
.player-guild-confirm-text{margin:0 0 4px;font-weight:bold}
.player-guild-confirm-note{margin:0 0 8px;color:#f4dfa8;font-size:11px}
.player-guild-body{flex:1;min-height:0;overflow:auto;padding:10px 14px 14px;overscroll-behavior:contain}
.player-guild-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}
.player-guild-section{display:grid;gap:8px;margin-bottom:12px;padding:10px;border:1px solid #8fcf8a55;border-radius:10px;background:#0002}
.player-guild-section h3{margin:0;color:#ffe9a8;font-size:14px}
.player-guild-danger{border-color:#e07a6066}
.player-guild-note,.player-guild-need{margin:0;color:#cfe8c9;font-size:12px}
.player-guild-need.player-guild-short{color:#ffb4a3}
.player-guild-field{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center}
.player-guild-field>span:first-child{grid-column:1/-1;color:#cfe8c9;font-size:12px}
.player-guild-input,.player-guild-textarea{box-sizing:border-box;width:100%;min-height:38px;padding:6px 10px;border:1px solid #e2c36b88;border-radius:8px;background:#0005;color:#fff8dc;font:14px Tahoma,"Noto Sans Thai",sans-serif}
.player-guild-textarea{min-height:84px;resize:vertical}
.player-guild-input:focus,.player-guild-textarea:focus{outline:2px solid #e2c36b;outline-offset:1px}
.player-guild-count{color:#cfe8c9;font-size:11px;font-variant-numeric:tabular-nums}
.player-guild-primary,.player-guild-secondary,.player-guild-mini,.player-guild-danger-button,.player-guild-tab{min-height:36px;padding:5px 14px;border:1px solid #e2c36b99;border-radius:8px;background:#0004;color:#fff8dc;font:bold 12px Tahoma,"Noto Sans Thai",sans-serif;cursor:pointer}
.player-guild-primary{background:#2f6b3a;border-color:#8fcf8a}
.player-guild-primary.danger,.player-guild-danger-button{background:#8a3222;border-color:#e07a60}
.player-guild-primary:disabled,.player-guild-danger-button:disabled,.player-guild-mini:disabled{opacity:.5;cursor:not-allowed}
.player-guild-primary:not(:disabled):hover,.player-guild-secondary:hover,.player-guild-mini:hover,.player-guild-tab:hover,.player-guild-danger-button:not(:disabled):hover{filter:brightness(1.18)}
.player-guild-wide{width:100%}
.player-guild-mini{min-height:32px;padding:3px 9px;font-size:11px}
.player-guild-picker{display:flex;gap:12px;align-items:center}
.player-guild-preview{display:grid;place-items:center;flex:none;width:64px;height:64px;border:1px solid #e2c36b66;border-radius:12px;background:#0003}
.player-guild-picker-lists{display:grid;gap:8px;min-width:0}
.player-guild-icons{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}
.player-guild-icon{display:grid;place-items:center;min-width:36px;min-height:38px;padding:2px;border:1px solid #ffffff2a;border-radius:8px;background:#0003;cursor:pointer}
.player-guild-icon.active{border-color:#ffe08a;box-shadow:0 0 0 2px #ffe08a66}
.player-guild-colors{display:flex;flex-wrap:wrap;gap:6px}
.player-guild-color{width:32px;height:32px;border:2px solid #0006;border-radius:50%;background:var(--swatch);cursor:pointer}
.player-guild-color.active{border-color:#fff8dc;box-shadow:0 0 0 2px #e2c36b}
.player-guild-invite-row{display:flex;align-items:center;gap:8px}
.player-guild-invite-row>span{flex:1;min-width:0;overflow-wrap:anywhere}
.player-guild-tabs{display:flex;gap:6px;margin-bottom:10px;overflow-x:auto;scrollbar-width:thin}
.player-guild-tab{flex:none;background:#0003}
.player-guild-tab.active{background:#5a4a1f;border-color:#ffe08a;color:#ffe9a8}
.player-guild-members,.player-guild-results,.player-guild-log{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.player-guild-member,.player-guild-result{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid #ffffff1f;border-radius:8px;background:#0002}
.player-guild-member[data-role="leader"]{border-color:#ffe08a88}
.player-guild-member[data-role="deputy"]{border-color:#8fcf8a88}
.player-guild-dot{flex:none;width:9px;height:9px;border-radius:50%;background:#777}
.player-guild-dot.online{background:#7ee36f;box-shadow:0 0 6px #7ee36f}
.player-guild-member-text{display:grid;flex:1;min-width:0}
.player-guild-member-name,.player-guild-result-name{overflow:hidden;font-weight:bold;text-overflow:ellipsis;white-space:nowrap}
.player-guild-member-meta,.player-guild-result-meta{color:#cfe8c9;font-size:11px}
.player-guild-result-name{flex:1;min-width:0}
.player-guild-member-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}
.player-guild-search{display:grid;gap:8px;margin-bottom:10px;padding:8px;border:1px dashed #e2c36b88;border-radius:10px}
.player-guild-search .player-guild-row{flex-wrap:nowrap}
.player-guild-search .player-guild-input{flex:1}
.player-guild-empty{color:#cfe8c9;font-size:12px;list-style:none}
.player-guild-notice{padding:10px;border:1px solid #e2c36b55;border-radius:10px;background:#0003;margin-bottom:10px}
.player-guild-notice-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}
.player-guild-notice-meta{margin:6px 0 0;color:#cfe8c9;font-size:11px}
.player-guild-log li{display:grid;grid-template-columns:auto 1fr;gap:8px;padding:5px 8px;border-bottom:1px solid #ffffff14;font-size:12px}
.player-guild-log time{color:#cfe8c9;font-size:11px;white-space:nowrap}
.player-guild-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid #e2c36b44}
.hud-utility.hud-player-guild[hidden],#adventure-navigation [data-section="player-guild"][hidden]{display:none}
@media (max-width:600px){
 #player-guild-dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0}
 .player-guild-picker{flex-direction:column;align-items:stretch}
 .player-guild-preview{margin:0 auto}
 .player-guild-icons{grid-template-columns:repeat(4,minmax(0,1fr))}
 .player-guild-member{flex-wrap:wrap}
 .player-guild-member-actions{width:100%;justify-content:flex-start}
 #player-guild-invite{top:150px}
}
@media (max-height:480px){
 #player-guild-dialog{max-height:100dvh}
 .player-guild-head{padding:6px 12px}
 .player-guild-body{padding:8px 12px}
 #player-guild-invite{top:64px}
}
