 :root{
 --bg:#0d0b09;--bg-soft:#15110e;--panel:#1b1712;--panel-2:#241e17;--card:#201a14;--card-hover:#2a2219;
 --text:#f4ead7;--muted:#b9a98d;--gold:#c69a45;--gold-light:#e6c878;--gold-dark:#6d4d1d;
 --red:#8f1515;--red-light:#bd2a2a;--red-dark:#4b0808;--green:#2d8a4b;--green-light:#83d39a;
 --border:rgba(198,154,69,.45);--shadow:rgba(0,0,0,.55);--radius:16px;--speed:180ms}
body.light{--bg:#ece3d3;--bg-soft:#f7f1e6;--panel:#fff8ea;--panel-2:#f2e2c2;--card:#fffaf0;--card-hover:#fff0cf;--text:#20170d;--muted:#6b5332;--gold:#9b6b21;--gold-light:#c28d35;--gold-dark:#5c3a11;--red:#c83a32;--red-light:#e55048;--red-dark:#8b1f19;--green:#237d46;--green-light:#237d46;--border:rgba(120,78,22,.4);--shadow:rgba(80,55,20,.22)}
*{box-sizing:border-box}html{min-height:100%}body{margin:0;min-height:100%;font-family:"Noto Sans KR",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at top,rgba(198,154,69,.12),transparent 34rem),linear-gradient(180deg,var(--bg-soft),var(--bg));color:var(--text)}
button,input,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.panel{background:linear-gradient(180deg,rgba(255,255,255,.035),transparent),var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 16px 30px var(--shadow)}
.auth-gate-open{overflow:hidden}.auth-page{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;min-height:100dvh;padding:24px;overflow:auto;background:radial-gradient(circle at 50% 8%,rgba(196,139,46,.24),transparent 30rem),radial-gradient(circle at 8% 88%,rgba(115,17,12,.28),transparent 26rem),linear-gradient(150deg,#160e08 0%,#080605 52%,#120a07 100%);isolation:isolate}.auth-page::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent)}.auth-page-glow{position:absolute;top:-170px;left:50%;z-index:-1;width:520px;height:520px;border:1px solid rgba(230,200,120,.16);border-radius:50%;background:radial-gradient(circle,rgba(198,154,69,.14),transparent 67%);transform:translateX(-50%);box-shadow:0 0 120px rgba(198,154,69,.08)}.auth-card{width:min(100%,490px);padding:clamp(28px,6vw,48px);border:1px solid rgba(218,174,91,.55);border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,.055),transparent 26%),rgba(11,8,6,.93);text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,240,196,.04),inset 0 -30px 70px rgba(0,0,0,.35);backdrop-filter:blur(18px)}.auth-brand-mark{display:grid;place-items:center;width:82px;height:82px;margin:0 auto 18px;border:1px solid rgba(230,200,120,.48);border-radius:50%;background:radial-gradient(circle,rgba(198,154,69,.23),rgba(0,0,0,.35));box-shadow:0 0 34px rgba(198,154,69,.16)}.auth-brand-mark img{width:60px;height:60px;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.6))}.auth-eyebrow{margin:0;color:#bd9551;font-size:.7rem;font-weight:900;letter-spacing:.19em}.auth-card h1{margin:8px 0 12px;color:#efd792;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:clamp(1.75rem,6vw,2.35rem);letter-spacing:.02em;text-shadow:0 2px 6px #000,0 0 20px rgba(198,154,69,.2)}.auth-description{margin:0;color:#b7a889;font-size:.92rem;line-height:1.75}.auth-status{min-height:24px;margin:20px 0 12px;color:#ddc68e;font-size:.86rem;font-weight:800}.auth-status.is-error{color:#ffb19f}.auth-choices{display:grid;gap:10px}.auth-google-button,.auth-guest-button{width:100%;height:52px;border-radius:5px;font-weight:900;transition:transform var(--speed),filter var(--speed),border-color var(--speed)}.auth-google-button{display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #dadce0;background:#fff;color:#272727;box-shadow:0 8px 22px rgba(0,0,0,.35)}.auth-google-button svg{width:21px;height:21px}.auth-guest-button{border:1px solid rgba(198,154,69,.55);background:linear-gradient(180deg,#302419,#120d09);color:#dfc789}.auth-google-button:hover,.auth-google-button:focus-visible,.auth-guest-button:hover,.auth-guest-button:focus-visible{transform:translateY(-2px);filter:brightness(1.08);outline:0}.auth-google-button:disabled,.auth-guest-button:disabled{cursor:wait;opacity:.58;transform:none}.auth-privacy-note{display:grid;gap:5px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(198,154,69,.2);color:#8d806a;font-size:.75rem;line-height:1.55}.auth-privacy-note strong{color:#cdb67e}.auth-action-button{min-width:76px;height:44px;padding:0 .8rem;border:1px solid rgba(198,154,69,.45);border-radius:8px;background:rgba(8,6,4,.58);color:#d7bd80;font-weight:900}.auth-action-button:hover,.auth-action-button:focus-visible{border-color:var(--gold-light);color:#ffe7aa;outline:0}
.header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem clamp(1rem,4vw,2.5rem);background:rgba(13,11,9,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:0 10px 28px var(--shadow)}
body.light .header{background:rgba(255,248,234,.88)}.title h1{margin:.35rem 0 .15rem;color:var(--gold-light);font-size:clamp(1.45rem,5vw,2.3rem);line-height:1.1;letter-spacing:.04em;text-shadow:0 0 18px rgba(198,154,69,.35)}.title p{margin:.25rem 0 0;color:var(--muted);font-size:.95rem}.eyebrow{display:inline-flex;padding:.22rem .6rem;border:1px solid rgba(198,154,69,.35);border-radius:999px;color:var(--gold-light);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:rgba(198,154,69,.08)}
.header-actions{display:flex;gap:.6rem;align-items:center}.header-tabs{position:absolute;left:50%;top:50%;display:inline-grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(516px,50vw);min-width:396px;height:55px;padding:5px;border:1px solid rgba(198,154,69,.42);border-radius:10px;background:rgba(7,6,5,.66);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 10px 22px rgba(0,0,0,.32);transform:translate(-50%,-50%);backdrop-filter:blur(8px)}.header-tab{display:flex;align-items:center;justify-content:center;min-width:0;height:43px;padding:0 .95rem;border:1px solid transparent;border-radius:7px;color:var(--muted);font-size:1.08rem;font-weight:900;letter-spacing:0;text-decoration:none;white-space:nowrap;transition:color var(--speed),background var(--speed),border-color var(--speed),filter var(--speed)}.header-tab:hover,.header-tab:focus-visible{color:#fff0b6;background:rgba(198,154,69,.12);border-color:rgba(230,200,120,.38);outline:0}.header-tab.active,.header-tab[aria-current="page"]{color:#160f06;background:linear-gradient(180deg,var(--gold-light),var(--gold));border-color:var(--gold-light);box-shadow:0 0 12px rgba(198,154,69,.22)}body.light .header-tabs{background:rgba(255,250,239,.7)}.theme-toggle,.my-page-button{min-width:52px;height:44px;border:1px solid var(--border);border-radius:999px;background:linear-gradient(145deg,var(--panel-2),var(--panel));color:var(--gold-light);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 8px 18px var(--shadow);transition:transform var(--speed),border-color var(--speed),background var(--speed)}.my-page-button{min-width:92px;padding:0 .9rem;border-radius:8px;font-weight:900}.theme-toggle:hover,.my-page-button:hover,.my-page-button:focus-visible,.tool-button:hover,.filter:hover,.mode-tab:hover{transform:translateY(-2px);border-color:var(--gold-light);outline:0}
.my-page-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:start end;padding:96px 24px 24px;background:radial-gradient(circle at 78% 12%,rgba(198,154,69,.14),transparent 28rem),rgba(0,0,0,.48);backdrop-filter:blur(4px)}
.my-page-overlay[hidden]{display:none}.my-page-backdrop{position:absolute;inset:0;border:0;background:transparent}.my-page-panel{position:relative;z-index:1;width:min(1040px,calc(100vw - 48px));max-height:calc(100vh - 120px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(198,154,69,.68);border-radius:8px;background:radial-gradient(circle at 50% 0,rgba(198,154,69,.12),transparent 22rem),linear-gradient(180deg,rgba(255,255,255,.04),transparent),#0b0806;color:#ead7ad;font-family:"Noto Sans KR",system-ui,sans-serif;box-shadow:0 24px 60px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,255,255,.04),inset 0 0 28px rgba(0,0,0,.58)}
.my-page-panel.is-chronicle-complete{border-color:#ffd76a;background:radial-gradient(circle at 50% 0,rgba(255,215,106,.24),transparent 24rem),linear-gradient(100deg,rgba(72,45,11,.9),rgba(16,11,5,.98) 48%,rgba(49,32,10,.94)),#0b0806;box-shadow:0 24px 64px rgba(0,0,0,.76),0 0 28px rgba(255,205,88,.26),inset 0 0 0 1px rgba(255,236,171,.22),inset 0 0 34px rgba(255,191,74,.18)}
.my-page-panel.is-chronicle-complete::before{content:"";position:absolute;inset:-45% -30%;z-index:0;background:radial-gradient(circle at 18% 42%,rgba(255,244,183,.55) 0 2px,transparent 3px),radial-gradient(circle at 62% 36%,rgba(255,221,112,.42) 0 1px,transparent 3px),linear-gradient(115deg,transparent 34%,rgba(255,231,147,.28) 48%,transparent 62%);opacity:.58;transform:translateX(-35%);animation:guildMasterShimmer 3.2s linear infinite;pointer-events:none}
.my-page-panel.is-chronicle-complete>.my-page-titlebar,.my-page-panel.is-chronicle-complete>.my-page-body{position:relative;z-index:1}
.my-page-panel.is-chronicle-complete .my-page-titlebar{border-bottom-color:rgba(255,215,106,.5);background:linear-gradient(180deg,rgba(80,54,17,.96),rgba(18,12,5,.96))}
.my-page-panel.is-chronicle-complete .my-page-section{border-color:rgba(255,215,106,.46);background:linear-gradient(180deg,rgba(255,221,112,.05),transparent),rgba(7,5,2,.74);box-shadow:inset 0 0 22px rgba(255,191,74,.08)}
.member-chronicle-overlay{z-index:1480;place-items:start center;background:radial-gradient(circle at 50% 12%,rgba(198,154,69,.18),transparent 28rem),rgba(0,0,0,.58)}.member-chronicle-titlebar{grid-template-columns:minmax(0,1fr) auto}.member-chronicle-body{grid-template-columns:minmax(0,1fr)}.member-chronicle-profile .my-page-meta>div{grid-template-columns:92px minmax(0,1fr)}
.my-page-titlebar{display:grid;grid-template-columns:minmax(160px,1fr) auto auto;align-items:center;gap:16px;padding:16px 18px;border-bottom:1px solid rgba(198,154,69,.38);background:linear-gradient(180deg,rgba(42,31,20,.96),rgba(12,9,6,.96))}
.my-page-path{display:inline-flex;align-items:center;min-height:20px;padding:0 .52rem;border:1px solid rgba(198,154,69,.34);border-radius:999px;background:rgba(198,154,69,.08);color:#caa85f;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.my-page-titlebar h2{margin:4px 0 0;color:#f1d38b;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.28rem;letter-spacing:0;text-shadow:0 2px 4px #000,0 0 14px rgba(198,154,69,.22)}
.my-page-tabbar{display:inline-grid;grid-template-columns:repeat(3,104px);gap:6px;align-items:center;justify-content:center}.my-page-tab{height:34px;padding:0 .55rem;border:1px solid rgba(126,90,44,.76);border-radius:3px;background:linear-gradient(180deg,#1b140e,#080604);color:#d7bd80;font-weight:900;text-shadow:0 2px 3px #000;white-space:nowrap;box-shadow:inset 0 0 14px rgba(0,0,0,.5);transition:filter var(--speed),border-color var(--speed),color var(--speed),background var(--speed)}.my-page-tab:hover,.my-page-tab:focus-visible{border-color:#e0b35d;color:#ffe7aa;filter:brightness(1.12);outline:0}.my-page-tab.is-active{border-color:#e0b35d;background:linear-gradient(180deg,#e1bd69,#a56f24 52%,#54200d);color:#160f06;text-shadow:0 1px 0 rgba(255,236,171,.4);box-shadow:inset 0 0 12px rgba(255,236,171,.16),0 0 14px rgba(198,154,69,.18)}
.my-page-close,.my-page-section button,.my-page-chat-form button,.my-page-nickname-form button{border:1px solid rgba(176,121,47,.72);border-radius:3px;background:linear-gradient(180deg,#7a1b13,#3a0906);color:#f2d18b;font-weight:900;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 14px rgba(0,0,0,.5)}
.my-page-close{height:34px;padding:0 12px}.my-page-close:hover,.my-page-section button:hover,.my-page-section button:focus-visible,.my-page-chat-form button:hover,.my-page-chat-form button:focus-visible,.my-page-nickname-form button:hover,.my-page-nickname-form button:focus-visible{border-color:#e0b35d;color:#ffe7aa;filter:brightness(1.13);outline:0;box-shadow:inset 0 0 14px rgba(0,0,0,.5),0 0 12px rgba(198,154,69,.18)}
.my-page-body{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;overflow:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}.my-page-body.is-profile,.my-page-body.is-notes{grid-template-columns:minmax(0,1fr)}.my-page-body.is-direct{grid-template-columns:minmax(240px,.46fr) minmax(0,1fr);align-content:start}.my-page-body::-webkit-scrollbar,.my-page-chat-messages::-webkit-scrollbar,.my-page-request-list::-webkit-scrollbar,.my-page-note-list::-webkit-scrollbar{width:8px}.my-page-body::-webkit-scrollbar-track,.my-page-chat-messages::-webkit-scrollbar-track,.my-page-request-list::-webkit-scrollbar-track,.my-page-note-list::-webkit-scrollbar-track{background:#090704}.my-page-body::-webkit-scrollbar-thumb,.my-page-chat-messages::-webkit-scrollbar-thumb,.my-page-request-list::-webkit-scrollbar-thumb,.my-page-note-list::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,#c69a45,#5b3611);border:1px solid #090704}
.my-page-section{min-width:0;padding:12px;border:1px solid rgba(135,91,38,.62);border-radius:5px;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent),rgba(5,4,3,.72);box-shadow:inset 0 0 18px rgba(0,0,0,.42)}
.my-page-section h3{margin:0 0 10px;color:#f0cd82;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1rem;text-shadow:0 2px 3px #000}.my-page-profile,.my-page-summary,.my-page-notes,.my-page-chats{grid-column:1/-1}
.my-page-nickname-form{display:grid;grid-template-columns:72px 11em 112px minmax(0,1fr);gap:8px;align-items:center;margin-bottom:10px;justify-content:start}.my-page-nickname-form label,.my-page-party-row strong{color:#f0cd82;font-weight:900}
.my-page-nickname-form input,.my-page-chat-form input,.my-page-party-row select{min-width:0;height:36px;border:1px solid rgba(176,121,47,.64);border-radius:3px;background:#050403;color:#f0d08a;outline:0;padding:0 10px;box-shadow:inset 0 0 14px rgba(0,0,0,.72)}
.my-page-nickname-help{min-width:0;color:#a99774;font-size:.74rem;line-height:1.45}
.my-page-nickname-form input:focus,.my-page-chat-form input:focus,.my-page-party-row select:focus{border-color:#e0b35d;box-shadow:inset 0 0 14px rgba(0,0,0,.72),0 0 0 2px rgba(224,179,93,.18)}
.my-page-meta{display:grid;gap:6px;margin:0}.my-page-meta>div,.my-page-party-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:8px;align-items:center;min-height:30px}.my-page-meta dt{color:#9d875c;font-weight:900}.my-page-meta dd{min-width:0;margin:0;color:#efd28f;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-page-party-row{grid-template-columns:92px minmax(0,1fr) 96px;margin-top:8px}
.my-page-auth-identity{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:14px;padding:11px;border:1px solid rgba(66,133,244,.32);border-radius:5px;background:linear-gradient(90deg,rgba(66,133,244,.1),rgba(0,0,0,.22))}.my-page-auth-avatar{width:52px;height:52px;border:1px solid rgba(230,200,120,.46);border-radius:50%;object-fit:cover;background:#17120d}.my-page-auth-copy{display:grid;gap:3px;min-width:0}.my-page-auth-copy strong,.my-page-auth-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-page-auth-copy strong{color:#f0d08a}.my-page-auth-copy span{color:#a8946d;font-size:.82rem}.my-page-google-badge{padding:.28rem .48rem;border:1px solid rgba(66,133,244,.4);border-radius:999px;color:#9fc1ff;font-size:.68rem;font-weight:900}.my-page-onboarding-notice{margin:0 0 12px;padding:10px 12px;border:1px solid rgba(255,193,78,.48);border-radius:4px;background:rgba(132,73,11,.18);color:#ffe0a1;font-size:.86rem;font-weight:900;line-height:1.6}.my-page-panel.is-onboarding .my-page-close{border-color:rgba(126,90,44,.76);background:linear-gradient(180deg,#1b140e,#080604)}.my-page-panel.is-onboarding .my-page-nickname-form{padding:12px;border:1px solid rgba(255,193,78,.28);background:rgba(255,193,78,.05)}
.my-page-empty{margin:0;color:#8f7d5d}.my-page-summary{min-height:310px;align-content:start}.my-page-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.my-page-status-card{min-height:92px;padding:14px;border:1px solid rgba(135,91,38,.5);border-radius:4px;background:rgba(0,0,0,.32);display:grid;gap:6px;align-content:center}.my-page-status-card span{color:#9d875c;font-weight:900}.my-page-status-card strong{color:#f1d38b;font-size:1.15rem}.my-page-request-list,.my-page-note-list{display:grid;gap:8px;overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:#a97831 #090704}.my-page-request-list{max-height:820px}.my-page-note-list{max-height:532px}.my-page-request,.my-page-note,.my-page-chat{display:grid;gap:8px;padding:10px;border:1px solid rgba(135,91,38,.5);border-radius:4px;background:rgba(0,0,0,.32)}.my-page-request{min-height:74px}.my-page-request .my-page-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 8px}.my-page-request .my-page-meta>div{grid-template-columns:46px minmax(0,1fr);min-height:22px}.my-page-note{min-height:82px;grid-template-columns:minmax(0,1fr) 88px;align-items:center}.my-page-note .my-page-meta{min-width:0}.my-page-note>button{width:100%;justify-self:end}.my-page-inline-actions{display:flex;justify-content:flex-end;gap:8px}.my-page-section button.is-secondary{border-color:rgba(126,90,44,.76);background:linear-gradient(180deg,#1b140e,#080604);color:#d7bd80}
.my-page-request{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:58px}.my-page-request-nickname{min-width:0;color:#f1d38b;font-size:1.02rem;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 4px #000,0 0 10px rgba(198,154,69,.18)}
.my-page-summary{min-height:360px}.my-page-status-card.is-collection{min-height:230px;align-content:start}.my-page-collection-missing-list{display:grid;gap:4px;max-height:154px;margin:4px 0 0;padding:0 4px 0 0;list-style:none;overflow:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}.my-page-collection-missing-list::-webkit-scrollbar{width:8px}.my-page-collection-missing-list::-webkit-scrollbar-track{background:#090704}.my-page-collection-missing-list::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,#c69a45,#5b3611);border:1px solid #090704}.my-page-collection-missing-list li{min-height:24px;color:#d6c097;font-size:.82rem;font-weight:800;line-height:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid rgba(135,91,38,.28)}.my-page-collection-missing-list li.is-complete{color:#9be08a;border-bottom:0}
.my-page-status-card.is-collection>span,.my-page-status-card.is-collection>strong{justify-self:center;text-align:center}.my-page-status-card.is-collection>span{font-size:1.04rem;line-height:1.2;text-shadow:0 2px 4px #000,0 0 12px currentColor}.my-page-status-card.is-collection>strong{display:block;width:100%;font-size:1.22rem}.my-page-status-card.is-collection.is-uniques>span{color:#c1ad73}.my-page-status-card.is-collection.is-sets>span{color:#4d9a30}.my-page-status-card.is-collection.is-runewords>span{color:#b8b3ad}
.my-page-direct-requests,.my-page-direct-chats{min-height:0}.my-page-chat-limit{margin:-4px 0 10px;color:#9d875c;font-size:.82rem;font-weight:900;text-align:right}.my-page-chat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.my-page-chat-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}.my-page-chat-head strong{min-width:0;color:#f1d38b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-page-chat-head span{color:#9d875c;font-size:.82rem;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.my-page-chat-messages{height:148px;max-height:148px;overflow:auto;padding:8px;border:1px solid rgba(135,91,38,.5);border-radius:3px;background:#050403;scrollbar-width:thin;scrollbar-color:#a97831 #090704}.my-page-chat-messages p{margin:0 0 5px;color:#ddd5c5}.my-page-chat-messages strong{color:#ffd778}.my-page-chat-form{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:8px}
@media(max-width:760px){.my-page-overlay{place-items:start center;padding:88px 10px 14px}.my-page-panel{width:calc(100vw - 20px);max-height:calc(100vh - 106px)}.my-page-titlebar{grid-template-columns:minmax(0,1fr) auto}.my-page-tabbar{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(3,minmax(0,1fr));justify-self:stretch}.my-page-body.is-direct{grid-template-columns:1fr}.my-page-summary-grid{grid-template-columns:1fr}.my-page-nickname-form,.my-page-party-row,.my-page-note{grid-template-columns:1fr}.my-page-chat-grid{grid-template-columns:1fr}}
.main{width:min(1380px,calc(100% - 2rem));margin:0 auto;padding:1.5rem 0 4rem}.hero-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:1rem}.progress-section{padding:clamp(1.2rem,4vw,2rem);text-align:center}.mode-tabs{display:flex;gap:2.25rem;justify-content:center;flex-wrap:wrap;margin-bottom:2.1rem;padding:.35rem 0}.mode-tab{--tab-color:var(--gold);--tab-active-text:#fff;--tab-glow:rgba(198,154,69,.3);position:relative;overflow:hidden;min-width:240px;min-height:92px;padding:1.25rem 2.2rem;border-radius:18px;border:2px solid var(--tab-color);background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.04) 38%,rgba(0,0,0,.28)),linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.24));color:var(--tab-color);font-size:1.45rem;font-weight:900;letter-spacing:0;text-shadow:0 2px 14px rgba(0,0,0,.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -16px 24px rgba(0,0,0,.18),0 18px 36px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.05);transition:transform 180ms ease,border-color 180ms ease,background 180ms ease,box-shadow 180ms ease,color 180ms ease}.mode-tab::before{content:"";position:absolute;inset:1px;border-radius:16px;background:linear-gradient(120deg,rgba(255,255,255,.28),transparent 32%,transparent 68%,rgba(255,255,255,.08));opacity:.68;pointer-events:none}.mode-tab::after{content:"";position:absolute;left:16%;right:16%;bottom:12px;height:1px;background:linear-gradient(90deg,transparent,var(--tab-color),transparent);opacity:.72;pointer-events:none}.mode-tab[data-mode="uniques"]{--tab-color:#C1AD73;--tab-active-text:#130d05;--tab-glow:rgba(193,173,115,.45)}.mode-tab[data-mode="sets"]{--tab-color:#1E5305;--tab-active-text:#fff;--tab-glow:rgba(30,83,5,.52)}.mode-tab[data-mode="runewords"]{--tab-color:#54504D;--tab-active-text:#fff;--tab-glow:rgba(84,80,77,.5)}.mode-tab:hover{transform:translateY(-4px);border-color:var(--tab-color);box-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -16px 24px rgba(0,0,0,.16),0 24px 44px rgba(0,0,0,.4),0 0 22px var(--tab-glow)}.mode-tab.active{color:var(--tab-active-text);background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.08) 34%,rgba(0,0,0,.18)),var(--tab-color);border-color:var(--tab-color);box-shadow:inset 0 1px 0 rgba(255,255,255,.36),inset 0 -18px 26px rgba(0,0,0,.18),0 26px 48px rgba(0,0,0,.44),0 0 28px var(--tab-glow);transform:translateY(-2px)}
.progress-section h2,.promo-panel h2,.search-title h2,.footer-promo h2{margin:.35rem 0 1rem;color:var(--gold-light);font-size:clamp(1.2rem,4vw,1.65rem)}.progress-circle{--progress:0%;width:clamp(150px,32vw,220px);height:clamp(150px,32vw,220px);margin:0 auto 1.2rem;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,var(--panel) 0 58%,transparent 59%),conic-gradient(var(--red-light) var(--progress),rgba(198,154,69,.18) 0);border:1px solid var(--border);box-shadow:inset 0 0 25px rgba(0,0,0,.45),0 0 30px rgba(198,154,69,.12)}#percent{font-size:clamp(2rem,7vw,3.6rem);font-weight:800;color:var(--gold-light);letter-spacing:0;text-shadow:0 0 18px rgba(198,154,69,.25)}
.progress-bar{width:min(620px,100%);height:18px;margin:0 auto;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(198,154,69,.28);box-shadow:inset 0 2px 8px rgba(0,0,0,.42)}#progressFill{width:0%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--red-dark),var(--red),var(--red-light));box-shadow:0 0 16px rgba(189,42,42,.55);transition:width 320ms ease}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin-top:1.2rem}.summary-card{padding:1rem .8rem;border:1px solid rgba(198,154,69,.28);border-radius:14px;background:rgba(0,0,0,.18);box-shadow:inset 0 0 18px rgba(0,0,0,.18)}.summary-card strong{display:block;margin-bottom:.25rem;color:var(--gold-light);font-size:clamp(1.4rem,4vw,2.1rem);line-height:1}.summary-card span{color:var(--muted);font-size:.88rem;font-weight:700}.summary-card.special strong{color:var(--green-light)}
.promo-panel{padding:1rem;display:flex;flex-direction:column}.promo-image{width:100%;max-height:720px;object-fit:contain;border-radius:14px;border:1px solid rgba(198,154,69,.25);box-shadow:0 18px 34px var(--shadow);background:#000}.promo-caption{margin-top:.85rem;padding:.85rem;border:1px solid rgba(198,154,69,.25);border-radius:12px;background:rgba(0,0,0,.16);display:flex;flex-direction:column;gap:.2rem}.promo-caption span{color:var(--muted)}
.search-section{margin-top:1rem;padding:1rem}.search-title{display:flex;justify-content:space-between;gap:1rem;align-items:end;flex-wrap:wrap}.search-title p{margin:.2rem 0 0;color:var(--muted)}#searchInput{width:100%;height:54px;margin-top:.75rem;padding:0 1rem;color:var(--text);background:rgba(0,0,0,.24);border:1px solid rgba(198,154,69,.42);border-radius:12px;outline:none;box-shadow:inset 0 2px 8px rgba(0,0,0,.28);transition:border-color var(--speed),box-shadow var(--speed),background var(--speed)}body.light #searchInput{background:rgba(255,255,255,.62)}#searchInput::placeholder{color:var(--muted)}#searchInput:focus{border-color:var(--gold-light);box-shadow:inset 0 2px 8px rgba(0,0,0,.24),0 0 0 3px rgba(198,154,69,.18)}
.filter-section,.utility-section{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem;padding:1rem}.filter,.tool-button{min-width:94px;padding:.7rem 1rem;border:1px solid var(--border);border-radius:999px;color:var(--text);background:linear-gradient(180deg,var(--panel-2),var(--panel));transition:transform var(--speed),background var(--speed),border-color var(--speed),color var(--speed);text-align:center}.filter.active{color:#130d05;background:linear-gradient(180deg,var(--gold-light),var(--gold));border-color:var(--gold-light);font-weight:800}.filter[hidden]{display:none}.tool-button.danger{color:#ffd4d4;border-color:rgba(189,42,42,.55)}.tool-button.install-button{color:#130d05;background:linear-gradient(180deg,var(--gold-light),var(--gold));font-weight:900}.file-button{display:inline-flex;align-items:center;justify-content:center}
.inventory-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);gap:1rem;margin-top:1rem;scrollbar-width:thin;scrollbar-color:rgba(230,200,120,.82) rgba(0,0,0,.18)}.inventory-grid[hidden]{display:none}.inventory-panel{overflow:hidden}.inventory-panel>summary{position:relative;list-style:none;padding:1rem 3rem 1rem 1rem;font-size:1.1rem;color:var(--gold-light);font-weight:900;cursor:pointer;border-bottom:1px solid rgba(198,154,69,.18);transition:background var(--speed),color var(--speed)}.inventory-panel>summary::after{content:"+";position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(198,154,69,.35);border-radius:8px;background:rgba(0,0,0,.22);color:var(--gold-light);font-weight:900}.inventory-panel[open]>summary::after{content:"-"} .inventory-panel>summary:hover{background:rgba(198,154,69,.08);color:#fff0b6}.inventory-panel>summary::-webkit-details-marker{display:none}.inventory-intro{padding:.8rem 1rem .2rem;color:var(--muted);line-height:1.55}.inventory-actions{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;padding:.8rem;border-bottom:1px solid rgba(198,154,69,.15)}.rune-inventory-summary,.rune-status{display:flex;gap:.38rem;align-items:center}.rune-inventory-summary{justify-self:end;justify-content:flex-end}.inventory-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.72rem;max-height:none;overflow:visible;padding:.8rem}.remaining-rune-list{max-height:none;overflow:visible;padding:.8rem}.inventory-row{min-height:186px;display:flex;flex-direction:column;align-items:stretch;gap:.62rem;padding:.72rem;border:1px solid rgba(198,154,69,.18);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.14));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.inventory-row:last-child{border-bottom:1px solid rgba(198,154,69,.18)}.remaining-row{display:grid;grid-template-columns:1fr auto;gap:.7rem;align-items:center;padding:.55rem 0;border-bottom:1px solid rgba(198,154,69,.13)}.remaining-row:last-child{border-bottom:0}.inventory-name,.remaining-name{color:var(--text);font-weight:700;word-break:keep-all;display:flex;gap:.65rem;align-items:center}.inventory-name{flex-direction:column;gap:.35rem;text-align:center;font-size:.9rem}.counter{display:inline-grid;grid-template-columns:32px minmax(46px,1fr) 32px;gap:.32rem;align-items:center}.inventory-row>.counter{order:-1;width:100%;padding-bottom:.58rem;border-bottom:1px solid rgba(198,154,69,.14)}.counter button,.counter input{height:34px;border-radius:7px;border:1px solid rgba(198,154,69,.35);background:rgba(0,0,0,.22);color:var(--text);text-align:center}.counter button{color:var(--gold-light);font-weight:900}.counter input{width:100%;min-width:0;outline:none;font-weight:900}.rune-icon,.rune-mini-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:8px;overflow:hidden;border:1px solid rgba(198,154,69,.25)}.rune-icon img{width:42px;height:42px;display:block}.inventory-name .rune-icon img{width:46px;height:46px}.rune-mini-icon img{width:28px;height:28px;display:block}.remaining-meta{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.meta-pill{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;padding:.38rem .62rem;border-radius:999px;background:rgba(0,0,0,.18);border:1px solid rgba(198,154,69,.2);font-size:.84rem;font-weight:800;white-space:nowrap}.meta-pill strong{font:inherit;color:inherit}.rune-inventory-summary .meta-pill{min-width:94px;font-size:.9rem}.rune-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:auto}.rune-status .meta-pill{min-width:0;padding:.34rem .25rem;border-radius:7px;font-size:.76rem}.meta-pill.need{color:var(--gold-light)}.meta-pill.have{color:var(--green-light)}.meta-pill.lack{color:#ff8f8f}
.footer-promo{margin-top:1rem;padding:1rem}.footer-promo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;margin-top:.8rem}.footer-promo-grid label{display:flex;flex-direction:column;gap:.35rem}.footer-promo-grid label.full{grid-column:1/-1}.footer-promo-grid span{color:var(--muted);font-size:.9rem;font-weight:700}.footer-promo-grid input{height:46px;padding:0 .9rem;border-radius:12px;border:1px solid rgba(198,154,69,.35);background:rgba(0,0,0,.2);color:var(--text)}body.light .footer-promo-grid input{background:rgba(255,255,255,.62)}.promo-preview{margin-top:1rem;padding:1rem;border-radius:12px;background:rgba(0,0,0,.16);border:1px solid rgba(198,154,69,.25);line-height:1.7}.promo-preview div:last-child{color:var(--muted)}
.data-notice{margin-top:1rem;padding:1rem;border:1px solid rgba(255,183,77,.55);border-radius:var(--radius);color:#ffe7ba;background:rgba(143,83,12,.18);box-shadow:0 12px 26px var(--shadow);line-height:1.6}.list{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1rem;margin-top:1rem}.card{position:relative;min-height:260px;padding:1rem;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent),var(--card);border:1px solid rgba(198,154,69,.28);border-radius:var(--radius);box-shadow:0 12px 26px var(--shadow);transition:transform var(--speed),border-color var(--speed),background var(--speed),box-shadow var(--speed)}.card:hover{transform:translateY(-4px);background:linear-gradient(180deg,rgba(255,255,255,.045),transparent),var(--card-hover);border-color:var(--gold);box-shadow:0 18px 34px var(--shadow)}.card.done{background:radial-gradient(circle at top right,rgba(255,172,92,.13),transparent 38%),linear-gradient(180deg,rgba(255,255,255,.045),transparent),var(--red-dark);border-color:rgba(255,88,88,.75)}.card.available:not(.done){border-color:rgba(86,211,123,.8);box-shadow:0 12px 26px var(--shadow),0 0 0 1px rgba(86,211,123,.18)}.card.favorite-card{border-color:rgba(255,213,94,.9)}
.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.card-title-wrap{display:flex;align-items:flex-start;gap:.6rem;min-width:0;cursor:pointer}.check{appearance:none;flex:0 0 auto;width:33px;height:33px;margin:.02rem 0 0;display:grid;place-items:center;border:2px solid var(--gold);border-radius:8px;background:rgba(0,0,0,.26);transition:background var(--speed),border-color var(--speed),transform var(--speed)}.check:checked{background:var(--red-light);border-color:#ffb4a9}.check:checked::after{content:"완";color:#fff;font-size:14px;font-weight:900}.name{display:block;color:var(--gold-light);font-size:1.14rem;font-weight:800;line-height:1.35;word-break:keep-all}.fav{flex:0 0 auto;width:70px;height:70px;display:grid;place-items:center;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;transition:transform 160ms ease,filter 160ms ease}.fav img{width:58px;height:58px;display:block;object-fit:contain;pointer-events:none;filter:drop-shadow(0 7px 8px rgba(0,0,0,.46))}.fav:hover,.fav:focus-visible{outline:0;filter:drop-shadow(0 0 13px rgba(230,200,120,.42));animation:favShake 360ms linear infinite}.fav:focus-visible{box-shadow:0 0 0 3px rgba(230,200,120,.38);border-radius:14px}.fav.active img{width:64px;height:64px}
.availability{margin:0 0 .8rem;padding:.55rem .7rem;border-radius:999px;border:1px solid rgba(198,154,69,.2);color:var(--muted);background:rgba(0,0,0,.16);font-size:.9rem;font-weight:800}.card.available .availability{color:#caffd8;border-color:rgba(86,211,123,.55);background:rgba(47,143,78,.22)}.card.done .availability{color:#ffe0df;border-color:rgba(255,140,140,.55);background:rgba(255,255,255,.08)}
.field{margin:.55rem 0;padding:.7rem .8rem;border:1px solid rgba(198,154,69,.18);border-radius:10px;background:rgba(0,0,0,.16);line-height:1.45}.field-label{display:block;color:var(--gold-light);font-weight:900;margin-bottom:.4rem}.rune-chip-wrap,.pill-wrap{display:flex;gap:.45rem;flex-wrap:wrap}.rune-chip,.field-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .48rem;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(198,154,69,.22);font-size:.9rem;font-weight:700}.field-pill{padding:.36rem .6rem}
details{margin-top:.8rem;border:1px solid rgba(198,154,69,.2);border-radius:10px;background:rgba(0,0,0,.14);overflow:hidden}summary{padding:.8rem;color:var(--gold-light);font-weight:800;cursor:pointer;user-select:none}.stats{margin:0;padding:0 1rem 1rem 1.6rem;color:var(--text)}.stats li{margin:.35rem 0;color:var(--text)}.memo{width:100%;min-height:74px;resize:vertical;margin-top:.85rem;padding:.85rem;color:var(--text);background:rgba(0,0,0,.22);border:1px solid rgba(198,154,69,.23);border-radius:10px;outline:none;transition:border-color var(--speed),box-shadow var(--speed)}body.light .memo{background:rgba(255,255,255,.56)}.memo::placeholder{color:var(--muted)}.memo:focus{border-color:var(--gold-light);box-shadow:0 0 0 3px rgba(198,154,69,.16)}.empty{grid-column:1/-1;padding:3rem 1rem;text-align:center;color:var(--muted);background:var(--panel);border:1px dashed var(--border);border-radius:var(--radius)}
.collection-card{min-height:282px;display:flex;flex-direction:column}.collection-card .card-header{position:relative;z-index:2;margin-bottom:.75rem}.collection-card .name{font-size:1.08rem}.fav.icon-fav{min-width:38px;width:38px;height:34px;padding:0;font-size:1.2rem;line-height:1}.item-visual{position:relative;z-index:1;min-height:178px;display:grid;place-items:center;padding:.4rem;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.18));border:1px solid rgba(198,154,69,.16)}.item-visual img{width:min(178px,86%);aspect-ratio:1;display:block;object-fit:contain;filter:drop-shadow(0 16px 18px rgba(0,0,0,.38))}.card.done{min-height:210px;background:linear-gradient(135deg,rgba(145,22,22,.92),rgba(47,11,9,.98) 54%,rgba(166,94,33,.75)),var(--red-dark);border-color:rgba(255,183,93,.9);box-shadow:0 18px 42px rgba(0,0,0,.52),0 0 0 1px rgba(255,210,118,.2),inset 0 0 32px rgba(255,210,118,.1);animation:cardCompletePop 520ms ease both}.card.done::before{content:"";position:absolute;inset:-45%;background:linear-gradient(115deg,transparent 38%,rgba(255,235,181,.26) 47%,transparent 56%);transform:translateX(-38%) rotate(8deg);animation:completeSweep 2.6s ease-in-out infinite;pointer-events:none}.card.done .card-header,.card.done .completion-panel,.card.done details,.card.done .memo{position:relative;z-index:1}.completion-panel{min-height:128px;display:grid;place-items:center;gap:.75rem;padding:1rem;border-radius:14px;border:1px solid rgba(255,218,131,.38);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.14));box-shadow:inset 0 0 24px rgba(0,0,0,.18)}.completion-seal{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;color:#241103;background:radial-gradient(circle,#fff2bd 0 34%,#e5b450 35% 66%,#8f4d1a 67% 100%);border:2px solid rgba(255,239,176,.82);font-size:1.8rem;font-weight:900;box-shadow:0 0 0 6px rgba(255,216,112,.1),0 16px 30px rgba(0,0,0,.36);animation:sealArrive 620ms cubic-bezier(.2,1.3,.32,1)}.completion-copy{display:flex;flex-direction:column;align-items:center;gap:.12rem;text-align:center}.completion-copy strong{color:#fff2bd;font-size:1.18rem}.completion-copy span{color:#ffe0b0;font-size:.9rem;font-weight:800}.card.done .availability,.card.done .fields{display:none}@keyframes favShake{0%,100%{transform:translateX(0) rotate(0) scale(1.02)}18%{transform:translateX(-1px) rotate(-4deg) scale(1.04)}36%{transform:translateX(1px) rotate(4deg) scale(1.04)}54%{transform:translateX(-1px) rotate(-3deg) scale(1.03)}72%{transform:translateX(1px) rotate(3deg) scale(1.03)}}@keyframes cardCompletePop{0%{transform:scale(.98);border-color:rgba(255,88,88,.75)}60%{transform:scale(1.018)}100%{transform:scale(1);border-color:rgba(255,183,93,.9)}}@keyframes completeSweep{0%,22%{transform:translateX(-45%) rotate(8deg);opacity:0}42%{opacity:.8}72%,100%{transform:translateX(45%) rotate(8deg);opacity:0}}@keyframes sealArrive{0%{transform:scale(.55) rotate(-18deg);opacity:0}68%{transform:scale(1.08) rotate(4deg);opacity:1}100%{transform:scale(1) rotate(0)}}
.toast{position:fixed;right:1rem;bottom:1rem;z-index:40;max-width:min(360px,calc(100% - 2rem));padding:.9rem 1rem;border-radius:12px;color:#fff;background:linear-gradient(180deg,var(--red-light),var(--red));box-shadow:0 18px 38px rgba(0,0,0,.45);transform:translateY(140%);opacity:0;transition:transform 220ms ease,opacity 220ms ease}.toast.show{transform:translateY(0);opacity:1}.complete-message{margin-top:1rem;padding:1rem;display:none;text-align:center;color:var(--gold-light);font-weight:900;border:1px solid var(--gold);border-radius:12px;background:rgba(198,154,69,.12)}.complete-message.show{display:block}.complete-message strong,.complete-message span{display:block}.complete-message strong{color:#fff0b6;font-size:1.12rem}.complete-message span{margin-top:.3rem;color:var(--gold-light)}
.rune-icon img,.rune-mini-icon img{object-fit:contain}
#runewordTools{align-items:start;grid-template-columns:1fr}
#runewordTools .inventory-panel{overflow:hidden}
.nasher-image-card{height:483.527px;min-height:483.527px;isolation:isolate}.nasher-card-backdrop{position:absolute;z-index:0;top:0;left:50%;width:min(298.488px,100%);height:483.527px;display:block;object-fit:contain;object-position:center;pointer-events:none;opacity:.38;filter:grayscale(1) brightness(.62) contrast(1.34) drop-shadow(0 18px 18px rgba(0,0,0,.48));transform:translateX(-50%);transform-origin:center;transition:opacity 420ms ease,filter 420ms ease,transform 520ms ease}.nasher-image-card>*:not(.nasher-card-backdrop){position:relative;z-index:2}.nasher-image-card:not(.done)::after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,7,6,.04),rgba(8,7,6,.12) 58%,rgba(8,7,6,.42))}.nasher-image-card.done{height:483.527px;min-height:483.527px;background:radial-gradient(circle at 50% 42%,rgba(230,200,120,.13),transparent 48%),linear-gradient(180deg,rgba(45,12,9,.34),rgba(79,15,11,.58)),var(--red-dark)}.nasher-image-card.done .nasher-card-backdrop{opacity:1;filter:saturate(1.08) brightness(1.06) contrast(1.03) drop-shadow(0 20px 22px rgba(0,0,0,.5));transform:translateX(-50%);animation:nasherImageReveal 680ms cubic-bezier(.2,.85,.25,1)}.nasher-image-card.done .completion-panel{margin-top:auto;background:linear-gradient(180deg,rgba(38,13,9,.28),rgba(12,8,6,.62));backdrop-filter:blur(3px)}@keyframes nasherImageReveal{0%{opacity:.38;filter:grayscale(1) brightness(.62);transform:translateX(-50%) scale(.97)}70%{opacity:1;filter:saturate(1.12) brightness(1.12);transform:translateX(-50%) scale(1.025)}100%{opacity:1;filter:saturate(1.08) brightness(1.06);transform:translateX(-50%)}}
.nasher-image-card.done>details{margin:0 0 .8rem}.nasher-image-card .card-header,.nasher-image-card .card-title-wrap,.nasher-image-card .check,.nasher-image-card .name{visibility:visible;opacity:1}.nasher-image-card .check{position:relative;z-index:3;display:grid}.nasher-image-card:not(.done)>details{position:relative;z-index:3;margin:.2rem 0 .8rem}
.nasher-image-card.done{animation:none}.nasher-image-card.done::before{display:none}.nasher-image-card.done:not(.is-identifying) .nasher-card-backdrop{animation:none}.nasher-image-card.done>.card-header+details{margin:.2rem 0 .8rem}.nasher-image-card.is-identifying{animation:nasherCardIdentify 1.15s ease both}.nasher-image-card>.nasher-identify-fx{position:absolute;z-index:6;inset:0;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(7,1fr);overflow:hidden;pointer-events:none}.nasher-identify-fx>span{min-width:0;min-height:0;background:linear-gradient(135deg,rgba(18,15,12,.98),rgba(2,2,2,.96));box-shadow:inset 0 0 0 1px rgba(230,200,120,.05);transform-origin:center;animation:nasherTileBreak .86s steps(5,end) forwards;animation-delay:var(--delay)}.nasher-identify-fx::before{content:"";position:absolute;z-index:2;inset:0;background:radial-gradient(circle at 50% 46%,rgba(230,200,120,.24),transparent 58%);opacity:0;animation:nasherIdentifyGlow 1.05s ease-out forwards;pointer-events:none}.nasher-identify-fx::after{content:"";position:absolute;z-index:3;left:8%;right:8%;top:8%;height:2px;background:linear-gradient(90deg,transparent,#fff0b6 24%,#c69a45 50%,#fff0b6 76%,transparent);box-shadow:0 0 12px rgba(230,200,120,.9),0 0 28px rgba(198,154,69,.42);opacity:0;animation:nasherIdentifyScan .82s .12s ease-in-out forwards;pointer-events:none}@keyframes nasherTileBreak{0%,18%{opacity:.98;transform:translate(0,0) scale(1)}45%{opacity:.82;transform:translate(calc(var(--dx) * .25),calc(var(--dy) * .25)) scale(.86,1)}72%{opacity:.4;transform:translate(calc(var(--dx) * .65),calc(var(--dy) * .65)) scale(.42,.78)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.06,.45)}}@keyframes nasherIdentifyGlow{0%,18%{opacity:0}48%{opacity:1}100%{opacity:0}}@keyframes nasherIdentifyScan{0%{top:8%;opacity:0}18%{opacity:1}82%{opacity:.78}100%{top:92%;opacity:0}}@keyframes nasherCardIdentify{0%{filter:brightness(.72);transform:scale(.995)}58%{filter:brightness(1.18);transform:scale(1.008)}100%{filter:brightness(1);transform:scale(1)}}@media(prefers-reduced-motion:reduce){.nasher-image-card.is-identifying,.nasher-identify-fx>span,.nasher-identify-fx::before,.nasher-identify-fx::after{animation-duration:.01ms!important;animation-delay:0ms!important}}
#remainingRuneList{max-height:380px;overflow-y:auto;overflow-x:hidden;padding-right:1rem;scrollbar-width:thin;scrollbar-color:rgba(230,200,120,.88) rgba(0,0,0,.18);scrollbar-gutter:stable}
#remainingRuneList::-webkit-scrollbar{width:12px;height:12px}
#remainingRuneList::-webkit-scrollbar-track{border-radius:999px;background:linear-gradient(180deg,rgba(255,240,180,.08),rgba(0,0,0,.28));border:1px solid rgba(198,154,69,.18);box-shadow:inset 0 0 8px rgba(0,0,0,.45)}
#remainingRuneList::-webkit-scrollbar-thumb{border-radius:999px;border:2px solid rgba(14,10,7,.92);background:linear-gradient(180deg,#f7df94 0%,#c69a45 42%,#7c4b18 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 0 10px rgba(198,154,69,.22)}
#remainingRuneList::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#fff0b6 0%,#d9ad56 44%,#935b1d 100%)}

/* Interactive community banners flank the collection on wide displays. */
.community-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,360px));justify-content:center;gap:1rem;margin-bottom:1rem}
.community-banner{position:relative;overflow:hidden;min-width:0;border:1px solid rgba(198,154,69,.42);border-radius:8px;background:#080706;box-shadow:0 18px 34px var(--shadow),inset 0 0 0 1px rgba(255,255,255,.03)}
.community-banner-art{position:relative;width:100%}
.community-banner img{display:block;width:100%;height:auto;object-fit:contain;transition:opacity 220ms ease,transform 220ms ease}
.party-banner-art{display:grid;place-items:start center;overflow:hidden;background:#080706}
.party-interactive-stage{position:relative;isolation:isolate;width:100%;aspect-ratio:559/943;overflow:hidden;background:#050504;container-type:inline-size;--party-scene-image:url("assets/promo/party-scenes/chronicle.webp")}
.party-interactive-stage[data-party-mode="연대기"]{--party-scene-image:url("assets/promo/party-scenes/chronicle.webp")}
.party-interactive-stage[data-party-mode="스피드 연대기"]{--party-scene-image:url("assets/promo/party-scenes/speed-chronicle.webp")}
.party-interactive-stage[data-party-mode="바알런"]{--party-scene-image:url("assets/promo/party-scenes/baal.webp")}
.party-interactive-stage[data-party-mode="디아런"]{--party-scene-image:url("assets/promo/party-scenes/diablo.webp")}
.party-interactive-stage[data-party-mode="카우런"]{--party-scene-image:url("assets/promo/party-scenes/cow.webp")}
.party-interactive-stage[data-party-mode="버스런"]{--party-scene-image:url("assets/promo/party-scenes/bus.webp")}
.party-screen-surface,.party-ui-shell{position:relative;width:100%;height:100%;overflow:hidden}
.party-ui-shell{border:clamp(7px,1.8cqw,15px) solid transparent;border-image:url("assets/promo/party-ui/party-ui-draft.webp") 26 stretch;background:#060605 url("assets/promo/party-ui/panel-texture.webp") center/192px 192px repeat;box-shadow:inset 0 0 46px #000,0 0 0 1px #090704}
.party-ui-shell::before{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 18%,rgba(184,126,47,.055),transparent 36%),linear-gradient(180deg,rgba(255,255,255,.016),transparent 25%,rgba(0,0,0,.16));box-shadow:inset 0 0 32px rgba(0,0,0,.78)}
.party-ui-shell .party-ui-title{position:absolute;z-index:4;top:2.55%;left:20.5%;right:20.5%;height:8.7%;margin:0;overflow:hidden;background:url("assets/promo/party-ui/title-draft.webp") center/contain no-repeat;color:transparent;font-size:0;line-height:0;text-indent:-9999px;text-shadow:none;filter:drop-shadow(0 4px 5px rgba(0,0,0,.9))}
.party-battle-scene{position:absolute;z-index:2;left:3.35%;right:3.35%;overflow:hidden;border:1px solid #9e7233;background-image:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.14)),var(--party-scene-image);background-repeat:no-repeat;background-size:cover,cover;background-position:center,center;box-shadow:inset 0 0 26px #000,0 0 0 3px rgba(2,2,2,.94),0 0 0 4px rgba(151,103,39,.48)}
.party-interactive-stage.is-summary .party-battle-scene{top:13.3%;height:42.2%}
.party-interactive-stage.is-controls .party-battle-scene{top:18.9%;height:35.2%}
.community-action{position:absolute;z-index:2;display:block;border:0;background:transparent;cursor:pointer;border-radius:6px;transition:background 160ms ease,box-shadow 160ms ease,transform 160ms ease}
.community-action::after{content:"";position:absolute;inset:0;border:1px solid transparent;border-radius:inherit;transition:border-color 160ms ease,box-shadow 160ms ease}
.community-action:hover::after,.community-action:focus-visible::after{border-color:rgba(255,216,126,.9);box-shadow:inset 0 0 22px rgba(190,34,26,.32),0 0 18px rgba(198,154,69,.34)}
.community-action:active{transform:scale(.985)}
.community-action:focus-visible{outline:3px solid rgba(255,224,145,.92);outline-offset:2px}
.community-action-guild{left:14.6%;right:14.6%;top:87.2%;height:7.7%;overflow:hidden;border-radius:2px}
.community-action-guild::after{inset:2px}
.party-primary-action{position:absolute;z-index:7;left:11.6%;right:11.6%;bottom:5.7%;height:9.55%;padding:0;border:0;background:transparent url("assets/promo/party-ui/action-draft.webp") center/100% 100% no-repeat;color:transparent;font-size:0;text-shadow:none;cursor:pointer;filter:drop-shadow(0 7px 8px rgba(0,0,0,.72));transition:filter 150ms ease,transform 150ms ease}
.party-primary-action:hover,.party-primary-action:focus-visible{filter:brightness(1.13) drop-shadow(0 0 12px rgba(198,137,48,.38));outline:2px solid rgba(255,224,145,.78);outline-offset:2px}
.party-primary-action:active{filter:brightness(.9) drop-shadow(0 3px 5px rgba(0,0,0,.75));transform:translateY(1px) scale(.992)}
.party-back-button{position:absolute;z-index:9;top:2.1%;left:2.1%;display:grid;place-items:center;width:8.2cqw;height:8.2cqw;min-width:30px;min-height:30px;max-width:54px;max-height:54px;padding:0;border:0;background:transparent url("assets/promo/party-ui/back-default.webp") center/100% 100% no-repeat;color:#f1d087;font-family:inherit;font-size:clamp(18px,4.2cqw,34px);font-weight:900;line-height:1;cursor:pointer}
.party-back-button:hover,.party-back-button:focus-visible{background-image:url("assets/promo/party-ui/back-hover.webp");outline:2px solid rgba(255,224,145,.78);outline-offset:2px}
.party-mode-tabs{position:absolute;z-index:7;top:12.2%;left:3.35%;right:3.35%;height:5.75%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.34cqw}
.party-mode-button{position:relative;min-width:0;padding:0 2px;border:0;background:transparent url("assets/promo/party-ui/tab-unselected-particle.webp") center/100% 100% no-repeat;color:#dfbd79;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:clamp(7px,2.2cqw,17px);font-weight:900;letter-spacing:0;white-space:nowrap;cursor:pointer;text-shadow:0 1px 2px #000;transition:filter 140ms ease,transform 140ms ease,color 140ms ease}
.party-mode-button[data-party-mode="연대기"],.party-mode-button[data-party-mode="바알런"],.party-mode-button[data-party-mode="디아런"],.party-mode-button[data-party-mode="카우런"],.party-mode-button[data-party-mode="버스런"]{font-size:clamp(10px,2.75cqw,20px)}
.party-mode-button:hover,.party-mode-button:focus-visible{background-image:url("assets/promo/party-ui/tab-unselected-particle.webp");color:#ffe3a4;filter:brightness(1.18);outline:1px solid rgba(240,202,118,.72);outline-offset:-2px}
.party-mode-button.active{background-image:url("assets/promo/party-ui/tab-selected-particle.webp");color:#ffe3a4;filter:drop-shadow(0 0 7px rgba(125,23,17,.72))}
.party-summary{position:absolute;z-index:6;top:55.85%;left:3.5%;right:3.5%;height:26.1%;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid rgba(151,105,48,.78);background:#050403 url("assets/promo/party-ui/panel-texture.webp") center/112px 112px;box-shadow:inset 0 0 0 2px rgba(0,0,0,.76),inset 0 0 22px rgba(0,0,0,.95),0 0 0 3px rgba(0,0,0,.72),0 3px 9px rgba(0,0,0,.7)}
.party-summary::after{content:"";position:absolute;inset:2px;z-index:10;border:1px solid rgba(209,160,78,.12);pointer-events:none}
.party-summary-row{position:relative;min-width:0;margin:0;padding:0;border:0;border-bottom:1px solid rgba(117,80,36,.72);background-color:rgba(3,3,3,.74);background-repeat:no-repeat;color:#d9b679;font-size:clamp(10px,2.25cqw,17px);letter-spacing:0;box-shadow:inset 0 1px rgba(232,186,100,.035),inset 0 -5px 12px rgba(0,0,0,.22)}.party-summary-row:last-child{border-bottom:0}
.party-summary-row>span:first-child,.party-summary-difficulty>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.party-summary-room{background-image:url("assets/promo/party-summary-ui/room-label.webp");background-position:2.5% center;background-size:auto 82%}.party-summary-password{background-image:url("assets/promo/party-summary-ui/password-label.webp");background-position:2.5% center;background-size:auto 82%}
.party-summary-input{position:absolute;left:35%;right:2.2%;top:14%;width:62.8%;height:72%;min-width:0;padding:0 3%;border:1px solid rgba(119,83,41,.74);border-radius:1px;background:linear-gradient(180deg,rgba(14,12,9,.9),rgba(2,2,2,.94));box-shadow:inset 0 0 9px rgba(0,0,0,.96),0 1px rgba(225,181,96,.07);color:#efd18f;font:800 inherit;letter-spacing:0;text-align:right;text-shadow:0 1px 2px #000;outline:0}
.party-summary-input:hover{border-color:rgba(225,181,96,.92)}.party-summary-input:focus{border-color:#e1b560;background:linear-gradient(180deg,rgba(23,18,11,.94),rgba(3,3,3,.96));box-shadow:inset 0 0 11px rgba(0,0,0,.94),0 0 0 2px rgba(225,181,96,.22),0 0 10px rgba(184,120,36,.2)}
.party-summary-difficulty{background-image:url("assets/promo/party-summary-ui/difficulty-icon.webp"),url("assets/promo/party-summary-ui/difficulty-text.webp");background-position:2.5% center,14.2% center;background-size:auto 84%,auto 42%}.party-summary-difficulty button{position:absolute;top:3%;bottom:3%;padding:0;border:0;color:transparent;font-size:0;cursor:pointer;background-color:transparent;background-image:var(--difficulty-off);background-position:center;background-size:100% 100%;background-repeat:no-repeat;transition:filter 140ms ease,transform 140ms ease}.party-summary-difficulty button[data-party-difficulty="보통"]{--difficulty-off:url("assets/promo/party-difficulty-ui/normal-off.webp");--difficulty-on:url("assets/promo/party-difficulty-ui/normal-on.webp");left:30.5%;width:22.5%}.party-summary-difficulty button[data-party-difficulty="악몽"]{--difficulty-off:url("assets/promo/party-difficulty-ui/nightmare-off.webp");--difficulty-on:url("assets/promo/party-difficulty-ui/nightmare-on.webp");left:53%;width:22.5%}.party-summary-difficulty button[data-party-difficulty="지옥"]{--difficulty-off:url("assets/promo/party-difficulty-ui/hell-off.webp");--difficulty-on:url("assets/promo/party-difficulty-ui/hell-on.webp");left:75.5%;right:.8%}.party-summary-difficulty button.active{background-image:var(--difficulty-on);filter:brightness(1.08)}.party-summary-difficulty button:hover,.party-summary-difficulty button:focus-visible{filter:brightness(1.2);transform:translateY(-1px);outline:0}
.party-summary-members{background-image:url("assets/promo/party-summary-ui/players-icon.webp"),url("assets/promo/party-summary-ui/players-text.webp");background-position:2.5% center,13.5% center;background-size:auto 86%,auto 43%}.party-summary-members>#partyMemberCount{position:absolute;left:34.5%;top:28%;width:11%;color:#efd18f;font-size:clamp(10px,2.15cqw,16px);font-weight:900;text-align:center;line-height:1.25;text-shadow:0 1px 2px #000}.party-summary-player-icons{position:absolute;left:46%;right:2%;top:13%;bottom:10%;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.25cqw}.party-summary-player-icons i{min-width:0;background:url("assets/promo/party-summary-ui/player-icon.webp") center/contain no-repeat;filter:grayscale(1) brightness(.48);opacity:.18}.party-summary-player-icons i.is-filled{filter:drop-shadow(0 0 3px rgba(133,193,32,.18));opacity:1}
.party-interactive-stage.is-placeholder .party-battle-scene{top:13.3%;height:45%;background-image:url("assets/promo/party-ui/mode-selection-custom.webp");background-size:cover;background-position:center;filter:brightness(.5) saturate(.82);opacity:.78}
.party-step-two{position:absolute;z-index:8;top:12.2%;left:3.35%;right:3.35%;height:55%;box-sizing:border-box;display:block;padding:0;overflow:hidden;border:1px solid rgba(131,87,35,.82);background:#050403 url("assets/promo/party-ui/panel-texture.webp") center/128px 128px;box-shadow:inset 0 0 0 3px rgba(0,0,0,.88),inset 0 0 30px rgba(0,0,0,.98),0 12px 30px rgba(0,0,0,.75)}
.party-step-two h3{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.party-realm-choices{position:absolute;left:1.5%;right:1.5%;top:2%;height:96%;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));background:#030303 url("assets/promo/party-ui/mode-selection-custom.webp") center/100% 100% no-repeat}.party-realm-choices button{min-width:0;padding:0;border:0;color:transparent;font-size:0;cursor:pointer;background:rgba(0,0,0,.18);box-shadow:inset 0 0 0 1px rgba(128,82,36,.18);transition:background 150ms ease,box-shadow 150ms ease,filter 150ms ease}.party-realm-choices button.active{background:rgba(0,0,0,.02);box-shadow:inset 0 0 0 2px rgba(210,45,31,.86),inset 0 0 22px rgba(191,31,20,.26);filter:brightness(1.08)}.party-realm-choices button:hover,.party-realm-choices button:focus-visible{background:rgba(117,18,12,.12);box-shadow:inset 0 0 0 2px rgba(232,176,85,.82);outline:0}
.party-step-next{position:absolute;z-index:9;left:11.6%;right:11.6%;bottom:5.7%;height:9.55%;padding:0;border:0;border-radius:0;background:transparent url("assets/promo/party-ui/next-step-action-matched.webp") center/100% 100% no-repeat;color:transparent;font-size:0;box-shadow:none;cursor:pointer;filter:drop-shadow(0 7px 8px rgba(0,0,0,.72));transition:filter 150ms ease,transform 150ms ease}
.party-step-next:hover,.party-step-next:focus-visible{filter:brightness(1.18);outline:2px solid rgba(255,224,145,.8);outline-offset:2px}.party-step-next:active{transform:translateY(1px);filter:brightness(.92)}
.party-slot-grid{position:absolute;z-index:7;top:55.15%;left:3.35%;right:3.35%;height:27.25%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:.42cqw}
.party-slot{display:grid;grid-template-columns:18% 70%;align-items:center;justify-content:space-between;min-width:0;padding:0 4%;border:1px solid rgba(142,98,39,.82);background:#070706 url("assets/promo/party-ui/panel-texture.webp") center/96px 96px;box-shadow:inset 0 0 0 2px rgba(0,0,0,.56),inset 0 0 12px rgba(0,0,0,.9),0 1px 0 rgba(207,157,74,.16)}
.party-slot-check{appearance:none;width:5.1cqw;height:5.1cqw;min-width:25px;min-height:25px;max-width:40px;max-height:40px;margin:0;border:0;background:transparent url("assets/promo/party-ui/checkbox-off.webp") center/100% 100% no-repeat;cursor:pointer}
.party-slot-check:checked{background-image:url("assets/promo/party-ui/checkbox-on.webp")}
.party-slot-check:hover,.party-slot-check:focus-visible{filter:brightness(1.18);outline:2px solid rgba(255,224,145,.76);outline-offset:2px}
.party-slot-select{appearance:none;width:100%;height:5.2cqw;min-height:31px;max-height:43px;min-width:0;padding:0 18% 0 10%;border:0;background:transparent url("assets/promo/party-ui/select.webp") center/100% 100% no-repeat;color:#f4d38c;color-scheme:dark;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:clamp(11px,2.05cqw,18px);font-weight:900;letter-spacing:0;cursor:pointer;text-align:center}
.party-slot-select:hover,.party-slot-select:focus-visible{filter:brightness(1.16);color:#ffe1a0;outline:2px solid rgba(255,224,145,.7);outline-offset:1px}
.party-slot-select option{background:#100d09;color:#f4d38c;font-weight:800}
.party-slot-select option:checked{background:#761a12;color:#fff3c4}
.party-slot-label{display:grid;place-items:center;width:100%;height:5.2cqw;min-height:31px;max-height:43px;min-width:0;border:1px solid rgba(154,109,45,.74);background:linear-gradient(180deg,rgba(29,25,19,.94),rgba(4,4,3,.98));box-shadow:inset 0 0 9px #000;color:#e3bf7c;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:clamp(11px,2.05cqw,18px);font-weight:900;letter-spacing:0;text-align:center}
.community-banner.is-joined{animation:communityReveal 520ms ease both}
.community-banner [hidden]{display:none}
@keyframes communityReveal{0%{filter:brightness(.68)}55%{filter:brightness(1.18)}100%{filter:brightness(1)}}

@media(min-width:1780px){
  .community-showcase{display:block;margin:0}
  .community-banner{position:absolute;z-index:12;top:164px;width:min(850px,calc((100vw - 1420px)/2 - 16px));height:933.59px;overflow:hidden}
  .community-banner-art{height:100%}
  .community-banner-guild img{height:100%;object-fit:fill}
  .party-interactive-stage.is-summary,.party-interactive-stage.is-controls{width:100%;height:100%;aspect-ratio:auto}
  .party-interactive-stage.is-summary .party-screen-surface,.party-interactive-stage.is-controls .party-screen-surface{width:100%;height:100%;aspect-ratio:auto}
  .community-banner-guild{left:8px}
  .community-banner-party{right:8px}
}
@media(max-width:900px){.community-showcase{grid-template-columns:minmax(0,360px)}.community-banner{width:100%;margin:0 auto}}
@media(max-width:1100px){.hero-layout{grid-template-columns:1fr}.promo-panel{max-width:680px;margin:0 auto;width:100%}}@media(max-width:900px){.inventory-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.footer-promo-grid{grid-template-columns:1fr}.footer-promo-grid label.full{grid-column:auto}}@media(max-width:700px){.header{align-items:flex-start;flex-direction:column}.header-actions{width:100%;justify-content:flex-end}.main{width:min(100% - 1rem,1380px);padding-top:1rem}.filter-section,.utility-section{display:grid;grid-template-columns:repeat(2,1fr)}.filter,.tool-button{min-width:0}.list{grid-template-columns:1fr}.card{min-height:auto}.remaining-row{grid-template-columns:1fr}.remaining-meta{justify-content:flex-start}.remaining-row .counter{width:100%;grid-template-columns:42px 1fr 42px}.remaining-row .counter input{width:100%}}@media(max-width:430px){.summary-grid,.filter-section,.utility-section{grid-template-columns:1fr}.progress-section,.search-section,.filter-section,.card{border-radius:12px}.inventory-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Collection cards use the supplied D2R item art in both collection modes. */
.collection-image-card{height:483.527px;min-height:483.527px;isolation:isolate}
.collection-card-backdrop{position:absolute;z-index:0;top:0;left:50%;width:min(298.488px,100%);height:483.527px;display:block;object-fit:contain;object-position:center;pointer-events:none;opacity:.38;filter:grayscale(1) brightness(.62) contrast(1.34) drop-shadow(0 18px 18px rgba(0,0,0,.48));transform:translateX(-50%);transform-origin:center;transition:opacity 420ms ease,filter 420ms ease,transform 520ms ease}
.collection-image-card>*:not(.collection-card-backdrop){position:relative;z-index:2}
.collection-image-card:not(.done)::after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,7,6,.04),rgba(8,7,6,.12) 58%,rgba(8,7,6,.42))}
.collection-image-card.done{height:483.527px;min-height:483.527px;background:radial-gradient(circle at 50% 42%,rgba(230,200,120,.13),transparent 48%),linear-gradient(180deg,rgba(45,12,9,.34),rgba(79,15,11,.58)),var(--red-dark);animation:none}
.collection-image-card.done::before{display:none}
.collection-image-card.done .collection-card-backdrop{opacity:1;filter:saturate(1.08) brightness(1.06) contrast(1.03) drop-shadow(0 20px 22px rgba(0,0,0,.5));transform:translateX(-50%)}
.collection-image-card.done:not(.is-identifying) .collection-card-backdrop{animation:none}
.collection-image-card.done>.card-header+details{margin:.2rem 0 .8rem}
.collection-image-card.is-identifying{animation:nasherCardIdentify 1.15s ease both}
.collection-image-card>.collection-identify-fx{position:absolute;z-index:6;inset:0;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(7,1fr);overflow:hidden;pointer-events:none}
.collection-identify-fx>span{min-width:0;min-height:0;background:linear-gradient(135deg,rgba(18,15,12,.98),rgba(2,2,2,.96));box-shadow:inset 0 0 0 1px rgba(230,200,120,.05);transform-origin:center;animation:nasherTileBreak .86s steps(5,end) forwards;animation-delay:var(--delay)}
.collection-identify-fx::before{content:"";position:absolute;z-index:2;inset:0;background:radial-gradient(circle at 50% 46%,rgba(230,200,120,.24),transparent 58%);opacity:0;animation:nasherIdentifyGlow 1.05s ease-out forwards;pointer-events:none}
.collection-identify-fx::after{content:"";position:absolute;z-index:3;left:8%;right:8%;top:8%;height:2px;background:linear-gradient(90deg,transparent,#fff0b6 24%,#c69a45 50%,#fff0b6 76%,transparent);box-shadow:0 0 12px rgba(230,200,120,.9),0 0 28px rgba(198,154,69,.42);opacity:0;animation:nasherIdentifyScan .82s .12s ease-in-out forwards;pointer-events:none}
@media(prefers-reduced-motion:reduce){.collection-image-card.is-identifying,.collection-identify-fx>span,.collection-identify-fx::before,.collection-identify-fx::after{animation-duration:.01ms!important;animation-delay:0ms!important}}

/* Keep set collection cards grouped under their shared set title. */
.set-group{grid-column:1/-1;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(198,154,69,.22)}
.set-group:first-child{margin-top:0;padding-top:0;border-top:0}
.set-group-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem;padding:1rem 1.15rem;border:1px solid rgba(30,83,5,.58);border-radius:12px;background:linear-gradient(135deg,rgba(30,83,5,.28),rgba(0,0,0,.18) 62%),rgba(20,18,13,.88);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 22px rgba(0,0,0,.22)}
.set-group-title-wrap{min-width:0}
.set-group-eyebrow{display:block;margin-bottom:.2rem;color:#9fb894;font-size:.72rem;font-weight:900;letter-spacing:.12em}
.set-group-title{margin:0;color:#c5e3b2;font-size:1.35rem;font-weight:900;line-height:1.3;word-break:keep-all;text-shadow:0 0 14px rgba(30,83,5,.32)}
.set-group-count{flex:0 0 auto;padding:.4rem .72rem;border:1px solid rgba(30,83,5,.7);border-radius:999px;color:#c5e3b2;background:rgba(30,83,5,.24);font-size:.82rem;font-weight:900;white-space:nowrap}
.set-group-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1rem}
@media(max-width:700px){.set-group-header{align-items:flex-start;flex-direction:column}.set-group-count{align-self:flex-start}.set-group-items{grid-template-columns:1fr}}

/* Keep the Nasher backdrop out of the flex flow so its standard card controls stay visible. */
.nasher-image-card>.collection-card-backdrop{position:absolute;z-index:0}

/* Smaller silhouettes keep compact accessory items from overpowering their cards. */
.collection-image-card.collection-image-card--compact .collection-card-backdrop{transform:translateX(-50%) scale(.5)}
.collection-image-card.done.collection-image-card--compact .collection-card-backdrop{transform:translateX(-50%) scale(.5)}
.collection-image-card.collection-image-card--medium .collection-card-backdrop{transform:translateX(-50%) scale(.8)}
.collection-image-card.done.collection-image-card--medium .collection-card-backdrop{transform:translateX(-50%) scale(.8)}

/* Detailed item modifiers */
.card details[open]{background:rgba(7,6,5,.86);border-color:rgba(230,200,120,.36);box-shadow:0 12px 28px rgba(0,0,0,.34)}
.card details[open] summary{border-bottom:1px solid rgba(230,200,120,.18)}
.stats{list-style:none;padding:.2rem .9rem 1rem;margin:0;max-height:310px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(230,200,120,.88) rgba(0,0,0,.18);scrollbar-gutter:stable}
.stats::-webkit-scrollbar{width:10px}
.stats::-webkit-scrollbar-track{border-radius:999px;background:linear-gradient(180deg,rgba(255,240,180,.07),rgba(0,0,0,.3));border:1px solid rgba(198,154,69,.16)}
.stats::-webkit-scrollbar-thumb{border-radius:999px;border:2px solid rgba(14,10,7,.92);background:linear-gradient(180deg,#f7df94 0%,#c69a45 45%,#7c4b18 100%)}
.stats::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#fff0b6 0%,#d9ad56 46%,#935b1d 100%)}
.stats li{letter-spacing:0}
.stats .stat-section{position:sticky;top:0;z-index:1;margin:.65rem 0 .45rem;padding:.52rem .6rem;color:#f0d884;background:linear-gradient(90deg,rgba(198,154,69,.22),rgba(16,13,9,.96) 70%);border-left:3px solid #c69a45;border-bottom:1px solid rgba(198,154,69,.24);font-size:.84rem;font-weight:900}
.stats .stat-section:first-child{margin-top:.35rem}
.stats .stat-option{position:relative;margin:.24rem 0;padding:.35rem .45rem .35rem 1rem;color:#ded8ca;line-height:1.48;word-break:keep-all}
.stats .stat-option::before{content:"";position:absolute;left:.28rem;top:.85rem;width:4px;height:4px;border-radius:50%;background:#8e877d;box-shadow:0 0 5px rgba(222,216,202,.28)}
.stats .stat-variable{color:#ffd0a3;background:linear-gradient(90deg,rgba(207,94,37,.16),transparent);border-left:2px solid #ef9259;padding-left:.85rem}
.stats .stat-variable::before{display:none}
.stat-variable-marker{display:inline-flex;align-items:center;vertical-align:middle;padding:.08rem .34rem;border:1px solid rgba(255,195,133,.68);border-radius:5px;color:#211008;background:#ffad68;font-size:.68rem;font-weight:950;line-height:1.3;box-shadow:0 0 10px rgba(239,146,89,.2)}
.stats .stat-empty{padding:.8rem;color:var(--muted);text-align:center}
body.light .card details[open]{background:rgba(255,252,245,.94)}
body.light .stats .stat-section{color:#6f4e12;background:linear-gradient(90deg,rgba(198,154,69,.23),rgba(255,252,245,.98) 72%)}
body.light .stats .stat-option{color:#3f3a32}
body.light .stats .stat-variable{color:#8a3d16;background:linear-gradient(90deg,rgba(207,94,37,.13),transparent)}

#chronicleSection,#guildSection,#partyJoinSection,#streamerSection{scroll-margin-top:120px}
@media(max-width:900px){.header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title actions" "tabs tabs";align-items:center}.title{grid-area:title;min-width:0}.header-actions{grid-area:actions;justify-content:flex-end}.header-tabs{position:static;grid-area:tabs;transform:none;width:min(100%,516px);min-width:0;height:55px;justify-self:center;margin-top:.75rem}.header-tab{height:43px;padding:0 .55rem;font-size:1rem}#chronicleSection,#guildSection,#partyJoinSection,#streamerSection{scroll-margin-top:178px}}
@media(max-width:430px){.header-tabs{height:50px;padding:4px}.header-tab{height:40px;font-size:.9rem}}

.header-tabs{grid-template-columns:repeat(4,200px);width:830px;min-width:830px;gap:10px;height:auto;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}.header-tab{width:200px;height:81px;padding:0;border:0;border-radius:0;background-color:transparent;background-image:var(--tab-inactive);background-position:center;background-size:contain;background-repeat:no-repeat;box-shadow:none;color:transparent;font-size:0;line-height:0;text-indent:-9999px;overflow:hidden}.header-tab[data-tab="chronicle"]{--tab-inactive:url("assets/header-tabs/chronicle-inactive.png");--tab-active:url("assets/header-tabs/chronicle-active.png")}.header-tab[data-tab="guild"]{--tab-inactive:url("assets/header-tabs/guild-inactive.png");--tab-active:url("assets/header-tabs/guild-active.png")}.header-tab[data-tab="party"]{--tab-inactive:url("assets/header-tabs/party-inactive.png");--tab-active:url("assets/header-tabs/party-active.png")}.header-tab[data-tab="streamer"]{--tab-inactive:url("assets/header-tabs/streamer-inactive.png");--tab-active:url("assets/header-tabs/streamer-active.png")}.header-tab:hover,.header-tab:focus-visible{background-color:transparent;background-image:var(--tab-inactive);box-shadow:none;filter:brightness(1.08);outline:0}.header-tab.active,.header-tab[aria-current="page"]{background-color:transparent;background-image:var(--tab-active);box-shadow:none;filter:none}body.light .header-tab,body.light .header-tab.active,body.light .header-tab[aria-current="page"]{background-color:transparent}
.header-tab[data-tab="chronicle"]{--tab-inactive:url("assets/header-tabs/chronicle-inactive.png?v=112-streamer-tab-assets")}
.header-tab[data-tab="streamer"]{--tab-inactive:url("assets/header-tabs/streamer-inactive.png?v=112-streamer-tab-assets");--tab-active:url("assets/header-tabs/streamer-active.png?v=112-streamer-tab-assets")}
@media(max-width:900px){.header-tabs{width:min(100%,830px);min-width:0;height:auto;padding:0;gap:10px}.header-tab{height:81px}}
@media(max-width:430px){.header-tabs{height:auto;padding:0;gap:7px}.header-tab{height:50px;font-size:.9rem}}
@media(max-width:660px){.header-tabs{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;min-width:0}.header-tab{width:100%;height:64px}}

.main-tab-panel[hidden]{display:none}.empty-tab-layout>.empty-tab-section,.empty-tab-layout>.empty-tab-banner{height:1100px;min-height:1100px}.empty-tab-layout>.empty-tab-section{padding:0}.empty-tab-layout>.empty-tab-banner{padding:0}.empty-tab-layout>.empty-tab-section::before,.empty-tab-layout>.empty-tab-banner::before{content:"";display:block;width:100%;height:100%}body:not(.is-chronicle-tab) .chronicle-content{display:none!important}
.empty-tab-layout>.community-banner.empty-tab-banner{position:relative;top:auto;left:auto;right:auto;display:block;width:100%;max-width:none;margin:0;overflow:hidden}.empty-tab-layout>.community-banner.empty-tab-banner::before{display:none}.empty-tab-layout>.community-banner.empty-tab-banner .community-banner-art{height:100%}.empty-tab-layout>.community-banner-guild.empty-tab-banner img{height:100%;object-fit:fill}.empty-tab-layout>.community-banner-party.empty-tab-banner .party-interactive-stage.is-summary,.empty-tab-layout>.community-banner-party.empty-tab-banner .party-interactive-stage.is-placeholder,.empty-tab-layout>.community-banner-party.empty-tab-banner .party-interactive-stage.is-controls,.empty-tab-layout>.community-banner-party.empty-tab-banner .party-screen-surface{width:100%;height:100%;aspect-ratio:auto}
#guildSection,#partyJoinSection,#streamerSection{grid-template-columns:minmax(0,1fr) 600px}
#guildSection>.guild-row-banner,#partyJoinSection>.party-join-row-banner{grid-column:1/-1;height:auto;min-height:230px;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-end;padding:22px 34px;text-align:right;overflow:hidden}
.streamer-ready-banner{display:flex;align-items:center;justify-content:center;text-align:center}
.empty-tab-layout>.streamer-ready-banner::before{display:none}
.streamer-ready-banner p{margin:0;padding:0 28px;color:#f5d78e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:clamp(1.75rem,2.7vw,3rem);font-weight:900;letter-spacing:0;text-shadow:0 0 18px rgba(238,191,95,.45),0 3px 5px #000}
.row-banner-actions{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:10px;width:min(100%,280px);min-width:0}
.row-banner-actions button{width:100%;min-width:0;max-width:100%;height:54px;flex:0 0 auto;padding:0 18px;border:1px solid rgba(181,121,46,.86);border-radius:3px;background:linear-gradient(180deg,#8d1d14,#4d0d09);color:#f5d78e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:.98rem;font-weight:900;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 16px rgba(0,0,0,.56),0 10px 20px rgba(0,0,0,.32);cursor:pointer}
.row-banner-actions [data-guild-row-action="promote"]{border-color:rgba(214,172,81,.9);background:linear-gradient(180deg,#786124,#35280c);color:#ffe7a3}
.row-banner-actions [data-guild-row-action="messenger"],.row-banner-actions [data-party-row-action="messenger"]{border-color:rgba(91,157,199,.9);background:linear-gradient(180deg,#285b78,#102b3d);color:#d9f2ff}
.row-banner-actions button:hover,.row-banner-actions button:focus-visible{filter:brightness(1.16);outline:2px solid rgba(255,224,145,.64);outline-offset:2px}
.row-banner-actions button:disabled{border-color:rgba(104,82,48,.55);background:linear-gradient(180deg,#211911,#0b0805);color:#76684f;box-shadow:inset 0 0 14px rgba(0,0,0,.62);cursor:not-allowed;filter:grayscale(.35)}
@media(max-width:1100px){#guildSection,#partyJoinSection,#streamerSection{grid-template-columns:1fr}}
@media(max-width:760px){#guildSection>.guild-row-banner,#partyJoinSection>.party-join-row-banner{min-height:210px;justify-content:center;padding:18px}.row-banner-actions{width:100%}}

.site-legal-footer{width:min(100%,1500px);box-sizing:border-box;margin:2.2rem auto 0;padding:0 clamp(10px,2vw,24px) 2rem;color:rgba(226,203,155,.78);font-size:.88rem;line-height:1.7;letter-spacing:0;text-align:center}
.fanmade-static-text{margin:0;color:rgba(226,203,155,.74)}
.site-copyright-text{margin:.25rem 0 0;color:rgba(226,203,155,.64);font-size:.82rem}
.legal-text-links{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:7px}
.legal-text-links span{color:rgba(199,163,94,.5)}
.legal-text-links button{appearance:none;padding:0;border:0;background:transparent;color:#d8b96f;font:inherit;font-weight:800;text-decoration:underline;text-decoration-color:rgba(216,185,111,.42);text-underline-offset:4px;cursor:pointer}
.legal-text-links button:hover,.legal-text-links button:focus-visible{color:#ffe2a0;text-decoration-color:currentColor;outline:0}
body.legal-policy-open{overflow:hidden}
.legal-policy-overlay{position:fixed;z-index:1700;inset:0;display:grid;place-items:center;padding:clamp(12px,3vw,32px)}
.legal-policy-overlay[hidden]{display:none}
.legal-policy-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(0,0,0,.82);cursor:default;backdrop-filter:blur(5px)}
.legal-policy-modal{position:relative;z-index:1;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(920px,100%);max-height:min(88vh,900px);overflow:hidden;border:1px solid rgba(193,138,59,.7);border-radius:5px;background:linear-gradient(145deg,#17110b,#080604 74%);color:#ded0b2;box-shadow:0 30px 80px rgba(0,0,0,.78),inset 0 0 42px rgba(0,0,0,.42);outline:0}
.legal-policy-modal-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid rgba(172,121,51,.48);background:linear-gradient(180deg,rgba(77,49,19,.7),rgba(14,10,7,.94))}
.legal-policy-modal-header span{display:block;color:#a9874f;font-size:.68rem;font-weight:900;letter-spacing:.16em}
.legal-policy-modal-header h2{margin:3px 0 0;color:#f1d28e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:clamp(1.2rem,2.4vw,1.65rem)}
.legal-policy-close{min-width:62px;height:36px;padding:0 14px;border:1px solid rgba(187,133,57,.72);border-radius:3px;background:linear-gradient(180deg,#5d1a13,#280805);color:#f4d691;font-weight:900;cursor:pointer}
.legal-policy-close:hover,.legal-policy-close:focus-visible{border-color:#e5b95f;color:#ffe9ae;outline:2px solid rgba(229,185,95,.28);outline-offset:2px}
.legal-policy-modal-body{min-height:0;overflow:auto;padding:8px clamp(18px,4vw,38px) 30px;scrollbar-width:thin;scrollbar-color:#9e6d2d #090604}
.legal-policy-modal-body::-webkit-scrollbar{width:9px}.legal-policy-modal-body::-webkit-scrollbar-track{background:#090604}.legal-policy-modal-body::-webkit-scrollbar-thumb{border:2px solid #090604;border-radius:999px;background:#9e6d2d}
.legal-policy-modal-body article>section{padding:15px 0;border-bottom:1px solid rgba(150,109,53,.22)}
.legal-policy-modal-body article>section:last-child{border-bottom:0}
.legal-policy-effective{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0;padding:21px 0 10px;color:#bba77d}
.legal-policy-effective strong{color:#f1d28e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.12rem}.legal-policy-effective span{font-size:.76rem}
.legal-policy-modal-body h3{margin:0 0 8px;color:#e8c77c;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:.98rem}
.legal-policy-modal-body p{margin:0;color:#d5c8ac;font-size:.88rem;line-height:1.82;word-break:keep-all}
.legal-policy-modal-body ul{display:grid;gap:7px;margin:0;padding-left:1.2rem;color:#d5c8ac;font-size:.88rem;line-height:1.72}
.legal-policy-modal-body li::marker{color:#bd8d42}
.legal-policy-modal-body a{color:#f2ca73;text-underline-offset:3px}
body.light .site-legal-footer,body.light .fanmade-static-text,body.light .site-copyright-text{color:#6b5537}
body.light .legal-text-links button{color:#76531f}
body.light .legal-policy-backdrop{background:rgba(31,23,15,.66)}
body.light .legal-policy-modal{border-color:rgba(119,78,29,.55);background:linear-gradient(145deg,#fffaf0,#eee2c9);color:#493923}
body.light .legal-policy-modal-header{border-color:rgba(119,78,29,.32);background:linear-gradient(180deg,#ead8b4,#d4be92)}
body.light .legal-policy-modal-header h2,body.light .legal-policy-effective strong,body.light .legal-policy-modal-body h3{color:#5d3f18}
body.light .legal-policy-modal-header span,body.light .legal-policy-effective,body.light .legal-policy-modal-body p,body.light .legal-policy-modal-body ul{color:#5e4a30}
@media(max-width:620px){.site-legal-footer{padding-inline:0}.legal-policy-overlay{padding:8px}.legal-policy-modal{max-height:calc(100vh - 16px)}.legal-policy-modal-header{padding:14px 15px}.legal-policy-modal-body{padding:5px 17px 24px}.legal-policy-effective{display:grid;gap:3px}.legal-policy-modal-body p,.legal-policy-modal-body ul{font-size:.83rem;word-break:normal}}

/* Login portal artwork */
.auth-brand-mark{width:96px;height:140px;margin:-14px auto 5px;border:0;border-radius:0;background:transparent;box-shadow:none}
.auth-brand-mark img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 13px rgba(255,174,28,.38)) drop-shadow(0 8px 14px rgba(0,0,0,.72))}
@media(max-width:430px),(max-height:760px){.auth-brand-mark{width:80px;height:118px;margin:-12px auto 5px}}

/* Image-backed collection mode tabs */
.mode-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.45rem,1.4vw,1rem);width:100%;margin:0 auto 2.1rem;padding:.2rem 0}
.mode-tab{--tab-inactive:none;--tab-active:none;appearance:none;display:block;width:100%;min-width:0;min-height:0;aspect-ratio:15/7;padding:0;border:0;border-radius:0;overflow:visible;background-color:transparent;background-image:var(--tab-inactive);background-position:center;background-size:contain;background-repeat:no-repeat;color:transparent;font-size:0;line-height:0;text-shadow:none;box-shadow:none;filter:drop-shadow(0 8px 9px rgba(0,0,0,.55));transform:translateY(0);transition:transform 170ms ease,filter 170ms ease}
.mode-tab::before,.mode-tab::after{display:none}
.mode-tab[data-mode="uniques"]{--tab-inactive:url("assets/mode-tabs/unique-inactive.png");--tab-active:url("assets/mode-tabs/unique-active.png")}
.mode-tab[data-mode="sets"]{--tab-inactive:url("assets/mode-tabs/set-inactive.png");--tab-active:url("assets/mode-tabs/set-active.png")}
.mode-tab[data-mode="runewords"]{--tab-inactive:url("assets/mode-tabs/runeword-inactive.png");--tab-active:url("assets/mode-tabs/runeword-active.png")}
.mode-tab:hover,.mode-tab:focus-visible{border:0;background-color:transparent;background-image:var(--tab-inactive);filter:brightness(1.08) drop-shadow(0 12px 12px rgba(0,0,0,.62));transform:translateY(-3px);outline:none}
.mode-tab:focus-visible{filter:brightness(1.1) drop-shadow(0 0 7px rgba(255,226,151,.88)) drop-shadow(0 12px 12px rgba(0,0,0,.62))}
.mode-tab.active,.mode-tab.active:hover,.mode-tab.active:focus-visible{border:0;background-color:transparent;background-image:var(--tab-active);background-position:center;background-size:contain;background-repeat:no-repeat;color:transparent;box-shadow:none;filter:brightness(1.03) drop-shadow(0 10px 13px rgba(0,0,0,.62));transform:translateY(-2px)}
@media(max-width:700px){.mode-tabs{grid-template-columns:1fr;gap:.1rem;max-width:430px}.mode-tab{aspect-ratio:15/6.5}}

/* Keep recruitment cards in a dedicated right rail, outside the collection flow. */
.main{display:block}
.main>*{min-width:0}
.party-listing-feed,.guild-listing-feed{width:541px;margin-top:1rem;display:grid;gap:1rem}
.party-listing-feed{justify-items:end}.guild-listing-feed{justify-items:start}
.party-listing-feed[hidden],.guild-listing-feed[hidden]{display:none}
.party-listing-particle{position:relative;width:541px;height:243px;box-sizing:border-box;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:0 14px 28px rgba(0,0,0,.48)}
.party-listing-portrait{position:absolute;z-index:1;left:0;top:0;width:194px;height:243px;box-sizing:border-box;background-color:#050504;background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px rgba(130,87,36,.72),inset -15px 0 22px rgba(0,0,0,.62)}
.party-listing-portrait[data-party-realm="하드코어 래더"]{background-size:100% 100%}
.party-listing-portrait[data-party-mode="연대기"]{background-image:url("assets/promo/party-portraits/chronicle.webp")}
.party-listing-portrait[data-party-mode="스피드 연대기"]{background-image:url("assets/promo/party-portraits/speed-chronicle.webp")}
.party-listing-portrait[data-party-mode="바알런"]{background-image:url("assets/promo/party-portraits/baal.webp")}
.party-listing-portrait[data-party-mode="디아런"]{background-image:url("assets/promo/party-portraits/diablo.webp")}
.party-listing-portrait[data-party-mode="카우런"]{background-image:url("assets/promo/party-portraits/cow.webp")}
.party-listing-portrait[data-party-mode="버스런"]{background-image:url("assets/promo/party-portraits/bus.webp")}
.party-listing-card-surface{position:absolute;z-index:2;right:0;top:0;width:347px;height:243px;overflow:hidden;background:transparent url("assets/promo/party-listing-ui/card-background.webp") center/100% 100% no-repeat;box-shadow:-2px 0 0 rgba(104,68,29,.78)}
.party-listing-header{position:absolute;z-index:6;left:125px;top:212px;width:98px;height:30px;display:flex;align-items:center;justify-content:center;background:transparent url("assets/promo/party-listing-ui/badge-background.webp") center/100% 100% no-repeat;pointer-events:none}
.party-listing-header h2,.party-listing-badges>span:not(.party-listing-countdown){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.party-listing-badges{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.party-listing-badges .party-listing-countdown{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:20px;padding:0;color:#b89458;background:transparent;border:0;font-size:.64rem;font-weight:900;font-variant-numeric:tabular-nums;line-height:1;text-shadow:0 1px 2px #000}.party-listing-badges .party-listing-countdown.is-urgent{color:#ff8d78;animation:partyCountdownPulse 1s ease-in-out infinite}@keyframes partyCountdownPulse{50%{filter:brightness(1.4)}}
.party-listing-badges .party-listing-countdown{min-width:62px;padding:0 6px;border:1px solid rgba(197,151,67,.52);border-radius:999px;background:rgba(3,2,1,.82);color:#f0cb79;box-shadow:inset 0 0 8px rgba(0,0,0,.72)}
.party-listing-meta{position:absolute;z-index:2;inset:0}.party-listing-meta>div{position:absolute;box-sizing:border-box;margin:0;padding:0;border:0;background-color:transparent}.party-listing-meta span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.party-listing-meta strong{position:absolute;display:block;overflow:hidden;color:#c9a66b;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:.7rem;font-weight:800;letter-spacing:0;line-height:1;text-align:right;text-overflow:ellipsis;text-shadow:0 1px 2px #000;white-space:nowrap}
.party-listing-room{left:17px;top:19px;width:309px;height:36px;background-image:url("assets/promo/party-listing-ui/room-row.webp");background-position:left top;background-size:80px 36px;background-repeat:no-repeat}.party-listing-room strong{right:6px;top:13px;width:211px}
.party-listing-password{left:17px;top:55px;width:309px;height:36px;background-image:url("assets/promo/party-listing-ui/password-row.webp");background-position:left top;background-size:85px 36px;background-repeat:no-repeat}.party-listing-password strong{right:6px;top:13px;width:206px}
.party-listing-difficulty{left:17px;top:86px;width:309px;height:49px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:1px;box-sizing:border-box;background:transparent;box-shadow:none}.party-listing-difficulty::before{content:"";position:absolute;z-index:1;left:0;top:0;width:102px;height:49px;background:url("assets/promo/party-listing-ui/difficulty-row.webp") left top/309px 49px no-repeat;pointer-events:none}.party-difficulty-tile{position:relative;min-width:0;overflow:visible;clip-path:none;white-space:normal;background-position:center;background-size:100% 100%;background-repeat:no-repeat}.party-listing-meta .party-difficulty-tile{position:relative;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal}.party-difficulty-tile[data-party-difficulty="보통"]{--difficulty-off:url("assets/promo/party-difficulty-ui/normal-off.webp");--difficulty-on:url("assets/promo/party-difficulty-ui/normal-on.webp")}.party-difficulty-tile[data-party-difficulty="악몽"]{--difficulty-off:url("assets/promo/party-difficulty-ui/nightmare-off.webp");--difficulty-on:url("assets/promo/party-difficulty-ui/nightmare-on.webp")}.party-difficulty-tile[data-party-difficulty="지옥"]{--difficulty-off:url("assets/promo/party-difficulty-ui/hell-off.webp");--difficulty-on:url("assets/promo/party-difficulty-ui/hell-on.webp")}.party-difficulty-tile{background-image:var(--difficulty-off)}.party-difficulty-tile.is-active{background-image:var(--difficulty-on)}
.party-listing-difficulty.is-single{display:flex;align-items:center;justify-content:flex-end;gap:0;padding:1px 4px}.party-listing-difficulty.is-single .party-difficulty-tile{flex:0 0 88px;height:47px}
.party-listing-players{left:17px;top:130px;width:309px;height:38px;background-image:url("assets/promo/party-listing-ui/players-icon.webp"),url("assets/promo/party-listing-ui/players-text.webp");background-position:0 0,31px 11px;background-size:35px 38px,57px 22px;background-repeat:no-repeat}.party-listing-players strong{left:102px;top:13px;width:32px;text-align:center}.party-listing-player-icons{position:absolute;left:143px;top:6px;width:166px;height:26px;display:grid;grid-template-columns:repeat(8,20px);gap:1px}.party-listing-player-icons .party-listing-player{position:relative;width:20px;height:26px;overflow:visible;clip-path:none;background:url("assets/promo/party-listing-ui/player-icon.webp") center/24px 26px no-repeat;filter:grayscale(1);opacity:.14}.party-listing-player-icons .party-listing-player.is-filled{filter:none;opacity:1}
.party-listing-options{display:none}
.party-listing-join{position:absolute;z-index:4;left:41px;top:169px;width:265px;height:54px;padding:0;border:0;border-radius:0;background:transparent url("assets/promo/party-listing-ui/join-button.webp") center/100% 100% no-repeat;color:transparent;font-size:0;box-shadow:none;cursor:pointer;transition:filter 150ms ease,transform 150ms ease}.party-listing-join:hover,.party-listing-join:focus-visible{filter:brightness(1.18) drop-shadow(0 0 6px rgba(230,166,65,.42));outline:0}.party-listing-join:active{transform:translateY(1px);filter:brightness(.9)}
body.light .party-listing-card-surface{background:transparent url("assets/promo/party-listing-ui/card-background.webp") center/100% 100% no-repeat}.party-listing-particle.is-created{animation:partyListingReveal 460ms ease both}@keyframes partyListingReveal{0%{opacity:0;transform:translateY(12px);filter:brightness(.65)}60%{filter:brightness(1.12)}100%{opacity:1;transform:translateY(0);filter:brightness(1)}}

/* Three-step party participation flow: overview, slot choice, and live lobby. */
body.party-join-open{overflow:hidden}
.party-join-flow{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px}
.party-join-flow[hidden]{display:none}
.party-join-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(0,0,0,.82);backdrop-filter:blur(4px);cursor:pointer}
.party-join-panel{position:relative;width:min(920px,calc(100vw - 40px));height:min(760px,calc(100vh - 40px));min-height:580px;display:grid;grid-template-rows:118px minmax(0,1fr) 82px;overflow:hidden;border:1px solid #9b6d2c;border-radius:6px;background:#080706 url("assets/promo/party-ui/panel-texture.webp") center/160px 160px;box-shadow:inset 0 0 0 4px #020202,inset 0 0 0 6px rgba(159,111,43,.42),inset 0 0 48px #000,0 24px 70px rgba(0,0,0,.82);color:#e5c581}
.party-join-panel::before{content:"";position:absolute;z-index:0;inset:9px;pointer-events:none;border:1px solid rgba(191,139,57,.34);box-shadow:inset 0 0 28px rgba(0,0,0,.8)}
.party-join-heading{position:relative;z-index:2;display:grid;align-content:center;justify-items:center;padding:32px 80px 12px;border-bottom:1px solid rgba(154,107,43,.5);background:linear-gradient(180deg,rgba(30,25,18,.94),rgba(8,7,6,.88))}
.party-join-heading h2{margin:0;color:#f0d28f;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.65rem;letter-spacing:0;text-shadow:0 2px 3px #000}
.party-join-heading p{margin:.35rem 0 0;color:#a9946c;font-size:.82rem;font-weight:800;letter-spacing:0}
.party-join-close{position:absolute;top:21px;right:22px;width:42px;height:42px;padding:0;border:1px solid rgba(183,131,52,.74);border-radius:4px;background:#100d09;color:#e8c67e;font-size:1.75rem;line-height:1;cursor:pointer}.party-join-close:hover,.party-join-close:focus-visible{color:#fff0b6;background:#54130e;outline:2px solid rgba(255,224,145,.72);outline-offset:2px}
.party-join-progress{position:absolute;top:18px;left:50%;display:flex;align-items:center;transform:translateX(-50%)}
.party-join-progress span{display:grid;place-items:center;width:24px;height:24px;border:1px solid #66502d;border-radius:50%;background:#0a0907;color:#78694c;font-size:.72rem;font-weight:900}.party-join-progress span.is-active{border-color:#e1b45d;color:#fff0b6;background:#74170f;box-shadow:0 0 12px rgba(203,50,33,.45)}.party-join-progress span.is-complete{border-color:#8fb15c;color:#d9f1b0;background:#243618}.party-join-progress i{width:48px;height:1px;background:#55421f}.party-join-progress span.is-complete+i{background:#749647}
.party-join-step{position:relative;z-index:2;min-height:0;margin:16px 20px;padding:18px;border:1px solid rgba(142,97,39,.72);border-radius:4px;background:rgba(3,3,3,.72);box-shadow:inset 0 0 24px rgba(0,0,0,.8)}
.party-join-step[hidden]{display:none}
.party-join-overview{display:grid;grid-template-columns:minmax(240px,34%) minmax(0,1fr);gap:18px}
.party-join-portrait{min-width:0;min-height:0;border:1px solid rgba(157,108,43,.78);background-color:#050504;background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:inset 0 0 20px #000,0 9px 22px rgba(0,0,0,.52)}
.party-join-portrait[data-party-mode="연대기"]{background-image:url("assets/promo/party-portraits/chronicle.webp")}.party-join-portrait[data-party-mode="스피드 연대기"]{background-image:url("assets/promo/party-portraits/speed-chronicle.webp")}.party-join-portrait[data-party-mode="바알런"]{background-image:url("assets/promo/party-portraits/baal.webp")}.party-join-portrait[data-party-mode="디아런"]{background-image:url("assets/promo/party-portraits/diablo.webp")}.party-join-portrait[data-party-mode="카우런"]{background-image:url("assets/promo/party-portraits/cow.webp")}.party-join-portrait[data-party-mode="버스런"]{background-image:url("assets/promo/party-portraits/bus.webp")}
.party-join-details{display:grid;grid-template-rows:repeat(5,minmax(0,1fr));min-width:0;margin:0;border:1px solid rgba(121,81,34,.58);background:#050403}.party-join-details>div{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;min-width:0;padding:0 20px;border-bottom:1px solid rgba(104,70,33,.52)}.party-join-details>div:last-child{border-bottom:0}.party-join-details dt{color:#99835c;font-weight:800}.party-join-details dd{min-width:0;margin:0;overflow:hidden;color:#efd28f;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.05rem;font-weight:900;text-align:right;text-overflow:ellipsis;white-space:nowrap}
.party-join-difficulty{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:4px;width:min(100%,378px);margin-left:auto}.party-join-difficulty .party-difficulty-tile{width:100%;aspect-ratio:1688/932;filter:drop-shadow(0 3px 5px rgba(0,0,0,.6))}
.party-join-selection{display:block;padding:22px}.party-join-slot-grid{height:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:10px}.party-join-slot{display:grid;grid-template-columns:50px minmax(0,1fr) 92px;align-items:center;gap:12px;min-width:0;padding:10px 14px;border:1px solid rgba(148,102,41,.76);border-radius:3px;background:#090806;color:#ddbc78;cursor:pointer;text-align:left;transition:filter 140ms ease,border-color 140ms ease,background 140ms ease}.party-join-slot:hover,.party-join-slot:focus-visible{border-color:#e0b35d;background:#17120c;filter:brightness(1.12);outline:0}.party-join-slot.is-selected{border-color:#e2bd6d;background:#5d160f;box-shadow:inset 0 0 18px rgba(190,39,25,.42),0 0 12px rgba(185,117,36,.2)}.party-join-slot:disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.48}.party-join-slot-marker{width:34px;height:34px;background:url("assets/promo/party-ui/checkbox-off.webp") center/contain no-repeat}.party-join-slot.is-selected .party-join-slot-marker{background-image:url("assets/promo/party-ui/checkbox-on.webp")}.party-join-slot strong{min-width:0;overflow:hidden;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.party-join-slot small{color:#806f51;font-size:.72rem;font-weight:800;text-align:right}.party-join-slot.is-selected small{color:#f1d79c}
.party-join-lobby{display:grid;grid-template-columns:minmax(270px,34%) minmax(0,1fr);gap:14px}.party-join-roster,.party-join-chat{min-width:0;min-height:0;display:grid;overflow:hidden;border:1px solid rgba(125,86,36,.62);border-radius:3px;background:#050403}.party-join-roster{grid-template-rows:48px minmax(0,1fr)}.party-join-chat{grid-template-rows:48px minmax(0,1fr) 58px}.party-join-roster>header,.party-join-chat>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid rgba(118,79,33,.56);background:#0e0b08}.party-join-roster h3,.party-join-chat h3{margin:0;color:#e6c57e;font-size:.88rem;letter-spacing:0}.party-join-roster header strong{color:#8fcd67}.party-join-chat header span{color:#786a50;font-size:.66rem}.party-join-participant-list{min-height:0;display:grid;grid-template-rows:repeat(8,minmax(0,1fr));overflow:hidden}.party-join-participant{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px;min-height:0;padding:0 12px;border-bottom:1px solid rgba(84,58,29,.42);color:#615a4c}.party-join-participant:last-child{border-bottom:0}.party-join-participant strong{overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.party-join-participant span{overflow:hidden;font-size:.7rem;text-align:right;text-overflow:ellipsis;white-space:nowrap}.party-join-participant.is-occupied{color:#cbb077;background:rgba(55,42,24,.3)}.party-join-participant.is-current{color:#d8f2a7;background:rgba(45,79,25,.34);box-shadow:inset 3px 0 #7caa4c}
.party-join-chat-messages{min-height:0;padding:10px 12px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}.party-chat-message{margin:0 0 9px;padding:8px 10px;border-left:2px solid #9b6d2c;background:rgba(27,22,15,.72)}.party-chat-message>div{display:flex;justify-content:space-between;gap:12px}.party-chat-message strong{color:#d8bd82;font-size:.72rem}.party-chat-message time{color:#73664e;font-size:.64rem}.party-chat-message p{margin:4px 0 0;color:#ddd5c5;font-size:.82rem;line-height:1.42;overflow-wrap:anywhere}.party-chat-message.is-system{border-left-color:#668d42;background:rgba(32,52,23,.3)}.party-chat-message.is-system strong,.party-chat-message.is-system p{color:#a9c88b}.party-chat-message.is-owner{border-left-color:#d6a94f;background:linear-gradient(90deg,rgba(103,24,15,.46),rgba(27,22,15,.78));box-shadow:inset 0 0 0 1px rgba(214,169,79,.16)}.party-chat-message.is-owner strong{color:#ffd778;text-shadow:0 0 7px rgba(214,169,79,.28)}
.party-join-chat-form{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:8px;padding:9px;border-top:1px solid rgba(118,79,33,.56);background:#0b0907}.party-join-chat-form input{min-width:0;padding:0 12px;border:1px solid #61451f;border-radius:3px;background:#020202;color:#ead7ad;font:700 .8rem inherit;outline:0}.party-join-chat-form input:focus{border-color:#d6a94f;box-shadow:0 0 0 2px rgba(214,169,79,.16)}.party-join-chat-form button{border:1px solid #b0782d;border-radius:3px;background:#68160f;color:#f3d58c;font-weight:900;cursor:pointer}.party-join-chat-form button:hover,.party-join-chat-form button:focus-visible{background:#8a1e14;outline:2px solid rgba(255,224,145,.64);outline-offset:1px}
.party-join-actions{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 22px 18px;border-top:1px solid rgba(154,107,43,.42);background:#080706}.party-join-actions button{height:50px;padding:0 34px;border:1px solid #a7722c;border-radius:3px;color:#f0d08a;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:.94rem;font-weight:900;cursor:pointer}.party-join-primary{min-width:280px;background:#76170f;box-shadow:inset 0 0 16px rgba(0,0,0,.42)}.party-join-secondary{background:#15110c}.party-join-actions button:hover,.party-join-actions button:focus-visible{filter:brightness(1.2);outline:2px solid rgba(255,224,145,.68);outline-offset:2px}
.party-join-slot{position:relative}.party-join-slot-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.party-join-slot.is-disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.48}.party-join-role-select{width:100%;min-width:0;height:38px;padding:0 34px 0 12px;border:1px solid rgba(157,110,46,.76);border-radius:2px;background:#0b0907 url("assets/promo/party-ui/select.webp") center/100% 100% no-repeat;color:#f1d18c;color-scheme:dark;font:900 .92rem "Noto Serif KR","Nanum Myeongjo",serif;letter-spacing:0;text-align:center;cursor:pointer}.party-join-role-select:hover,.party-join-role-select:focus-visible{border-color:#e0b35d;color:#ffe8ae;outline:2px solid rgba(255,224,145,.56);outline-offset:1px}.party-join-role-select:disabled{cursor:not-allowed}.party-join-role-select option{background:#100d09;color:#f4d38c}.party-join-role-select option:checked{background:#761a12;color:#fff3c4}
.party-join-participant.is-kickable{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 50px}.party-join-kick{height:26px;padding:0 7px;border:1px solid #8f3528;border-radius:2px;background:#3f100c;color:#efb5a1;font-size:.68rem;font-weight:900;cursor:pointer}.party-join-kick:hover,.party-join-kick:focus-visible{background:#871b12;color:#fff0d0;outline:1px solid #e1b45d;outline-offset:1px}
.party-listing-live.is-full{border-color:#9d5c35!important;background:#4e1711!important;color:#ffd2ad!important}.party-listing-particle.is-full{filter:saturate(.82)}.party-listing-join[aria-disabled="true"]{filter:grayscale(.35);opacity:.78}
.guild-listing-particle{position:relative;width:541px;height:243px;box-sizing:border-box;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:#050504;box-shadow:0 14px 28px rgba(0,0,0,.48);animation:partyListingReveal 460ms ease both}
.guild-listing-portrait{position:absolute;z-index:1;left:0;top:0;width:194px;height:243px;background:#050504 url("assets/promo/guild-promotion.webp") center 16%/cover no-repeat;box-shadow:inset 0 0 0 1px rgba(130,87,36,.72),inset -15px 0 22px rgba(0,0,0,.62)}
.guild-listing-card-surface{position:absolute;z-index:2;right:0;top:0;width:347px;height:243px;overflow:hidden;background:#050504 url("assets/promo/party-listing-ui/card-background.webp") center/100% 100% no-repeat;box-shadow:-2px 0 0 rgba(104,68,29,.78)}
.guild-listing-header{position:absolute;left:18px;right:18px;top:14px;height:30px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(122,82,35,.62)}
.guild-listing-header h2{margin:0;color:#e7c77f;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:.92rem;letter-spacing:0;text-shadow:0 1px 2px #000}
.guild-listing-countdown{color:#b89458;font-size:.68rem;font-weight:900;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000}.guild-listing-countdown.is-urgent{color:#ff8d78;animation:partyCountdownPulse 1s ease-in-out infinite}
.guild-listing-meta{position:absolute;left:18px;right:18px;top:50px;margin:0}.guild-listing-meta>div{display:grid;grid-template-columns:84px minmax(0,1fr);align-items:center;height:37px;border-bottom:1px solid rgba(94,64,31,.48)}.guild-listing-meta dt{color:#917a50;font-size:.7rem;font-weight:900}.guild-listing-meta dd{min-width:0;margin:0;overflow:hidden;color:#d6b875;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:.72rem;font-weight:800;text-align:right;text-overflow:ellipsis;white-space:nowrap}
.guild-listing-contact{position:absolute;left:41px;bottom:17px;display:flex;align-items:center;justify-content:center;width:265px;height:52px;box-sizing:border-box;border:1px solid #af792f;border-radius:2px;background:linear-gradient(180deg,#8d1d14,#4d0d09);color:#f2d18b;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1rem;font-weight:900;text-decoration:none;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 16px rgba(0,0,0,.56)}.guild-listing-contact:hover,.guild-listing-contact:focus-visible{filter:brightness(1.18);outline:2px solid rgba(255,224,145,.68);outline-offset:-3px}
@media(max-width:760px){.party-join-flow{padding:8px}.party-join-panel{width:calc(100vw - 16px);height:calc(100vh - 16px);min-height:0;grid-template-rows:108px minmax(0,1fr) 72px}.party-join-overview{grid-template-columns:34% minmax(0,1fr);gap:10px;margin:10px;padding:10px}.party-join-details>div{grid-template-columns:92px minmax(0,1fr);padding:0 10px}.party-join-details dd{font-size:.82rem}.party-join-selection{margin:10px;padding:10px}.party-join-slot-grid{gap:6px}.party-join-slot{grid-template-columns:32px minmax(0,1fr);padding:6px}.party-join-slot-marker{width:26px;height:26px}.party-join-slot small{display:none}.party-join-lobby{grid-template-columns:1fr;grid-template-rows:43% minmax(0,1fr);gap:8px;margin:10px;padding:10px}.party-join-participant-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr))}.party-join-actions button{height:44px;padding:0 18px}.party-join-primary{min-width:190px}}
@media(min-width:1780px){
  .main{width:calc(100% - 46px);max-width:none}
  .main>*{width:min(1380px,100%);margin-left:auto;margin-right:auto}
  .main>.guild-listing-feed{position:absolute;z-index:13;top:calc(164px + 933.59px + 16px);left:8px;width:541px;margin:0}
  .main>.party-listing-feed{position:absolute;z-index:13;top:calc(164px + 933.59px + 16px);right:8px;width:541px;margin:0}
}
@media(max-width:1779px){.party-listing-feed,.guild-listing-feed{display:none!important}}
#guildSection>#guildCreationFeed,#partyJoinSection>#partyListingFeed{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(2,681px);justify-content:center;align-items:start;gap:18px;width:100%;max-width:none;margin:0;padding:0}
#guildSection>#guildCreationFeed[hidden],
#partyJoinSection>#partyListingFeed[hidden]{display:none!important}
#guildSection>#guildCreationFeed .guild-creation-particle,
#partyJoinSection>#partyListingFeed .party-listing-particle{width:681px;height:318px}
#guildSection>#guildCreationFeed .guild-creation-particle{min-height:318px;box-sizing:border-box;overflow:hidden;border:1px solid rgba(145,96,39,.82);border-radius:6px;background-color:#0a0806;background-image:linear-gradient(90deg,rgba(4,3,2,.8),rgba(6,5,3,.45) 50%,rgba(4,3,2,.76)),linear-gradient(180deg,rgba(6,4,3,.18),rgba(4,3,2,.84)),var(--guild-card-background);background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:inset 0 0 42px rgba(0,0,0,.78),0 12px 28px rgba(0,0,0,.36);animation:partyListingReveal 460ms ease both}
#partyJoinSection>#partyListingFeed .party-listing-portrait{width:244px;height:318px}
#partyJoinSection>#partyListingFeed .party-listing-card-surface{width:437px;height:318px}
#partyJoinSection>#partyListingFeed .party-listing-header{left:158px;top:277px;width:124px;height:40px}
#partyJoinSection>#partyListingFeed .party-listing-badges .party-listing-countdown{min-width:66px;height:26px;font-size:.82rem}
#partyJoinSection>#partyListingFeed .party-listing-room{left:22px;top:25px;width:389px;height:47px;background-size:101px 47px}
#partyJoinSection>#partyListingFeed .party-listing-room strong{right:8px;top:17px;width:266px}
#partyJoinSection>#partyListingFeed .party-listing-password{left:22px;top:72px;width:389px;height:47px;background-size:107px 47px}
#partyJoinSection>#partyListingFeed .party-listing-password strong{right:8px;top:17px;width:260px}
#partyJoinSection>#partyListingFeed .party-listing-difficulty{left:22px;top:112px;width:389px;height:64px}
#partyJoinSection>#partyListingFeed .party-listing-difficulty::before{width:128px;height:64px;background-size:389px 64px}
#partyJoinSection>#partyListingFeed .party-listing-difficulty.is-single .party-difficulty-tile{flex-basis:111px;height:61px}
#partyJoinSection>#partyListingFeed .party-listing-players{left:22px;top:170px;width:389px;height:50px;background-position:0 0,39px 15px;background-size:44px 50px,72px 28px}
#partyJoinSection>#partyListingFeed .party-listing-players strong{left:128px;top:17px;width:40px}
#partyJoinSection>#partyListingFeed .party-listing-player-icons{left:180px;top:8px;width:209px;height:34px;grid-template-columns:repeat(8,25px);gap:1px}
#partyJoinSection>#partyListingFeed .party-listing-player-icons .party-listing-player{width:25px;height:34px;background-size:31px 34px}
#partyJoinSection>#partyListingFeed .party-listing-join{left:51px;top:221px;width:334px;height:70px}
@media(max-width:1260px){#guildSection>#guildCreationFeed,#partyJoinSection>#partyListingFeed{grid-template-columns:600px;justify-content:start;overflow-x:auto}}
.empty-tab-layout>.guild-workspace-panel::before{display:none}
.guild-workspace-panel{overflow:hidden}
.guild-workspace{height:100%;min-height:0;padding:24px;text-align:left;overflow:hidden}
.guild-workspace-view{height:100%;min-height:0;color:#e7cf91}
.guild-empty-view{display:grid;align-content:start;justify-items:center;padding-top:34px}
.guild-empty-copy{margin:0;padding:20px 28px;border:1px solid rgba(198,154,69,.34);border-radius:8px;background:rgba(0,0,0,.22);color:#e6c57e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.25rem;font-weight:900;text-align:center;text-shadow:0 2px 3px #000}
.guild-workspace-heading{display:grid;gap:6px;justify-items:start}
.guild-workspace-heading h2{margin:0;color:#f1d38b;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.55rem;text-shadow:0 2px 3px #000}
.guild-workspace-heading p{margin:0;color:#9f8b64;font-size:.88rem;font-weight:800}
.guild-create-form{display:grid;grid-template-rows:auto minmax(0,1fr) 86px;gap:18px}
.guild-create-scroll{min-height:0;overflow:auto;padding:2px 8px 4px 0;scrollbar-width:thin;scrollbar-color:#a97831 #090704}
.guild-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.guild-form-field{min-width:0;margin:0;padding:14px;border:1px solid rgba(156,105,42,.62);border-radius:5px;background:rgba(3,3,3,.46);box-shadow:inset 0 0 18px rgba(0,0,0,.45)}
.guild-form-field>span,.guild-form-field>legend{margin:0 0 10px;padding:0;color:#f0cd82;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-weight:900;text-shadow:0 2px 3px #000}
.guild-name-field,.guild-textarea-field{grid-column:1/-1}
.guild-name-field input,.guild-textarea-field textarea,.guild-profile-intro,.guild-chat-form input{width:100%;min-width:0;border:1px solid rgba(176,121,47,.64);border-radius:3px;background:#050403;color:#f0d08a;outline:0;box-shadow:inset 0 0 14px rgba(0,0,0,.72)}
.guild-name-field input{height:46px;padding:0 14px;font-weight:900}
.guild-name-field input:focus,.guild-textarea-field textarea:focus,.guild-profile-intro:focus,.guild-chat-form input:focus{border-color:#e0b35d;box-shadow:inset 0 0 14px rgba(0,0,0,.72),0 0 0 2px rgba(224,179,93,.18)}
.guild-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.guild-choice{position:relative;min-width:0;cursor:pointer}
.guild-choice input{position:absolute;opacity:0;pointer-events:none}
.guild-choice span{display:grid;place-items:center;min-height:38px;padding:0 8px;border:1px solid rgba(145,96,39,.7);border-radius:3px;background:linear-gradient(180deg,#120e0a,#060504);color:#bda675;font-size:.82rem;font-weight:900;text-align:center;white-space:nowrap;transition:filter 140ms ease,border-color 140ms ease,background 140ms ease,color 140ms ease}
.guild-choice:hover span,.guild-choice input:focus-visible+span{border-color:#e0b35d;filter:brightness(1.12)}
.guild-choice input:checked+span{border-color:#e2bd6d;background:linear-gradient(180deg,#812018,#3b0907);color:#ffe7aa;box-shadow:inset 0 0 15px rgba(204,52,33,.34)}
.guild-choice.is-locked{cursor:not-allowed}
.guild-choice.is-locked span{border-color:rgba(103,78,46,.45);background:linear-gradient(180deg,#100d0a,#060504);color:#625744;filter:grayscale(.55);box-shadow:inset 0 0 18px rgba(0,0,0,.58)}
.guild-choice.is-locked:hover span{border-color:rgba(162,113,48,.5);filter:grayscale(.4) brightness(.92)}
.guild-textarea-field textarea{height:138px;max-height:178px;padding:12px;resize:none;overflow:auto;line-height:1.55}
.guild-create-actions{display:grid;align-items:end;justify-items:center}
.guild-create-submit{width:260px;height:58px;border:1px solid #b5792e;border-radius:3px;background:linear-gradient(180deg,#8d1d14,#4d0d09);color:#f5d78e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.18rem;font-weight:900;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 18px rgba(0,0,0,.5),0 10px 22px rgba(0,0,0,.35)}
.guild-create-submit:hover,.guild-create-submit:focus-visible{filter:brightness(1.16);outline:2px solid rgba(255,224,145,.64);outline-offset:2px}
.guild-dashboard-view{display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px}
.guild-panel-tabs{display:flex;justify-content:center;gap:12px}
.guild-panel-tabs button{width:150px;height:46px;border:1px solid rgba(176,121,47,.72);border-radius:4px;background:#090704;color:#bda675;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-weight:900;box-shadow:inset 0 0 14px rgba(0,0,0,.62)}
.guild-panel-tabs button.active{background:linear-gradient(180deg,#d8b459,#936424);color:#180f06;border-color:#f0d18a;box-shadow:0 0 14px rgba(216,180,89,.22)}
.guild-panel-tabs button.is-locked{opacity:.54;filter:grayscale(.35);cursor:not-allowed}
.guild-tab-body{min-height:0;overflow:hidden}
.guild-tab-panel{height:100%;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}
.guild-profile-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;overflow:hidden}
.guild-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.guild-profile-grid>div{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;min-height:50px;padding:0 14px;border:1px solid rgba(135,91,38,.58);border-radius:4px;background:rgba(5,4,3,.58)}
.guild-profile-grid dt{color:#9d875c;font-weight:900}
.guild-profile-grid dd{min-width:0;margin:0;color:#efd28f;font-weight:900;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guild-profile-grid .guild-capacity-cell{display:flex;align-items:center;justify-content:flex-end;gap:8px;overflow:visible}
.guild-capacity-expand{flex:0 0 auto;height:30px;padding:0 10px;border:1px solid rgba(176,121,47,.72);border-radius:3px;background:linear-gradient(180deg,#712019,#310806);color:#f1d18c;font-size:.76rem;font-weight:900;cursor:pointer}
.guild-capacity-expand:hover,.guild-capacity-expand:focus-visible{border-color:#e0b35d;filter:brightness(1.14);outline:0}
.guild-capacity-expand.is-locked{border-color:rgba(103,78,46,.54);background:#0b0907;color:#74654c;cursor:not-allowed;filter:grayscale(.45)}
.guild-capacity-max{color:#8fcd67;font-size:.74rem;font-weight:900}
.guild-text-block{min-height:0;padding:14px;border:1px solid rgba(135,91,38,.58);border-radius:4px;background:rgba(5,4,3,.58)}
.guild-text-block h3{margin:0 0 8px;color:#f0cd82;font-size:1rem}
.guild-text-block p{margin:0;color:#d8c49a;line-height:1.62;overflow-wrap:anywhere}
.guild-text-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.guild-text-heading h3{margin:0}
.guild-text-heading span{color:#897a5c;font-size:.78rem;font-weight:800}
.guild-intro-block{display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}
.guild-profile-intro{height:100%;min-height:0;max-height:100%;padding:12px;resize:none;overflow:auto;line-height:1.58}
.guild-profile-intro[readonly]{color:#d8c49a}
.guild-profile-actions{display:grid;justify-items:center;align-items:end;padding-top:2px}
.guild-join-submit{width:260px;height:58px;border:1px solid #b5792e;border-radius:3px;background:linear-gradient(180deg,#8d1d14,#4d0d09);color:#f5d78e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.18rem;font-weight:900;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 18px rgba(0,0,0,.5),0 10px 22px rgba(0,0,0,.35)}
.guild-join-submit:hover,.guild-join-submit:focus-visible{filter:brightness(1.16);outline:2px solid rgba(255,224,145,.64);outline-offset:2px}
.guild-chat-layout{display:grid;grid-template-columns:3fr 7fr;gap:12px;overflow:hidden}
.guild-member-panel,.guild-live-chat{min-width:0;min-height:0;display:grid;overflow:hidden;border:1px solid rgba(135,91,38,.62);border-radius:4px;background:#050403}
.guild-member-panel{grid-template-rows:auto minmax(0,1fr)}
.guild-member-header{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:44px minmax(0,1fr) 58px;gap:4px;padding:10px 8px;border-bottom:1px solid rgba(116,78,34,.6);background:#100c08;color:#e6c57e;font-size:.68rem;font-weight:900;text-align:center}
.guild-member-list{min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}
.guild-member-item{border-bottom:1px solid rgba(83,58,29,.52)}
.guild-member-row{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 58px;align-items:center;gap:4px;min-height:44px;padding:0 8px;border:0;background:transparent;color:#c6ad7b;text-align:center}
.guild-member-row strong,.guild-member-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}
.guild-member-status.is-online{color:#2f7a38;text-shadow:0 0 8px rgba(47,122,56,.42),0 2px 3px #000}
.guild-member-row:hover,.guild-member-row:focus-visible{background:rgba(128,87,37,.22);outline:0}
.guild-member-actions{display:grid;grid-template-columns:1fr;gap:6px;padding:8px;background:rgba(0,0,0,.26)}
.guild-member-actions button{min-height:30px;border:1px solid rgba(143,96,39,.72);border-radius:3px;background:#120d08;color:#d7bd80;font-size:.7rem;font-weight:900}
.guild-member-actions button:hover,.guild-member-actions button:focus-visible{border-color:#e0b35d;color:#ffe5a4;outline:0}
.guild-member-actions button:disabled{opacity:.42;cursor:not-allowed}
.guild-live-chat{grid-template-rows:50px minmax(0,1fr) 58px}
.guild-live-chat header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid rgba(116,78,34,.6);background:#100c08}
.guild-live-chat h3{margin:0;color:#e6c57e;font-size:.95rem}
.guild-live-chat header span{color:#8fcd67;font-size:.82rem;font-weight:900}
.guild-chat-messages{min-height:0;padding:12px;overflow:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}
.guild-chat-message{margin:0 0 9px;padding:9px 10px;border-left:2px solid #9b6d2c;background:rgba(27,22,15,.72)}
.guild-chat-message>div{display:flex;justify-content:space-between;gap:12px}
.guild-chat-message strong{color:#d8bd82;font-size:.76rem}
.guild-chat-message time{color:#73664e;font-size:.68rem}
.guild-chat-message p{margin:4px 0 0;color:#ddd5c5;font-size:.86rem;line-height:1.45;overflow-wrap:anywhere}
.guild-chat-message.is-system{border-left-color:#668d42;background:rgba(32,52,23,.3)}
.chat-author-line{display:inline;min-width:0}
.chat-author-line strong{min-width:0;overflow:visible;text-overflow:clip;white-space:normal}
.chat-role-badge{display:inline;margin-left:6px;padding:0;border:0;background:transparent;box-shadow:none;font-size:.76rem;font-weight:900;line-height:1;color:inherit;text-shadow:inherit}
.chat-role-badge.is-master-badge{color:#fff0a8;text-shadow:0 0 8px rgba(255,219,107,.55),0 0 16px rgba(255,188,55,.32)}
.chat-role-badge.is-owner-badge{color:#ffd778;text-shadow:0 0 7px rgba(214,169,79,.28)}
.chat-role-badge.is-submaster-badge{color:#f2f6ff;text-shadow:0 0 8px rgba(229,235,245,.34)}
.guild-chat-message.is-master{position:relative;overflow:hidden;border-left-color:#ffd76a;background:linear-gradient(100deg,rgba(118,74,14,.58),rgba(182,127,31,.34) 42%,rgba(40,28,12,.86));box-shadow:inset 0 0 0 1px rgba(255,215,106,.26),inset 0 0 24px rgba(255,191,74,.18)}
.guild-chat-message.is-master::before{content:"";position:absolute;inset:-45% -30%;background:radial-gradient(circle at 18% 42%,rgba(255,244,183,.55) 0 2px,transparent 3px),radial-gradient(circle at 62% 36%,rgba(255,221,112,.42) 0 1px,transparent 3px),linear-gradient(115deg,transparent 34%,rgba(255,231,147,.28) 48%,transparent 62%);opacity:.62;transform:translateX(-35%);animation:guildMasterShimmer 3.2s linear infinite;pointer-events:none}
.guild-chat-message.is-master>div,.guild-chat-message.is-master p{position:relative;z-index:1}
.guild-chat-message.is-master strong{color:#fff0a8;text-shadow:0 0 8px rgba(255,219,107,.55),0 0 16px rgba(255,188,55,.32)}
@keyframes guildMasterShimmer{from{transform:translateX(-35%)}to{transform:translateX(35%)}}
.guild-chat-message.is-submaster{border-left-color:#e4e9f2;background:radial-gradient(circle at 24% 28%,rgba(255,255,255,.2),transparent 30%),linear-gradient(90deg,rgba(89,96,111,.46),rgba(44,50,62,.84) 50%,rgba(27,22,15,.84));box-shadow:inset 0 0 0 1px rgba(234,240,250,.18),inset 0 0 20px rgba(222,229,240,.14),0 0 10px rgba(222,229,240,.1)}
.guild-chat-message.is-submaster strong{color:#f2f6ff;text-shadow:0 0 8px rgba(229,235,245,.34)}
.guild-chat-form{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:8px;padding:9px;border-top:1px solid rgba(116,78,34,.6);background:#0b0907}
.guild-chat-form button{border:1px solid #b0782d;border-radius:3px;background:#68160f;color:#f3d58c;font-weight:900}
.guild-chat-form button:hover,.guild-chat-form button:focus-visible{background:#8a1e14;outline:2px solid rgba(255,224,145,.64);outline-offset:1px}
.guild-ranking-panel{display:grid;place-items:start center;padding-top:34px}
.guild-ranking-panel p{margin:0;padding:20px 28px;border:1px solid rgba(198,154,69,.34);border-radius:8px;background:rgba(0,0,0,.22);color:#e6c57e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.25rem;font-weight:900;text-shadow:0 2px 3px #000}
.guild-pointer-error{position:fixed;z-index:1400;max-width:330px;padding:10px 13px;border:1px solid #ffca7a;border-radius:4px;background:rgba(72,13,9,.96);color:#ffe2a8;font-size:.86rem;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.48);pointer-events:none;animation:guildPointerPop 160ms ease both}
.my-page-pointer-error{position:fixed;z-index:1500;max-width:330px;padding:10px 13px;border:1px solid #ffca7a;border-radius:4px;background:rgba(72,13,9,.96);color:#ffe2a8;font-size:.86rem;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.48);pointer-events:none;animation:guildPointerPop 160ms ease both}
@keyframes guildPointerPop{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.member-info-popover{position:fixed;z-index:1450;width:min(300px,calc(100vw - 24px));padding:12px;border:1px solid rgba(211,160,73,.82);border-radius:5px;background:linear-gradient(180deg,rgba(24,18,12,.98),rgba(5,4,3,.98));color:#e9d29b;box-shadow:0 14px 30px rgba(0,0,0,.58),inset 0 0 18px rgba(0,0,0,.5);animation:guildPointerPop 160ms ease both}
.member-info-popover header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid rgba(128,88,39,.62)}
.member-info-popover h3{min-width:0;margin:0;color:#f3d28a;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1rem;font-weight:900;text-shadow:0 2px 3px #000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.member-info-close{flex:0 0 auto;border:1px solid rgba(160,110,46,.72);border-radius:3px;background:#0b0805;color:#c9ad75;font-size:.72rem;font-weight:900;cursor:pointer}
.member-info-close:hover,.member-info-close:focus-visible{border-color:#e0b35d;color:#ffe5a4;outline:0}
.member-info-list{display:grid;gap:7px;margin:10px 0 0}
.member-info-list>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center;min-height:28px}
.member-info-list dt{color:#927d56;font-size:.78rem;font-weight:900}
.member-info-list dd{min-width:0;margin:0;color:#efd28f;font-size:.84rem;font-weight:900;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#guildSection>#guildCreationFeed .guild-creation-particle{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:48px 34px 26px}
#guildSection>#guildCreationFeed .guild-creation-particle.is-created{animation:partyListingReveal 460ms ease both}
.guild-creation-countdown{position:absolute;z-index:3;top:14px;left:50%;min-width:112px;height:28px;display:grid;place-items:center;transform:translateX(-50%);border:1px solid rgba(198,154,69,.72);border-radius:999px;background:rgba(3,2,1,.84);color:#f0cb79;font-size:.82rem;font-weight:900;font-variant-numeric:tabular-nums;box-shadow:inset 0 0 10px rgba(0,0,0,.72);text-shadow:0 1px 2px #000}
.guild-creation-name{margin:0;color:#f1d38b;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.48rem;text-align:center;text-shadow:0 2px 4px #000}
.guild-creation-meta{display:grid;gap:8px;margin:18px 0 0}
.guild-creation-meta>div{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:center;min-height:38px;border-bottom:1px solid rgba(94,64,31,.48)}
.guild-creation-meta dt{color:#917a50;font-size:.82rem;font-weight:900}
.guild-creation-meta dd{min-width:0;margin:0;color:#d6b875;font-size:.9rem;font-weight:900;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guild-creation-open{justify-self:center;width:250px;height:50px;border:1px solid #af792f;border-radius:3px;background:linear-gradient(180deg,#8d1d14,#4d0d09);color:#f2d18b;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1rem;font-weight:900;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 16px rgba(0,0,0,.56)}
.guild-creation-open:hover,.guild-creation-open:focus-visible{filter:brightness(1.18);outline:2px solid rgba(255,224,145,.68);outline-offset:2px}
@media(max-width:1100px){.guild-chat-layout{grid-template-columns:1fr;grid-template-rows:42% minmax(0,1fr)}.guild-member-header,.guild-member-row{grid-template-columns:72px minmax(0,1fr) 90px}.guild-member-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.guild-workspace{padding:14px}.guild-form-grid,.guild-profile-grid{grid-template-columns:1fr}.guild-panel-tabs button{width:31%;min-width:0}.guild-choice-grid{grid-template-columns:1fr}.guild-create-submit,.guild-join-submit{width:min(260px,100%)}}
.empty-tab-layout>.party-workspace-panel::before{display:none}
.party-workspace-panel{overflow:hidden}
.party-workspace{height:100%;min-height:0;padding:24px;text-align:left;overflow:hidden}
.party-workspace-view{height:100%;min-height:0;color:#e7cf91}
.party-empty-view{display:grid;align-content:start;justify-items:center;padding-top:34px}
.party-empty-copy{margin:0;padding:20px 28px;border:1px solid rgba(198,154,69,.34);border-radius:8px;background:rgba(0,0,0,.22);color:#e6c57e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.25rem;font-weight:900;text-align:center;text-shadow:0 2px 3px #000}
.party-workspace-heading{display:grid;gap:6px;justify-items:start}
.party-workspace-heading h2{margin:0;color:#f1d38b;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.55rem;text-shadow:0 2px 3px #000}
.party-workspace-heading p{margin:0;color:#9f8b64;font-size:.88rem;font-weight:800}
.party-overview-view{display:grid;grid-template-rows:auto minmax(0,1fr) 86px;gap:18px}
.party-slots-view{display:grid;grid-template-rows:auto auto minmax(0,1fr);align-content:stretch;gap:18px}
.party-overview-content{min-height:0;display:grid;grid-template-rows:minmax(0,5fr) minmax(0,5fr);gap:16px;justify-items:center;overflow:hidden}
.party-overview-portrait{justify-self:center;width:auto;max-width:100%;height:100%;aspect-ratio:1;border:1px solid rgba(157,108,43,.78);border-radius:4px;background-color:#050504;background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:inset 0 0 28px #000,0 12px 24px rgba(0,0,0,.42)}
.party-overview-details{width:min(100%,720px);min-width:0;margin:0;display:grid;grid-template-rows:repeat(6,minmax(0,1fr));border:1px solid rgba(135,91,38,.62);border-radius:4px;background:#050403;overflow:hidden}
.party-overview-details>div{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;min-height:0;padding:0 18px;border-bottom:1px solid rgba(94,64,31,.52)}
.party-overview-details>div:last-child{border-bottom:0}
.party-overview-details dt{color:#9d875c;font-weight:900}
.party-overview-details dd{min-width:0;margin:0;color:#efd28f;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-weight:900;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.party-overview-difficulty-row .party-workspace-difficulty{justify-self:end;width:148px;height:52px;display:flex;align-items:center;justify-content:flex-end}
.party-workspace-difficulty .party-difficulty-tile{width:126px;aspect-ratio:1688/932;filter:drop-shadow(0 3px 5px rgba(0,0,0,.6))}
.party-workspace-members{display:flex;align-items:center;justify-content:flex-end;gap:14px}
.party-workspace-members strong{color:#8fcd67;font-size:1.15rem;font-variant-numeric:tabular-nums}
.party-workspace-player-dots{min-height:30px;display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.party-workspace-player-dots span{width:26px;height:30px;border:0;border-radius:0;background:transparent url("assets/promo/party-ui/player-green-single.webp") center/contain no-repeat;box-shadow:none}
.party-workspace-actions{display:flex;align-items:flex-end;justify-content:center;gap:14px}
.party-workspace-primary,.party-workspace-secondary{width:240px;height:58px;border:1px solid #b5792e;border-radius:3px;background:linear-gradient(180deg,#8d1d14,#4d0d09);color:#f5d78e;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1.18rem;font-weight:900;text-shadow:0 2px 3px #000;box-shadow:inset 0 0 18px rgba(0,0,0,.5),0 10px 22px rgba(0,0,0,.35)}
.party-workspace-secondary{border-color:#7d5a2a;background:linear-gradient(180deg,#211911,#0b0805);color:#cfb477}
.party-workspace-primary:hover,.party-workspace-primary:focus-visible,.party-workspace-secondary:hover,.party-workspace-secondary:focus-visible{filter:brightness(1.16);outline:2px solid rgba(255,224,145,.64);outline-offset:2px}
.party-workspace-primary:disabled{filter:grayscale(.55);opacity:.54;cursor:not-allowed}
.party-workspace-slot-grid{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,92px);gap:10px;overflow:hidden}
.party-workspace-slot{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 82px;align-items:center;gap:10px;min-width:0;min-height:0;padding:8px 12px;border:1px solid rgba(148,102,41,.76);border-radius:3px;background:#090806;color:#ddbc78;cursor:pointer;text-align:left;transition:filter 140ms ease,border-color 140ms ease,background 140ms ease}
.party-workspace-slot:hover,.party-workspace-slot:focus-within{border-color:#e0b35d;background:#17120c;filter:brightness(1.12)}
.party-workspace-slot.is-selected{border-color:#e2bd6d;background:#5d160f;box-shadow:inset 0 0 18px rgba(190,39,25,.42),0 0 12px rgba(185,117,36,.2)}
.party-workspace-slot.is-disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.48}
.party-workspace-slot input[type="checkbox"]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.party-workspace-slot-marker{width:34px;height:34px;background:url("assets/promo/party-ui/checkbox-off.webp") center/contain no-repeat}
.party-workspace-slot.is-selected .party-workspace-slot-marker{background-image:url("assets/promo/party-ui/checkbox-on.webp")}
.party-workspace-slot strong{min-width:0;overflow:hidden;font-family:"Noto Serif KR","Nanum Myeongjo",serif;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}
.party-workspace-slot small{color:#806f51;font-size:.72rem;font-weight:800;text-align:right}
.party-workspace-slot.is-selected small{color:#f1d79c}
.party-workspace-role-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;min-width:0;height:34px;padding:0 34px 0 12px;border:1px solid rgba(157,110,46,.76);border-radius:2px;background:#0b0907 url("assets/promo/party-ui/select.webp") center/100% 100% no-repeat;color:#f1d18c;color-scheme:dark;font:900 .9rem "Noto Serif KR","Nanum Myeongjo",serif;text-align:center;cursor:pointer}
.party-workspace-role-select::-ms-expand{display:none}
.party-lobby-view{display:grid;grid-template-columns:4fr 6fr;grid-template-rows:minmax(0,1fr) 86px;gap:12px;overflow:hidden}
.party-workspace-roster,.party-workspace-chat{min-width:0;min-height:0;display:grid;overflow:hidden;border:1px solid rgba(135,91,38,.62);border-radius:4px;background:#050403}
.party-workspace-roster{grid-template-rows:auto minmax(0,1fr)}
.party-workspace-roster-header{display:grid;grid-template-columns:56px minmax(0,1fr) 72px;gap:6px;padding:12px 8px;border-bottom:1px solid rgba(116,78,34,.6);background:#100c08;color:#e2412f;font-size:.78rem;font-weight:900;text-align:center;text-shadow:0 2px 3px #000}
.party-workspace-member-list{min-height:0;display:flex;flex-direction:column;overflow:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}
.party-workspace-member-item{min-height:54px;display:grid;grid-template-rows:auto auto;border-bottom:1px solid rgba(83,58,29,.52)}
.party-workspace-member-row{width:100%;height:54px;display:grid;grid-template-columns:56px minmax(0,1fr) 72px;align-items:center;gap:6px;min-height:54px;padding:0 8px;border:0;background:transparent;color:#c6ad7b;text-align:center}
.party-workspace-member-row strong,.party-workspace-member-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}
.party-workspace-member-row strong.is-party-owner{color:#ffd778;text-shadow:0 0 7px rgba(214,169,79,.28)}
.party-join-participant .is-party-owner{color:#ffd778;text-shadow:0 0 7px rgba(214,169,79,.28)}
.party-workspace-member-row:not(:disabled) .party-workspace-selection-state{color:#2f7a38}
.party-workspace-member-row:not(:disabled):hover,.party-workspace-member-row:not(:disabled):focus-visible{background:rgba(128,87,37,.22);outline:0}
.party-workspace-member-row:disabled{cursor:default;color:#6f6250}
.party-workspace-member-actions{display:grid;grid-template-columns:1fr;gap:6px;padding:8px;background:rgba(0,0,0,.26)}
.party-workspace-member-actions button{min-height:30px;border:1px solid rgba(143,96,39,.72);border-radius:3px;background:#120d08;color:#d7bd80;font-size:.7rem;font-weight:900}
.party-workspace-member-actions button:hover,.party-workspace-member-actions button:focus-visible{border-color:#e0b35d;color:#ffe5a4;outline:0}
.party-workspace-member-actions button:disabled{opacity:.42;cursor:not-allowed}
.party-workspace-chat{grid-template-rows:50px minmax(0,1fr) 58px}
.party-workspace-chat header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid rgba(116,78,34,.6);background:#100c08}
.party-workspace-chat h2{margin:0;color:#e6c57e;font-size:.95rem}
.party-workspace-chat header span{color:#8fcd67;font-size:.82rem;font-weight:900}
.party-workspace-chat-messages{min-height:0;padding:12px;overflow:auto;scrollbar-width:thin;scrollbar-color:#a97831 #090704}
.party-workspace-chat-message{margin:0 0 9px;padding:9px 10px;border-left:2px solid #9b6d2c;background:rgba(27,22,15,.72)}
.party-workspace-chat-message>div{display:flex;justify-content:space-between;gap:12px}
.party-workspace-chat-message strong{color:#d8bd82;font-size:.76rem}
.party-workspace-chat-message time{color:#73664e;font-size:.68rem}
.party-workspace-chat-message p{margin:4px 0 0;color:#ddd5c5;font-size:.86rem;line-height:1.45;overflow-wrap:anywhere}
.party-workspace-chat-message.is-system{border-left-color:#668d42;background:rgba(32,52,23,.3)}
.party-workspace-chat-message.is-owner{border-left-color:#d6a94f;background:linear-gradient(90deg,rgba(103,24,15,.46),rgba(27,22,15,.78));box-shadow:inset 0 0 0 1px rgba(214,169,79,.16)}
.party-workspace-chat-message.is-owner strong{color:#ffd778;text-shadow:0 0 7px rgba(214,169,79,.28)}
.party-workspace-chat-form{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:8px;padding:9px;border-top:1px solid rgba(116,78,34,.6);background:#0b0907}
.party-workspace-chat-form input{width:100%;min-width:0;border:1px solid rgba(176,121,47,.64);border-radius:3px;background:#050403;color:#f0d08a;outline:0;box-shadow:inset 0 0 14px rgba(0,0,0,.72);padding:0 12px}
.party-workspace-chat-form input:focus{border-color:#e0b35d;box-shadow:inset 0 0 14px rgba(0,0,0,.72),0 0 0 2px rgba(224,179,93,.18)}
.party-workspace-chat-form button{border:1px solid #b0782d;border-radius:3px;background:#68160f;color:#f3d58c;font-weight:900}
.party-workspace-chat-form button:hover,.party-workspace-chat-form button:focus-visible{background:#8a1e14;outline:2px solid rgba(255,224,145,.64);outline-offset:1px}
.party-workspace-lobby-actions{grid-column:1/-1}
.party-pointer-message{position:fixed;z-index:1400;max-width:330px;padding:10px 13px;border:1px solid #b9ec78;border-radius:4px;background:rgba(26,63,16,.96);color:#ecffd0;font-size:.86rem;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.48);pointer-events:none;animation:guildPointerPop 160ms ease both}
@media(max-width:1100px){.party-lobby-view{grid-template-columns:1fr;grid-template-rows:40% minmax(0,1fr) 82px}.party-workspace-lobby-actions{grid-column:auto}}
@media(max-width:760px){.party-workspace{padding:14px}.party-workspace-slot-grid{grid-template-columns:1fr;grid-template-rows:none;overflow:auto}.party-workspace-primary,.party-workspace-secondary{width:min(220px,48%)}.party-overview-details>div{grid-template-columns:92px minmax(0,1fr);padding:0 10px}.party-workspace-player-dots{justify-content:flex-end}}
