.guild-button{border:2px solid #b6a0eb!important;border-radius:14px!important;background:linear-gradient(155deg,#65528d,#37335e)!important;color:#fff!important;padding:11px 16px!important;font:800 14px inherit;box-shadow:0 5px 0 #201a38!important;cursor:pointer;transition:transform .15s,filter .15s}.guild-button:hover{transform:translateY(-3px) rotate(-1deg);filter:brightness(1.15)}.guild-button:active{transform:translateY(3px);box-shadow:0 1px #201a38!important}.guild-button:focus-visible,.guild-form input:focus-visible{outline:3px solid #b7ffe1;outline-offset:4px}.guild-button:disabled{opacity:.5;cursor:default;transform:none}.guild-gold{background:linear-gradient(#ffeca0,#ffd377)!important;border-color:#fff0b7!important;color:#382747!important;box-shadow:0 5px #966137!important}.guild-launcher{display:block;width:100%;margin:18px 0 8px;min-height:50px;letter-spacing:.07em;background:linear-gradient(115deg,#524089,#365974)!important}.guild-dialog{box-sizing:border-box;width:min(850px,94vw);max-height:90dvh;overflow:auto;border:3px solid #bd9cf5;border-radius:26px;padding:25px;background:radial-gradient(ellipse at 20% 0,#584772,transparent 65%),#25213d;color:#f7f1ff;box-shadow:0 8px #b693ef,0 30px 100px #090619aa;font-family:inherit}.guild-dialog::backdrop{background:#0d0a22bc;backdrop-filter:blur(7px)}.guild-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.guild-header small{font-size:10px;letter-spacing:.18em;color:#ffe299;font-weight:900}.guild-header h2{font-size:clamp(22px,4vw,34px);margin:8px 0 18px;letter-spacing:-.04em;text-shadow:0 4px #211934}.guild-close{border-radius:50%!important;padding:10px 14px!important}.guild-identity{display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:13px;color:#d4c9e9;flex-wrap:wrap;margin-bottom:20px}.guild-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 20px}.guild-tabs [aria-pressed=true]{background:linear-gradient(#c4ffe5,#8ed6c4)!important;border-color:#d1ffea!important;color:#223943!important;box-shadow:0 5px #498477!important}.guild-notice{color:#ffe6a0;min-height:20px;font-size:14px}.guild-content{min-height:220px}.guild-form{display:flex;gap:12px;margin:18px 0 24px;flex-wrap:wrap}.guild-form input{flex:1;min-width:160px;background:#17162d;color:#fff;border:2px solid #9e8aba;border-radius:13px;padding:14px;font:inherit}.guild-form input::placeholder{color:#c4b7d7}.guild-card{display:flex;align-items:center;gap:15px;border:2px solid #907daf;background:linear-gradient(115deg,#3c4568,#3f3157);border-radius:20px;padding:15px;margin:14px 0;box-shadow:0 5px #181529}.guild-seal{display:grid;place-items:center;flex-shrink:0;width:50px;height:55px;border-radius:18px 18px 23px 23px;color:#e3c3ff;font-size:32px;background:radial-gradient(#9a6ceb,#28213f 70%);border:2px solid #b593ea;text-shadow:0 0 15px #c38cff;transform:rotate(-5deg)}.guild-card-copy{min-width:80px;flex:1}.guild-card-copy strong{display:block;font-size:17px;overflow-wrap:anywhere}.guild-presence{display:block;color:#bcb1cf;margin-top:6px;font-size:12px}.guild-presence.is-online{color:#b6ffe0}.guild-card-actions{display:flex;gap:9px;flex-wrap:wrap}.guild-card-actions .guild-button{padding:9px 12px!important;font-size:12px}.guild-empty{text-align:center;padding:35px 20px;line-height:1.7;color:#d1c4e8;border:2px dashed #79618f;border-radius:22px;background:#211c37}.guild-content h3{font-size:15px;letter-spacing:.07em;color:#ffe69a}.guild-private-hero{text-align:center;background:radial-gradient(ellipse at 50% 15%,#746098,#363258 75%);border:2px solid #b89cdf;border-radius:24px;padding:20px;box-shadow:0 6px #171529}.guild-private-hero h3{font-size:25px;color:#ffe394;letter-spacing:-.03em;text-shadow:0 4px #352542}.guild-private-hero p{color:#e0d6ed;line-height:1.6}.guild-crossed{font-size:60px;color:#b6ffe1;animation:guild-float 3s ease-in-out infinite;text-shadow:0 5px #292142,0 0 30px #a0ead777}.guild-modes{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:22px 0}.guild-modes span{padding:10px 14px;border:2px dashed #9380b2;border-radius:12px;font-size:12px;color:#c9bcdb}.guild-modes span:first-child{border-style:solid;border-color:#a5e9d3;color:#c2ffe9;background:#344b56}.guild-fine{font-size:12px;color:#bdb1d0;line-height:1.6;text-align:center}.guild-stat-hero{text-align:center;margin:25px 0}.guild-stat-hero .guild-seal{margin:auto;width:76px;height:80px;font-size:44px}.guild-stat-hero h3{font-size:28px;margin:14px 0}.guild-stat-hero p{color:#dcd0eb}.guild-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.guild-stats>div{border:2px solid #a797cc;border-radius:18px;background:linear-gradient(145deg,#4a5779,#3b3054);padding:20px 10px;text-align:center;box-shadow:0 5px #181429}.guild-stats strong{display:block;color:#fde6a9;font-size:28px}.guild-stats small{display:block;font-size:11px;margin-top:8px;color:#ece5ff}.guild-confirm{padding:30px;text-align:center}.guild-confirm button{margin:10px}@keyframes guild-float{50%{transform:translateY(-7px) rotate(7deg)}}@media(max-width:600px){.guild-dialog{padding:17px}.guild-tabs{gap:8px}.guild-tabs .guild-button{padding:9px!important;font-size:12px}.guild-card{flex-wrap:wrap}.guild-card-actions{width:100%}.guild-stats{grid-template-columns:repeat(2,1fr)}.guild-form .guild-button{width:100%}.guild-identity{font-size:12px}}@media(prefers-reduced-motion:reduce){.guild-crossed{animation:none}.guild-button{transition:none}}

/* One private-lobby entry shared by all three battle-mode selections. */
.guild-menu-actions{display:grid;gap:12px;margin:18px 0 8px}
.guild-menu-actions .guild-launcher{margin:0;min-height:52px}
.guild-menu-actions .guild-lobby-launcher{background:linear-gradient(135deg,#86734a,#594771)!important;border-color:#ffe4a3!important;color:#fff2c6!important}
.guild-tabs[hidden],.guild-identity[hidden],#open-practice{display:none!important}
.guild-lobbies-view .guild-notice:empty{display:none}
.guild-lobbies-view .guild-content{min-height:0}
.guild-bot-practice{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px;margin-top:20px;border:2px solid #967ebb;border-radius:20px;background:linear-gradient(120deg,#393954,#3c294f);box-shadow:0 5px #1c172d}
.guild-bot-practice>div{flex:1;min-width:160px}
.guild-bot-practice strong{font-size:13px;letter-spacing:.05em;color:#d6c2ff}
.guild-bot-practice p{font-size:12px;line-height:1.5;margin:8px 0 0;color:#c8badb}
@media(max-width:600px){.guild-bot-practice .guild-button{width:100%}}
.guild-lobbies-view .guild-private-hero{padding:15px}.guild-lobbies-view .guild-crossed{font-size:44px}.guild-lobbies-view .guild-private-hero h3{font-size:22px;margin:12px 0}.guild-lobbies-view .guild-private-hero p{margin:12px 0}.guild-lobbies-view .guild-modes{margin:18px 0}.guild-lobbies-view .guild-form{margin:16px 0}.guild-lobbies-view .guild-bot-practice{margin-top:16px}

/* Keep play surfaces from selecting text while retaining useful copy targets. */
body{-webkit-user-select:none;user-select:none}input,textarea,[contenteditable],code,.selectable,.guild-player-id,.private-code strong{-webkit-user-select:text;user-select:text}

.guild-player-id{font:bold 19px monospace;letter-spacing:2px;background:#15132d;border:1px solid #ad97d8;padding:10px 14px;border-radius:10px;color:#ffe3a0}.guild-identity{flex-wrap:wrap}.guild-invites{padding:14px;border:2px solid #deb76c;border-radius:18px;background:#44306555;margin-bottom:18px}.guild-invites .guild-card{flex-wrap:wrap}.guild-invites .guild-card>.guild-fine{flex-basis:100%;margin:0}.guild-private-hero{position:relative;overflow:hidden}.guild-private-hero:before{content:'';position:absolute;inset:-150%;pointer-events:none;background:repeating-conic-gradient(transparent 0deg 22deg,#bca2ff12 22deg 36deg);animation:guild-rays 50s linear infinite}.guild-private-hero>*{position:relative}@keyframes guild-rays{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.guild-private-hero:before{animation:none}}
/* Wizard profiles */
.guild-dialog[open]{animation:guild-arrive .3s ease-out}.guild-notice:empty{display:none}.guild-card{position:relative;isolation:isolate;overflow:hidden;animation:guild-arrive .4s both}.guild-card:nth-child(2n){animation-delay:.045s}.guild-card:nth-child(3n){animation-delay:.09s}.guild-card .wizard-portrait{width:108px;height:92px;object-fit:contain;flex-shrink:0}.guild-profile-card{transition:transform .22s,box-shadow .22s,border-color .22s;cursor:pointer}.guild-profile-card:hover,.guild-profile-card:focus-within{transform:translateY(-4px);border-color:#dac7ff;box-shadow:0 10px 26px #08082070,0 0 22px #ba91ff25}.guild-profile-card:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#dbc6ff20 45%,transparent 65%);transform:translateX(-100%);pointer-events:none;transition:transform .7s}.guild-profile-card:hover:before{transform:translateX(100%)}.guild-card-open.guild-button{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:0;margin:0;border:0;box-shadow:none!important}.guild-card:has(.guild-card-open:focus-visible){outline:3px solid #fff0b6;outline-offset:3px}.guild-card-actions{position:relative;z-index:2}.guild-profile-hint{color:#ddc5ff!important;letter-spacing:.11em;font-size:9px!important;margin-top:10px}.guild-presence{display:inline-flex;align-items:center;width:fit-content;padding:5px 9px;border-radius:20px;background:#ffffff09;color:#aca8bd;font-size:11px}.guild-presence.is-online{color:#a5ffd3;background:#6cffb61a;box-shadow:0 0 14px #6cffb608}.guild-profile-card .is-online{animation:guild-presence-glow 3s ease-in-out infinite}.guild-stat-hero{position:relative;padding:12px 0 22px!important;display:flex;flex-direction:column;align-items:center;gap:10px;overflow:hidden}.guild-stat-hero .wizard-portrait{width:240px;height:190px;z-index:1;filter:drop-shadow(0 0 25px #a88ce52b)}.guild-stat-hero:before{content:'';position:absolute;width:210px;height:210px;border:1px dashed #bb9fee55;border-radius:50%;top:10px;animation:guild-profile-orbit 35s linear infinite}.guild-stat-hero h3{margin:0!important}.guild-profile-kicker{letter-spacing:.2em;color:#d4b7ec;font-size:10px}.guild-stats>div{animation:guild-stat-rise .4s both;transition:transform .2s,box-shadow .2s}.guild-stats>div:nth-child(2n){animation-delay:.055s}.guild-stats>div:nth-child(3n){animation-delay:.11s}.guild-stats>div:hover{transform:translateY(-3px);box-shadow:0 6px 22px #a98add22}.guild-profile-view>.guild-tabs{justify-content:center}.guild-profile-view>.guild-tabs+.guild-tabs{margin-top:10px}.guild-card-copy{min-width:0}.guild-card-copy>strong{overflow-wrap:anywhere}@keyframes guild-arrive{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@keyframes guild-stat-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes guild-profile-orbit{to{transform:rotate(360deg)}}@keyframes guild-presence-glow{50%{box-shadow:0 0 15px #6cffb625}}@media(max-width:600px){.guild-card .wizard-portrait{width:88px;height:82px}.guild-profile-card .guild-card-actions{width:auto;margin-left:auto}.guild-card-copy{flex:1}.guild-stat-hero .wizard-portrait{width:190px;height:160px}.guild-stat-hero:before{width:170px;height:170px}.guild-stats{gap:9px}}@media(prefers-reduced-motion:reduce){.guild-dialog[open],.guild-card,.guild-stats>div,.guild-stat-hero:before,.guild-profile-card .is-online{animation:none}.guild-profile-card,.guild-profile-card:before,.guild-stats>div{transition:none}}
.guild-dialog:has(.guild-profile-view)>.guild-identity,.guild-dialog:has(.guild-profile-view)>.guild-tabs{display:none}.guild-profile-view .guild-stat-hero{gap:7px;padding-top:0!important}.guild-profile-view .guild-stat-hero .wizard-portrait{height:155px;width:200px}.guild-profile-view .guild-stat-hero:before{width:170px;height:170px;top:0}
.guild-card-leagues{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.guild-league{display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:8px 20px;padding:20px;margin:18px 0;background:linear-gradient(120deg,#62487880,#211a39c9);border:1px solid #d2b0ee88;border-radius:20px}.guild-league img{width:100px;height:110px;object-fit:contain;filter:drop-shadow(0 0 12px #c39af955)}.guild-league>div{display:flex;flex-direction:column;gap:6px}.guild-league strong{font-size:27px;color:#ffe2a6}.guild-league small{font-size:10px;letter-spacing:.08em;color:#d8c3ec}.guild-league span{font-size:17px;color:#ffe3a6}.guild-league progress{grid-column:1/-1;width:100%;height:11px;accent-color:#ecd185}.guild-league-next{grid-column:1/-1}.guild-league-compact{display:flex;flex:1;min-width:145px;gap:8px;padding:8px;margin:0;border-radius:12px}.guild-league-compact img{width:48px;height:53px}.guild-league-compact strong{font-size:14px!important}.guild-league-compact span{font-size:11px}.guild-league-compact small{font-size:8px}.guild-league-compact>div{gap:3px}.guild-profile-card .guild-card-copy{flex:1}.guild-profile-card .guild-card-actions{align-self:flex-start;margin-top:8px}.guild-profile-card .wizard-portrait{align-self:center}@media(max-width:600px){.guild-profile-card .wizard-portrait{width:65px}.guild-profile-card .guild-card-copy{flex-basis:calc(100% - 95px)}.guild-profile-card .guild-card-actions{margin-left:auto}.guild-league-compact{min-width:120px}.guild-league{padding:14px;gap:10px;grid-template-columns:80px minmax(0,1fr)}.guild-league img{width:80px;height:90px}.guild-league-compact img{width:42px;height:46px}.guild-league strong{font-size:23px}}

/* Compact owl-post counters stay inside their buttons, including phone layouts. */
.guild-launcher,.guild-tabs>.guild-button{position:relative}
.guild-notification{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 4px;margin-left:5px;border:1px solid #fff1bf;border-radius:10px;background:#ffca66;color:#302045;font:bold 11px/1 system-ui;box-shadow:0 2px 0 #5e345e,0 0 10px #ffc96655;animation:guild-post-arrive .35s ease-out;pointer-events:none}
@keyframes guild-post-arrive{from{transform:scale(.3) rotate(-15deg)}70%{transform:scale(1.15)}to{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.guild-notification{animation:none}}

/* A clear offline entrance; retain the lobby cards and practice screen artwork. */
.guild-lobbies-view .guild-bot-practice{margin:0 0 18px;border-color:#edd9a3;background:linear-gradient(120deg,#514164,#393452);box-shadow:0 5px #1c172d,inset 0 1px #fff2}
.guild-bot-practice .guild-practice-icon{width:48px;height:48px;object-fit:contain;flex:none}
.guild-bot-practice strong{font-size:19px;color:#fde6ab;letter-spacing:.025em}
.guild-bot-practice .guild-button{background:linear-gradient(#fde5a5,#e5c775)!important;color:#3d3020!important;border-color:#fdebbc!important;box-shadow:0 5px #66543d}
@media(max-width:600px){.guild-bot-practice{gap:10px;padding:12px}.guild-bot-practice .guild-practice-icon{width:38px;height:38px}.guild-bot-practice strong{font-size:17px}}

/* Social polish: compact search and unmistakable message priority. */
.guild-friend-search{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}
.guild-friend-search input{flex:1;min-width:140px;border:2px solid #a88bc8;border-radius:14px;padding:10px 12px;background:#20182f;color:#fff1d0;font:inherit}
.guild-search-count{font-size:11px;color:#cfbedf;white-space:nowrap}
.guild-friend-search input:focus-visible{outline:3px solid #fde6a6;outline-offset:2px}
.guild-content [data-friend-search][hidden],.guild-friend-search [hidden]{display:none!important}
.guild-card.has-unread{border-color:#ecdaa9;box-shadow:inset 4px 0 #edd697,0 5px #181529}
.guild-mobile.guild-adding .guild-friend-search{display:none}
.guild-dialog .guild-button:hover{transform:translateY(-2px)}
.guild-dialog .guild-button:disabled:hover{transform:none}
.guild-notice:empty{display:none}
@media(max-height:550px){.guild-friend-search{margin:6px 0;gap:6px}.guild-friend-search input{padding:7px 10px}.guild-friend-search .guild-button{padding:7px 10px!important;font-size:11px}}

/* Give touch actions room for their labels and unread badge. */
.guild-dialog.guild-mobile .guild-profile-card .guild-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:200px;max-width:38vw;gap:6px;align-items:stretch}
.guild-dialog.guild-mobile .guild-card-actions .guild-button{font-size:13px;min-width:0;width:auto;padding:8px!important}
.guild-dialog.guild-mobile .guild-card-actions .guild-message-button{grid-column:1/-1;grid-row:2}
.guild-dialog.guild-mobile .guild-card-actions .guild-card-open{grid-column:1;grid-row:1;min-width:0}
/* Invite pop-up (owner, Oct 15): a friend's party invite, or their "Not now", appears over the menu. */
.invite-toast{position:fixed;z-index:60;top:calc(env(safe-area-inset-top,0px) + 14px);left:50%;translate:-50% 0;display:flex;align-items:center;gap:14px;max-width:min(560px,calc(100vw - 32px));padding:10px 12px 10px 18px;border:2px solid #d9b46a;border-radius:14px;background:linear-gradient(#3a2858,#241839);color:#f6ead0;box-shadow:0 4px 0 #120b22,0 10px 28px #0009;animation:invite-toast-in .35s cubic-bezier(.2,1.3,.4,1)}
.invite-toast p{margin:0;font:700 17px/1.25 Georgia,'Times New Roman',serif;text-wrap:balance}
.invite-toast-actions{display:flex;gap:8px;flex:0 0 auto}
.invite-toast .guild-button{min-height:40px;padding:6px 14px;font-size:15px;white-space:nowrap}
@keyframes invite-toast-in{from{opacity:0;translate:-50% -24px}}
@media(prefers-reduced-motion:reduce){.invite-toast{animation:none}}
@media(max-height:440px){.invite-toast{top:calc(env(safe-area-inset-top,0px) + 8px);padding:6px 8px 6px 14px}.invite-toast p{font-size:15px}.invite-toast .guild-button{min-height:36px;font-size:14px}}
