*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-dark: #0a0e17;--bg-card: #131926;--bg-input: #1a2235;--bg-hover: #1e2a42;--border: #2a3654;--text: #e0e6f0;--text-muted: #8892a8;--accent: #f0a030;--accent-hover: #ffb84d;--danger: #e04040;--danger-hover: #ff5555;--success: #40c060}body{font-family:Inter,system-ui,sans-serif;background-color:var(--bg-dark);color:var(--text);line-height:1.5;min-height:100vh}.app{max-width:1100px;margin:0 auto;padding:1rem 1.5rem 3rem}.app-header{text-align:center;padding:2rem 0 1.5rem;border-bottom:1px solid var(--border);margin-bottom:1.5rem}.app-header h1{font-family:Cinzel,serif;font-size:2.4rem;color:var(--accent);letter-spacing:.05em}.app-nav{display:flex;justify-content:center;gap:.5rem;margin-top:.75rem}.nav-link{color:var(--text-muted);text-decoration:none;padding:.4rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;transition:all .15s}.nav-link:hover{color:var(--text);background:var(--bg-hover)}.nav-link.active{color:var(--accent);background:var(--bg-input);border:1px solid var(--border)}.page-title{font-family:Cinzel,serif;font-size:1.2rem;color:var(--accent)}.subtitle{color:var(--text-muted);font-size:.95rem;margin-top:.25rem}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.member-count{color:var(--text-muted);font-size:.9rem}.btn{font-family:inherit;cursor:pointer;border:1px solid var(--border);border-radius:6px;padding:.5rem 1rem;font-size:.85rem;background:var(--bg-input);color:var(--text);transition:all .15s}.btn:hover{background:var(--bg-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#000;border-color:var(--accent);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-save{color:var(--success);border-color:var(--success)}.btn-save:hover{background:var(--success);color:#000}.btn-sm{padding:.3rem .65rem;font-size:.8rem}.btn-icon{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:1rem;line-height:1}.btn-icon:hover{color:var(--danger)}.loading{text-align:center;padding:3rem 1rem;color:var(--text-muted);font-size:1rem}.spec-icon{width:20px;height:20px;border-radius:4px;vertical-align:middle;margin-right:.35rem;border:1px solid var(--border)}.spec-icon-sm{width:16px;height:16px;border-radius:3px;margin-right:.25rem}.roster-table-wrapper{overflow-x:auto}.roster-table{width:100%;border-collapse:collapse;background:var(--bg-card);border-radius:10px;overflow:hidden}.roster-table thead{background:var(--bg-input)}.roster-table th{text-align:left;padding:.75rem 1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border)}.roster-table td{padding:.65rem 1rem;border-bottom:1px solid var(--border);font-size:.9rem;vertical-align:middle}.roster-table tbody tr:last-child td{border-bottom:none}.roster-table tbody tr:hover{background:var(--bg-hover)}.member-row.editing td{background:var(--bg-input)}.member-row input,.member-row select{font-family:inherit;font-size:.85rem;padding:.3rem .5rem;border:1px solid var(--border);border-radius:4px;background:var(--bg-dark);color:var(--text);width:100%}.class-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.5rem;vertical-align:middle}.role-badge{font-size:.85rem}.actions{white-space:nowrap;vertical-align:middle}.actions-inner{display:flex;gap:.4rem;align-items:center}.alt-list{list-style:none;display:flex;flex-direction:column;gap:.2rem}.alt-list li{display:flex;align-items:center;gap:.4rem;font-size:.82rem}.alt-detail{color:var(--text-muted);font-size:.75rem}.no-alts{color:var(--text-muted)}.add-member-form{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:1.25rem 1.5rem;margin-bottom:1rem}.add-member-form h3{font-family:Cinzel,serif;color:var(--accent);margin-bottom:1rem;font-size:1.1rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.85rem;margin-bottom:1rem}.form-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;color:var(--text-muted)}.form-grid input,.form-grid select{font-family:inherit;font-size:.9rem;padding:.45rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-input);color:var(--text)}.form-grid input:focus,.form-grid select:focus{outline:none;border-color:var(--accent)}.checkbox-label{flex-direction:row!important;align-items:center!important;gap:.5rem!important;font-size:.9rem!important;color:var(--text)!important;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto}.form-error{background:#e0404026;border:1px solid var(--danger);color:var(--danger);padding:.5rem .75rem;border-radius:6px;font-size:.85rem;margin-bottom:.75rem}.error-banner{background:#e0404026;border:1px solid var(--danger);color:var(--danger);padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.empty-state p:first-child{font-size:1.1rem;margin-bottom:.5rem}.gear-tabs{display:flex;align-items:flex-end;gap:.25rem;margin-bottom:1.25rem;border-bottom:1px solid var(--border);padding-bottom:0;overflow-x:clip}.gear-tab{font-family:inherit;font-size:.85rem;font-weight:500;padding:.6rem 1rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:all .15s}.gear-tab:hover{color:var(--text)}.gear-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.gear-content{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;min-height:200px}.roster-table-clickable tbody tr{cursor:pointer}.gear-member-header{display:flex;align-items:center;gap:.6rem;margin-bottom:1.25rem}.gear-member-name{font-family:Cinzel,serif;font-size:1.4rem;font-weight:700}.gear-member-detail{color:var(--text-muted);font-size:.9rem}.paperdoll{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:1rem;margin-bottom:1.5rem}.paperdoll-column{display:flex;flex-direction:column;gap:.5rem}.paperdoll-center{display:flex;flex-direction:column;align-items:center;gap:1rem}.paperdoll-silhouette{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:100%;min-height:580px;display:flex;align-items:center;justify-content:center}.silhouette-class{font-family:Cinzel,serif;font-size:1.4rem;font-weight:600;opacity:.4}.paperdoll-bottom-row{display:flex;gap:.5rem;width:100%}.paperdoll-bottom-row .gear-slot{flex:1}.gear-slot{background:var(--bg-card);border:2px solid var(--border);border-radius:8px;padding:.55rem .7rem;display:flex;flex-direction:column;gap:.15rem;transition:border-color .15s}.gear-slot-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.gear-slot-item{font-size:.85rem;color:var(--text)}.gear-slot-bis-until{font-size:.7rem;color:var(--gear-bis);font-weight:600}:root{--gear-bis: #a335ee;--gear-good: #0070dd;--gear-pre-raid-bis: #1eff00;--gear-upgrade: #ffd100;--gear-empty: var(--border)}.gear-status-bis{border-color:var(--gear-bis)}.gear-status-good{border-color:var(--gear-good)}.gear-status-pre-raid-bis{border-color:var(--gear-pre-raid-bis)}.gear-status-upgrade{border-color:var(--gear-upgrade)}.gear-status-empty{border-color:var(--gear-empty)}.gear-legend{display:flex;gap:1.25rem;flex-wrap:wrap;padding:.75rem 0}.gear-legend-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-muted)}.gear-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:3px;border-width:2px;border-style:solid;background:var(--bg-card)}.gear-slot-dummy{opacity:.35;border-style:dashed;cursor:default}.gear-slot-clickable{cursor:pointer}.gear-slot-clickable:hover{background:var(--bg-hover)}.gear-slot-icon{width:18px;height:18px;border-radius:3px;vertical-align:middle;margin-right:.3rem}:root{--gear-wish-bis: #a335ee;--gear-wish-upgrade: #ffd100;--gear-wish-off-spec: #0070dd;--gear-wish-custom: #e6007a}.gear-wish-bis{border-color:var(--gear-wish-bis)}.gear-wish-upgrade{border-color:var(--gear-wish-upgrade)}.gear-wish-off-spec{border-color:var(--gear-wish-off-spec)}.gear-wish-custom{border-color:var(--gear-wish-custom)}.gear-wish-empty{border-color:var(--gear-empty)}.gear-status-custom{border-color:var(--gear-wish-custom)}.gear-status-bg-custom{background:var(--gear-wish-custom)}.gear-status-bg-empty{background:var(--gear-empty)}.gear-slot-wrapper{display:flex;flex-direction:column}.gear-slot-header-row{display:flex;justify-content:space-between;align-items:center}.gear-slot-count{font-size:.7rem;color:var(--text-muted);font-weight:600}.gear-slot-wish-label,.gear-slot-custom-note{font-size:.7rem;color:var(--text-muted);font-weight:500}.gear-slot-expanded-active{border-radius:8px 8px 0 0}@keyframes gear-slot-expand{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.gear-slot-expanded{background:var(--bg-input);border:1px solid var(--border);border-top:none;border-radius:0 0 8px 8px;padding:.4rem .5rem;display:flex;flex-direction:column;gap:.35rem;animation:gear-slot-expand .2s ease forwards;overflow:hidden}.gear-slot-expanded-item{display:flex;align-items:center;gap:.5rem;padding:.25rem .3rem;border-radius:4px;border-left:3px solid transparent;font-size:.82rem;cursor:grab;transition:background .12s}.gear-slot-expanded-item.item-quality-0{border-left-color:#9d9d9d}.gear-slot-expanded-item.item-quality-1{border-left-color:#fff}.gear-slot-expanded-item.item-quality-2{border-left-color:#1eff00}.gear-slot-expanded-item.item-quality-3{border-left-color:#0070dd}.gear-slot-expanded-item.item-quality-4{border-left-color:#a335ee}.gear-slot-expanded-item.item-quality-5{border-left-color:#ff8000}.gear-slot.item-quality-0{border-color:#9d9d9d}.gear-slot.item-quality-1{border-color:#fff}.gear-slot.item-quality-2{border-color:#1eff00}.gear-slot.item-quality-3{border-color:#0070dd}.gear-slot.item-quality-4{border-color:#a335ee}.gear-slot.item-quality-5{border-color:#ff8000}.gear-slot-expanded-item:active{cursor:grabbing}.gear-slot-expanded-item:hover{background:var(--bg-hover)}.gear-slot-expanded-item[draggable=true]:active{opacity:.5}.gear-slot-drag-handle{color:var(--text-muted);font-size:.9rem;cursor:grab;-webkit-user-select:none;user-select:none;line-height:1}.gear-slot-wish-type{font-size:.7rem;color:var(--text-muted);margin-left:auto;white-space:nowrap;border:1px solid transparent;border-radius:4px;padding:.1rem .4rem}.gear-slot-wish-type-bis{color:var(--gear-wish-bis);border-color:var(--gear-wish-bis)}.gear-slot-wish-type-upgrade{color:var(--gear-wish-upgrade);border-color:var(--gear-wish-upgrade)}.gear-slot-wish-type-off-spec{color:var(--gear-wish-off-spec);border-color:var(--gear-wish-off-spec)}.gear-slot-wish-type-custom{color:var(--gear-wish-custom);border-color:var(--gear-wish-custom)}.gear-slot-add-btn{align-self:stretch;margin-top:.15rem}.btn-icon-danger{color:var(--danger);opacity:.6;transition:opacity .15s}.btn-icon-danger:hover{opacity:1}.wishlist-item-type{font-size:.65rem;color:var(--text-muted);background:var(--bg-hover);padding:.1rem .3rem;border-radius:3px}.wish-badge{font-size:.65rem;font-weight:700;padding:.1rem .4rem;border-radius:3px;letter-spacing:.03em;white-space:nowrap;color:#000}.wish-badge-bis{background:var(--gear-wish-bis)}.wish-badge-upgrade{background:var(--gear-wish-upgrade)}.wish-badge-off-spec{background:var(--gear-wish-off-spec);color:#fff}.wish-badge-custom{background:var(--gear-wish-custom)}.gear-selector-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:100}.gear-selector{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:420px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.gear-selector-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.gear-selector-header h3{font-family:Cinzel,serif;font-size:1rem;color:var(--accent)}.gear-selector-input{font-family:inherit;font-size:.9rem;padding:.65rem 1rem;border:none;border-bottom:1px solid var(--border);background:var(--bg-input);color:var(--text);outline:none}.gear-selector-input:focus{background:var(--bg-dark);border-bottom-color:var(--accent)}.gear-selector-results{overflow-y:auto;max-height:300px;padding:.25rem 0}.gear-selector-loading,.gear-selector-empty{padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.85rem}.gear-selector-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.5rem 1rem;background:none;border:none;cursor:pointer;text-align:left;font-family:inherit;font-size:.9rem;color:var(--text);transition:background .1s}.gear-selector-item:hover{background:var(--bg-hover)}.gear-selector-icon{width:24px;height:24px;border-radius:4px;border:1px solid var(--border);flex-shrink:0}.gear-selector-name{font-weight:500}.gear-selector-status{padding:1rem 1.25rem}.gear-selector-chosen{display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;background:var(--bg-input);border-radius:6px;font-weight:500;font-size:.9rem;margin-bottom:.75rem}.gear-selector-prompt{font-size:.8rem;color:var(--text-muted);margin-bottom:.5rem}.gear-selector-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-bottom:.75rem}.gear-selector-custom-row{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.gear-status-btn{text-align:center;font-weight:600}.gear-status-btn.gear-status-bis{color:var(--gear-bis);border-color:var(--gear-bis)}.gear-status-btn.gear-status-bis:hover{background:var(--gear-bis);color:#fff}.gear-status-btn.gear-status-good{color:var(--gear-good);border-color:var(--gear-good)}.gear-status-btn.gear-status-good:hover{background:var(--gear-good);color:#fff}.gear-status-btn.gear-status-pre-raid-bis{color:var(--gear-pre-raid-bis);border-color:var(--gear-pre-raid-bis)}.gear-status-btn.gear-status-pre-raid-bis:hover{background:var(--gear-pre-raid-bis);color:#000}.gear-status-btn.gear-status-upgrade{color:var(--gear-upgrade);border-color:var(--gear-upgrade)}.gear-status-btn.gear-status-upgrade:hover{background:var(--gear-upgrade);color:#000}.gear-status-btn.gear-status-custom{color:var(--gear-wish-custom);border-color:var(--gear-wish-custom)}.gear-status-btn.gear-status-custom:hover{background:var(--gear-wish-custom);color:#000}.gear-status-btn.gear-wish-bis{color:var(--gear-wish-bis);border-color:var(--gear-wish-bis)}.gear-status-btn.gear-wish-bis:hover{background:var(--gear-wish-bis);color:#fff}.gear-status-btn.gear-wish-upgrade{color:var(--gear-wish-upgrade);border-color:var(--gear-wish-upgrade)}.gear-status-btn.gear-wish-upgrade:hover{background:var(--gear-wish-upgrade);color:#000}.gear-status-btn.gear-wish-off-spec{color:var(--gear-wish-off-spec);border-color:var(--gear-wish-off-spec)}.gear-status-btn.gear-wish-off-spec:hover{background:var(--gear-wish-off-spec);color:#fff}.gear-status-btn.gear-wish-custom{color:var(--gear-wish-custom);border-color:var(--gear-wish-custom)}.gear-status-btn.gear-wish-custom:hover{background:var(--gear-wish-custom);color:#000}.gear-overview-table{font-size:.85rem}.gear-overview-table th,.gear-overview-table td{text-align:center;padding:.5rem .35rem}.gear-overview-slot-header{font-size:.65rem;min-width:30px}.gear-slot-abbr{cursor:help}.gear-overview-sticky-col{text-align:left!important;position:sticky;left:0;background:var(--bg-card);z-index:2;min-width:140px;padding-left:.75rem!important}.gear-overview-table thead .gear-overview-sticky-col{background:var(--bg-input)}.gear-overview-member{display:flex;align-items:center;gap:.35rem;white-space:nowrap;height:100%}.gear-overview-cell{padding:.5rem .2rem!important}.gear-dot{display:inline-block;width:14px;height:14px;border-radius:3px;border:1px solid rgba(255,255,255,.1)}.gear-status-bg-bis{background:var(--gear-bis)}.gear-status-bg-good{background:var(--gear-good)}.gear-status-bg-pre-raid-bis{background:var(--gear-pre-raid-bis)}.gear-status-bg-upgrade{background:var(--gear-upgrade)}.gear-status-bg-empty{background:var(--bg-dark);border-color:var(--border)}.wishlist-view-toggle{display:flex;gap:.35rem;margin-bottom:1rem}.wishlist-character-list{display:flex;flex-direction:column;gap:.5rem}.wishlist-member-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem;cursor:pointer;transition:border-color .15s}.wishlist-member-card:hover{border-color:var(--accent)}.wishlist-member-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.6rem}.wishlist-member-meta{color:var(--text-muted);font-size:.82rem}.wishlist-member-count{margin-left:auto;color:var(--text-muted);font-size:.78rem}.wishlist-item-grid{display:flex;flex-wrap:wrap;gap:.35rem}.wishlist-item-chip{display:inline-flex;align-items:center;gap:.3rem;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;padding:.25rem .55rem;font-size:.8rem}.wishlist-item-icon{width:18px;height:18px;border-radius:3px;border:1px solid var(--border);flex-shrink:0}.wishlist-item-name{font-weight:500}.wishlist-item-slot{color:var(--text-muted);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.wishlist-bis-until{color:var(--gear-bis);font-size:.7rem;font-weight:600}.phase-badge{font-size:.65rem;font-weight:700;background:var(--gear-bis);color:#000;padding:.05em .4em;border-radius:3px;letter-spacing:.03em}.wishlist-empty-note{color:var(--text-muted);font-size:.82rem;font-style:italic}.wishlist-item-list{display:flex;flex-direction:column;gap:.5rem}.wishlist-loot-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem}.wishlist-loot-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.wishlist-loot-icon{width:26px;height:26px;border-radius:4px;border:1px solid var(--border);flex-shrink:0}.wishlist-loot-name{font-weight:600;font-size:.95rem}.wishlist-loot-count{margin-left:auto;color:var(--text-muted);font-size:.78rem}.wishlist-loot-members{display:flex;flex-wrap:wrap;gap:.4rem}.wishlist-loot-member{display:inline-flex;align-items:center;gap:.3rem;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;padding:.25rem .6rem;font-size:.82rem;cursor:pointer;transition:border-color .15s}.wishlist-loot-member:hover{border-color:var(--accent)}.wishlist-loot-slot{color:var(--text-muted);font-size:.7rem;font-weight:600;text-transform:uppercase}.item-tooltip{display:flex;position:fixed;transform:translate(-50%) translateY(-100%);z-index:9999;background:#1a1a2e;border:1px solid #444;border-radius:6px;padding:.5rem .65rem;min-width:180px;max-width:260px;pointer-events:none;box-shadow:0 4px 16px #00000080;flex-direction:column;gap:.3rem}.item-tooltip-wrapper:hover>.item-tooltip{display:flex}.item-tooltip-header{display:flex;align-items:center;gap:.4rem}.item-tooltip-icon{width:28px;height:28px;border-radius:4px;border:1px solid #555;flex-shrink:0}.item-tooltip-name{font-weight:600;font-size:.85rem;line-height:1.2}.item-tooltip-detail{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.item-tooltip-slot{color:var(--text-muted)}.item-tooltip-status{font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.item-tooltip-bis{color:var(--gear-bis);font-size:.72rem;font-weight:500}.wishlist-loot-item-link{display:inline-flex;align-items:center;gap:.4rem}.wowhead-item-link{text-decoration:none;color:inherit;cursor:pointer}.wowhead-item-link:hover{text-decoration:none}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:3rem;text-align:center;max-width:400px;width:100%}.login-title{font-family:Cinzel,serif;font-size:2.4rem;color:var(--accent);letter-spacing:.05em;margin-bottom:.5rem}.login-subtitle{color:var(--text-muted);font-size:.95rem;margin-bottom:2rem}.btn-discord{display:inline-flex;align-items:center;gap:.5rem;background:#5865f2;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s}.btn-discord:hover{background:#4752c4}.dev-user-picker{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.dev-picker-label{color:var(--text-muted);font-size:.9rem;margin-bottom:.25rem}.dev-user-btn{display:flex;align-items:center;gap:1rem;width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;cursor:pointer;transition:all .15s;text-align:left;color:var(--text)}.dev-user-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent)}.dev-user-btn:disabled{opacity:.5;cursor:not-allowed}.dev-user-name{font-weight:600;font-size:1rem;min-width:5rem}.dev-user-roles{display:flex;flex-wrap:wrap;gap:.4rem}.dev-role-badge{font-size:.75rem;padding:.15rem .5rem;border:1px solid;border-radius:4px;white-space:nowrap}.guild-selector-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:3rem;text-align:center;max-width:480px;width:100%}.guild-list-section{margin-bottom:2rem}.guild-list-heading{font-size:1rem;color:var(--text-muted);margin-bottom:.75rem;font-weight:500}.guild-list{display:flex;flex-direction:column;gap:.5rem}.btn-guild-select{display:flex;justify-content:space-between;align-items:center;width:100%;background:var(--bg-input);border:1px solid var(--border);color:var(--text);padding:.75rem 1rem;border-radius:8px;font-size:.95rem;cursor:pointer;transition:all .15s}.btn-guild-select:hover{background:var(--bg-hover);border-color:var(--accent)}.guild-role-badge{font-size:.75rem;color:var(--accent);text-transform:uppercase;letter-spacing:.05em}.guild-create-section{border-top:1px solid var(--border);padding-top:1.5rem}.guild-create-form{display:flex;flex-direction:column;gap:.5rem}.input{font-family:inherit;font-size:.9rem;padding:.45rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-input);color:var(--text)}.input:focus{outline:none;border-color:var(--accent)}.guild-create-form .input{flex:1}.header-top{display:flex;justify-content:space-between;align-items:center}.profile-menu{position:relative}.profile-trigger{display:flex;align-items:center;gap:.5rem;background:var(--bg-input);border:1px solid var(--border);color:var(--text);padding:.4rem .65rem;border-radius:8px;cursor:pointer;transition:border-color .15s}.profile-trigger:hover{border-color:var(--accent)}.user-avatar{width:24px;height:24px;border-radius:50%}.profile-label{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.profile-guild{font-size:.75rem;font-weight:600;color:var(--accent)}.profile-username{font-size:.7rem;color:var(--text-muted)}.profile-chevron{font-size:.7rem;color:var(--text-muted);transition:transform .15s}.profile-chevron.open{transform:rotate(180deg)}.profile-dropdown{position:absolute;right:0;top:calc(100% + 6px);min-width:220px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:.4rem 0;z-index:100;box-shadow:0 8px 24px #0006}.dropdown-section{padding:.25rem 0}.dropdown-heading{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:.35rem .75rem .25rem;font-weight:600}.dropdown-item{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;color:var(--text);font-size:.85rem;padding:.45rem .75rem;cursor:pointer;text-align:left;transition:background .1s}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item.active{color:var(--accent);background:#f0a03014;border-left:2px solid var(--accent)}.dropdown-item.active .dropdown-item-name{font-weight:600}.dropdown-item-name{flex:1}.dropdown-item-role{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-left:.75rem}.dropdown-create-btn{color:var(--accent);font-size:.8rem}.dropdown-create-form{display:flex;gap:.35rem;padding:.35rem .6rem}.dropdown-create-form .input{flex:1;font-size:.8rem;padding:.3rem .5rem}.dropdown-divider{height:1px;background:var(--border);margin:.3rem 0}.dropdown-logout{color:var(--danger)}.dropdown-logout:hover{background:var(--bg-hover)}.btn-small{font-size:.8rem;padding:.3rem .6rem}.error-text{color:var(--danger);font-size:.85rem;margin-top:.5rem}.guild-settings-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.guild-rename-form{display:flex;gap:.5rem;align-items:center;margin-top:.75rem;max-width:400px}.guild-members-section{margin-bottom:2rem}.guild-member-user{display:flex;align-items:center;gap:.5rem}.user-avatar-sm{width:24px;height:24px;border-radius:50%}.guild-role-label{color:var(--text-muted);font-size:.85rem}.input-sm{padding:.25rem .5rem;font-size:.8rem}.guild-leave-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.claim-badge{display:inline-flex;align-items:center;margin-left:.5rem;font-size:.7rem;padding:.1rem .4rem;border-radius:4px;background:var(--bg-hover);color:var(--text-muted);font-weight:500;vertical-align:middle}.claim-badge.claim-mine{color:var(--accent);background:#f0a0301f;overflow:hidden;transition:padding .2s ease}.claim-unclaim{font-size:.85rem;width:0;overflow:hidden;opacity:0;transition:width .2s ease,opacity .2s ease,margin .2s ease;margin-left:0}.claim-badge:hover .claim-unclaim{width:.85rem;opacity:1;margin-left:.2rem}.btn-claim{margin-left:.5rem;font-size:.7rem;padding:.1rem .45rem;opacity:0;transition:opacity .15s;vertical-align:middle}.member-row:hover .btn-claim{opacity:1}.guild-claimed-chars{display:flex;flex-wrap:wrap;gap:.35rem}.guild-char-tag{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;padding:.2rem .55rem;border-radius:4px;background:var(--bg-hover);border:1px solid var(--border)}.guild-char-spec{font-weight:400;font-size:.72rem;color:var(--text-muted)}.guild-unclaimed-list{display:flex;flex-wrap:wrap;gap:.5rem}.guild-unclaimed-card{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .85rem;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;font-size:.85rem;min-width:140px}.text-muted{color:var(--text-muted);font-size:.85rem}.wcl-import-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:680px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.wcl-import-body{padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.wcl-source-tabs{display:flex;gap:.5rem}.wcl-form{display:flex;flex-direction:column;gap:.75rem}.wcl-label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--text-muted)}.wcl-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}.wcl-empty{text-align:center;color:var(--text-muted);padding:2rem 0}.wcl-review-header{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-muted)}.wcl-select-all{display:flex;align-items:center;gap:.4rem;cursor:pointer}.wcl-review-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.wcl-review-row{display:flex;gap:.75rem;align-items:flex-start;padding:.65rem .75rem;background:var(--bg-input);border-radius:8px;border:1px solid var(--border)}.wcl-row-disabled{opacity:.45}.wcl-row-check{padding-top:.2rem}.wcl-row-info{flex:1;display:flex;flex-direction:column;gap:.4rem}.wcl-row-name{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.wcl-badge{font-size:.7rem;padding:.1rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase}.wcl-badge-add{background:#40c06033;color:var(--success)}.wcl-badge-update{background:#f0a03033;color:var(--accent)}.wcl-badge-warn{background:#e0404033;color:var(--danger)}.wcl-row-fields{display:flex;gap:.4rem;flex-wrap:wrap}.wcl-row-fields .input{flex:1;min-width:100px}.wcl-done{text-align:center;padding:2rem 0}.wcl-done h4{font-family:Cinzel,serif;color:var(--accent);margin-bottom:.5rem}.role-editor{margin-top:.5rem}.role-editor-list{display:flex;flex-direction:column;gap:.35rem}.role-editor-row{display:flex;align-items:center;gap:.4rem;position:relative;background:var(--bg-card, #131926);border:1px solid var(--border);border-radius:4px;padding:.3rem .4rem;cursor:grab;z-index:0}.role-editor-row:active{cursor:grabbing;opacity:.7}.role-drag-handle{cursor:grab;color:var(--text-muted);font-size:1rem;-webkit-user-select:none;user-select:none;line-height:1}.role-icon-btn{background:none;border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:1.1rem;padding:.15rem .3rem;line-height:1}.role-icon-btn:hover{border-color:var(--accent)}.role-icon-picker{position:fixed;z-index:9999;background:var(--bg-card, #131926);border:1px solid var(--border);border-radius:6px;padding:.4rem;display:grid;grid-template-columns:repeat(6,1fr);gap:.2rem;box-shadow:0 4px 16px #000c;pointer-events:all}.role-icon-option{background:none;border:1px solid transparent;border-radius:4px;cursor:pointer;font-size:1.2rem;padding:.25rem;line-height:1}.role-icon-option:hover{background:var(--bg-input, #1a2235);border-color:var(--border)}.role-icon-option.selected{border-color:var(--accent);background:var(--bg-input, #1a2235)}.role-name-input{flex:1;min-width:0}.role-delete-btn{color:var(--danger);font-size:1.1rem;line-height:1;padding:.1rem .35rem}.role-add-btn{margin-top:.5rem}.guild-roles-actions{display:flex;gap:.5rem;margin-top:.5rem;align-items:center}.guild-settings-subtitle{font-family:Cinzel,serif;color:var(--accent);font-size:1rem;margin-top:1.2rem;margin-bottom:.5rem}.guild-roles-toggle{margin:.5rem 0;display:flex;align-items:center;gap:.75rem}.guild-roles-summary{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toolbar-actions{display:flex;gap:.5rem;align-items:center}.invite-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:560px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.invite-modal-body{padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.invite-create-row{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:.25rem}.invite-field-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--text-muted)}.invite-code{font-family:monospace;font-size:.9rem;color:var(--accent);background:var(--bg-input);padding:.15rem .4rem;border-radius:4px;border:1px solid var(--border)}.invite-actions{display:flex;gap:.5rem;align-items:center}.invite-page{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem;background:var(--bg-dark)}.invite-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:3rem;text-align:center;max-width:420px;width:100%;display:flex;flex-direction:column;align-items:center;gap:1.25rem}.invite-card--error{border-color:var(--danger)}.invite-label{color:var(--text-muted);font-size:.95rem}.invite-guild-name{font-family:Cinzel,serif;font-size:2rem;color:var(--accent);letter-spacing:.04em}.invite-hint{color:var(--text-muted);font-size:.85rem}.invite-error{color:var(--danger);font-size:.9rem}.btn-lg{padding:.75rem 1.75rem;font-size:1rem;font-weight:600}
