:root{--bg: #131212;--bg-elev: #050405;--bg-input: #26191d;--border: #4b3234;--text: #f2e8dc;--text-muted: #baaaa5;--accent: #e2b477;--accent-hover: #f2c88d;--danger: #e18983;--ok: #9ecb9c;--ok-border: #456247;--warn: #e6c65c;--radius: 8px;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}a{color:var(--accent)}h1,h2,h3{line-height:1.25;margin:0 0 .5rem}.muted{color:var(--text-muted)}.home-version{margin:2rem 0 .75rem;color:var(--text-muted);font-size:.75rem;text-align:center}.changelog-page{max-width:900px;margin:0 auto}.changelog-page>h1{margin:0 0 1.25rem}.changelog-release+.changelog-release{margin-top:1rem}.changelog-release-header,.changelog-release-meta{display:flex;align-items:center}.changelog-release-header{flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.changelog-release-header h2,.changelog-groups section:last-child ul{margin-bottom:0}.changelog-release-meta{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;color:var(--text-muted);font-size:.85rem}.changelog-groups{display:grid;gap:1rem;margin-top:1rem}.changelog-groups h3{margin-bottom:.35rem;font-size:1rem}.changelog-groups ul{margin:0;padding-left:1.25rem}.changelog-groups li+li{margin-top:.3rem}.raid-teams-page .page-heading,.raid-team-header,.raid-role-heading,.raid-team-savebar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.inline-checkbox{display:inline-flex;align-items:center;gap:.5rem;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.raid-team-header .eyebrow{display:block;margin-bottom:.3rem;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.raid-team-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.raid-team-actions input,.raid-team-actions select,.raid-team-actions>button{height:41px}.raid-team-info{display:grid;gap:.3rem;min-width:0}.raid-team-select{max-width:100%;font-size:1.15rem;font-weight:700}.raid-team-workspace{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr) minmax(240px,300px);gap:1.25rem;align-items:start}.raid-team-roster,.raid-coverage{min-width:0}.raid-character-list{position:sticky;top:1rem;display:grid;gap:.6rem;min-width:0;max-height:calc(100vh - 2rem);overflow-y:auto}.raid-character-filters{display:flex;flex-wrap:wrap;gap:.35rem 1rem}.raid-character-list ul{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.raid-character-list li{display:flex;align-items:center;gap:.5rem;min-width:0}.raid-comp-mark{display:inline-grid;flex:none;place-items:center;width:1.1rem;height:1.1rem;border:1px solid var(--border);border-radius:50%;font-size:.75rem;font-weight:700}.raid-comp-mark.is-here{border-color:var(--ok);color:var(--ok)}.raid-comp-mark.is-elsewhere{border-color:var(--warn);color:var(--warn)}.raid-comp-mark.is-archived{border-color:var(--text-muted);color:var(--text-muted)}.raid-role-heading h3,.raid-coverage-group h3,.raid-team-header p,.raid-team-header h2{margin:0}.raid-role-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;align-items:start}.raid-composition{padding:1rem}.raid-composition .raid-role-heading,.raid-bench .raid-role-heading{margin-bottom:.75rem}.raid-bench .raid-role-heading h3{margin-right:auto}.raid-group-grid{display:grid;gap:1rem .65rem}.raid-group-grid.groups-2{grid-template-columns:repeat(2,minmax(0,1fr))}.raid-group-grid.groups-4{grid-template-columns:repeat(4,minmax(0,1fr))}.raid-group{min-width:0;border-radius:var(--radius);transition:outline-color .15s,background-color .15s}.raid-character-list li,.raid-member-card{cursor:grab}.raid-member-card.is-readonly{cursor:default}.raid-character-list li.is-dragging,.raid-member-card.is-dragging{opacity:.45}.is-drop-candidate{outline:1px dashed var(--border);outline-offset:4px}.is-drop-target{outline:2px dashed var(--accent);outline-offset:4px;background-color:#e2b4770f}.raid-group-heading{display:flex;align-items:center;justify-content:center;gap:.35rem;margin-bottom:.35rem;color:var(--text-muted);font-size:.78rem}.raid-group-heading h4{margin:0;font-size:inherit}.raid-group-heading span{font-size:.7rem}.raid-group-slots{display:grid;gap:.25rem}.raid-group-slot{min-width:0;min-height:60px}.raid-group-empty{display:grid;width:100%;height:60px;padding:0;place-items:center;color:#756c69;background:transparent;border:1px solid #30292a;border-radius:4px;font-size:.72rem}.raid-group-empty:hover,.raid-group-empty:focus-visible{color:var(--accent-hover);border-color:var(--accent)}.raid-slot-picker-backdrop{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;padding:1rem;place-items:center;background:#000b}.raid-slot-picker{width:min(640px,100%);max-height:calc(100vh - 2rem);padding:1rem;overflow:hidden;background:#181113;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 40px #000d}.raid-slot-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.raid-slot-picker-heading h4,.raid-slot-picker p{margin:0}.raid-slot-character-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;max-height:min(420px,calc(100vh - 9rem));overflow-y:auto}.raid-slot-character-choice{display:grid;gap:.3rem;width:100%;min-width:0;padding:.5rem;text-align:left;background:var(--bg-input);border-left-width:4px}.raid-slot-character-choice small{overflow:hidden;color:var(--text-muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.raid-coverage-grid{display:grid;grid-template-columns:repeat(auto-fill,42px);gap:.5rem}.raid-member-card{min-height:60px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);min-width:0}.raid-member-card:focus-within,.raid-member-card.is-editing{border-color:var(--accent)}.raid-member-card-summary{display:grid;grid-template-columns:minmax(0,1fr);gap:.35rem;align-items:center;width:100%;min-height:58px;padding:.5rem;text-align:left;background:transparent;border:0;border-radius:inherit}.raid-member-card-status{font-size:.75rem}.raid-member-card-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;align-items:end;padding:.5rem;border-top:1px solid var(--border)}.raid-member-card-controls label{display:grid;gap:.25rem;color:var(--text-muted);font-size:.75rem}.raid-team-character-identity{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.55rem;align-items:center;min-width:0}.raid-member-card .raid-team-character-identity{grid-template-columns:22px minmax(0,1fr);gap:.4rem}.raid-member-card .raid-spec-icon{width:22px;height:22px;border-radius:4px}.raid-team-character-copy{display:grid;min-width:0}.raid-team-character-copy strong,.raid-team-character-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.raid-spec-icon,.raid-ability-icon{display:block;width:32px;height:32px;object-fit:cover;border:1px solid var(--border);border-radius:5px}.raid-team-character-identity .muted,.raid-ability small{font-size:.78rem}.raid-team-savebar{position:sticky;bottom:.75rem;padding:.75rem;margin-bottom:1.25rem;background:#181113;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 5px 20px #0009}.raid-ability{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:4px;border:1px solid transparent;border-radius:5px;outline:none}.raid-ability-tooltip{position:absolute;z-index:10;bottom:calc(100% + .5rem);left:0;display:none;width:max-content;max-width:240px;padding:.55rem .65rem;color:var(--text);background:#110c0e;border:1px solid var(--border);border-radius:5px;box-shadow:0 5px 20px #000b;pointer-events:none}.raid-ability-count{position:absolute;z-index:1;top:-5px;right:-5px;display:grid;min-width:18px;height:18px;padding:0 4px;place-items:center;color:#111;background:var(--ok);border:1px solid #111;border-radius:999px;font-size:.68rem;font-weight:800;line-height:1}.raid-ability.is-missing .raid-ability-count{color:var(--text-muted);background:#25191b;border-color:var(--border)}.raid-ability-tooltip:after{position:absolute;top:100%;left:20px;width:8px;height:8px;content:"";background:#110c0e;border-right:1px solid var(--border);border-bottom:1px solid var(--border);transform:translate(-50%,-4px) rotate(45deg)}.raid-ability-tooltip strong,.raid-ability-tooltip small{display:grid}.raid-ability:hover .raid-ability-tooltip,.raid-ability:focus-visible .raid-ability-tooltip{display:block}.raid-ability.is-covered{background:#19251b;border-color:var(--ok-border)}.raid-ability.is-missing{background:#25191b}.raid-ability:focus-visible{box-shadow:0 0 0 2px var(--accent)}.raid-ability.is-covered .raid-ability-icon{border-color:var(--ok-border)}.raid-ability.is-missing .raid-ability-icon{filter:grayscale(.75);opacity:.55}.raid-ability small{color:var(--text-muted);margin-top:.2rem}.danger-text{color:var(--danger)}.raid-team-workspace.is-readonly{grid-template-columns:minmax(0,1fr) minmax(240px,300px)}@media(max-width:1200px){.raid-team-workspace{grid-template-columns:minmax(200px,240px) minmax(0,1fr)}.raid-team-workspace.is-readonly{grid-template-columns:1fr}.raid-coverage{grid-column:1 / -1}}@media(max-width:850px){.raid-team-workspace{grid-template-columns:1fr}.raid-character-list{position:static;max-height:50vh}.raid-team-header,.raid-teams-page .page-heading{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.raid-group-grid.groups-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:390px){.raid-group-grid.groups-2,.raid-group-grid.groups-4{grid-template-columns:1fr}}.app-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;background:#000;border-bottom:1px solid #68453e}.topbar-head,.topbar-menu{display:flex;align-items:center}.topbar-menu{flex:1;min-width:0;gap:1rem}.menu-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;padding:0}.hamburger-lines{display:flex;flex-direction:column;gap:5px}.hamburger-lines span{display:block;width:20px;height:2px;border-radius:2px;background:currentColor}.brand{display:inline-flex;align-items:center;flex:none}.brand-logo{display:block;width:auto;height:4rem}.brand:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.nav{display:flex;gap:.25rem;flex-wrap:wrap;flex:1}.nav a{color:var(--text-muted);text-decoration:none;padding:.35rem .7rem;border-radius:var(--radius)}.nav-disabled{color:var(--text-muted);opacity:.5;padding:.35rem .7rem;border-radius:var(--radius);cursor:default}.nav a:hover{color:var(--text);background:#3a252a}.nav a.active{color:var(--accent-hover);background:#4a2b31}.user-chip{display:flex;align-items:center;gap:.6rem;color:var(--text-muted);font-size:.9rem}@media(max-width:1100px){.topbar{display:block;padding:.65rem 1rem}.topbar-head{justify-content:space-between}.brand-logo{height:3.25rem}.menu-toggle{display:flex}.menu-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar-menu{display:none;flex-direction:column;align-items:stretch;gap:.75rem;padding-top:.75rem}.topbar-menu.is-open{display:flex}.nav{flex-direction:column;flex-wrap:nowrap;gap:.15rem}.nav a,.nav-disabled{display:block;padding:.65rem .75rem}.user-chip{border-top:1px solid var(--border);padding:.9rem .75rem .25rem;flex-wrap:wrap;overflow-wrap:anywhere}}.role-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:.1rem .4rem;border-radius:999px;border:1px solid var(--border);color:var(--text-muted)}.role-switch{position:relative;display:inline-flex}.role-switch button.role-badge{background:transparent;cursor:pointer;line-height:inherit}.role-switch button.role-badge:hover,.role-switch button.role-badge.is-current{border-color:var(--accent);color:var(--text)}.role-switch .role-badge.is-previewing{color:var(--warn);border-color:var(--warn)}.role-switch-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:20;display:flex;flex-direction:column;align-items:stretch;gap:.3rem;padding:.4rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.content-row{display:grid;grid-template-columns:1fr minmax(0,1100px) 1fr;flex:1}.content{grid-column:2;grid-row:1;padding:1.5rem;max-width:1100px;width:100%;margin:0 auto}.poster-rail{display:none;grid-row:1;padding:1.5rem 1.25rem}.poster-rail-left{grid-column:1;justify-self:end}.poster-rail-right{grid-column:3;justify-self:start}.poster-frame{position:sticky;top:1.5rem;width:clamp(160px,calc((100vw - 1100px)/2 - 2.5rem),280px)}.poster-frame img,.poster-empty{display:block;width:100%;border:1px solid var(--border);border-radius:var(--radius)}.poster-frame img{height:auto;max-height:calc(100vh - 3rem);object-fit:contain;background:var(--bg-elev)}.poster-empty{aspect-ratio:1 / 2;background:var(--bg-elev)}@media(min-width:1480px){.poster-rail{display:block}}.panel{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem}.admin-section{padding:0;margin-bottom:.75rem}.admin-section>summary{display:flex;align-items:center;gap:.6rem;padding:.85rem 1.25rem;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.admin-section>summary::-webkit-details-marker{display:none}.admin-section>summary:before{content:"▸";color:var(--text-muted);transition:transform .15s}.admin-section[open]>summary:before{transform:rotate(90deg)}.admin-section>summary h2{margin:0;font-size:1.15rem}.admin-section-body{padding:0 1.25rem 1.25rem}.center-screen{min-height:100vh;display:grid;place-items:center;color:var(--text-muted)}.auth-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;width:min(420px,92vw)}button,.btn{font:inherit;cursor:pointer;border:1px solid var(--border);background:#362329;color:var(--text);padding:.5rem .9rem;border-radius:var(--radius);text-decoration:none;display:inline-block}button:hover,.btn:hover{border-color:var(--accent)}button:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}button:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:#211014;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{border-color:var(--danger);color:var(--danger);background:transparent}.btn-sm{padding:.3rem .6rem;font-size:.85rem}input,select,textarea{font:inherit;background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .65rem;width:100%}select{color-scheme:dark}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-grid;flex:none;place-content:center;width:1.1rem;height:1.1rem;margin:0;padding:0;border:1px solid var(--border);border-radius:4px;background:var(--bg-input);cursor:pointer;vertical-align:middle;transition:background-color .15s,border-color .15s}input[type=checkbox]:before{content:"";width:.3rem;height:.6rem;border:solid #211014;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg) scale(0);transition:transform .12s}input[type=checkbox]:hover{border-color:var(--accent)}input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked:before{transform:translateY(-1px) rotate(45deg) scale(1)}input[type=checkbox]:disabled{opacity:.5;cursor:default}select option,select optgroup{background-color:var(--bg-input);color:var(--text)}label{display:block;margin-bottom:.75rem;font-size:.9rem;color:var(--text-muted)}label span{display:block;margin-bottom:.25rem}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.55rem .6rem;border-bottom:1px solid var(--border);vertical-align:middle}th{color:var(--text-muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.table-scroll{overflow-x:auto}.character-row{cursor:pointer}.roster-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;align-items:end;margin:1rem 0}.roster-filters label{margin:0}.character-row:hover,.character-row:focus-within{background:#352228}.character-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.character-description{white-space:pre-wrap;overflow-wrap:anywhere}.roster-title{display:flex;align-items:baseline;gap:.5rem;margin:0}.roster-title .role-badge{font-size:.85rem;padding:.15rem .6rem;text-transform:none;letter-spacing:normal}.roster-heading{gap:1rem}.roster-heading .inline-checkbox{margin:0}.roster-columns{--roster-height: 30rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.roster-column-stack{display:grid;grid-template-rows:1fr 1fr;gap:1rem;height:var(--roster-height);min-height:0}.roster-column{display:flex;flex-direction:column;min-height:0;height:var(--roster-height);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elev)}.roster-column-stack .roster-column{height:auto}.roster-column h2{margin:0;padding:.6rem .8rem;font-size:1rem;border-bottom:1px solid var(--border)}.roster-column-list{list-style:none;margin:0;padding:.3rem;overflow-y:auto;flex:1;min-height:0}.roster-column-list{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.roster-column-list::-webkit-scrollbar{width:8px}.roster-column-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.roster-column-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.roster-entry{display:flex;align-items:center;gap:.5rem;padding:.3rem .4rem;border-radius:6px}.roster-spec-icon{flex:none;width:24px;height:24px;object-fit:cover;border:1px solid var(--border);border-radius:4px}.roster-entry-name{display:flex;align-items:center;gap:.4rem;flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}.roster-entry .row-actions{flex:none;flex-wrap:nowrap}.roster-summaries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.roster-summary{align-self:start;border:1px solid var(--border);border-radius:var(--radius)}.roster-summary th,.roster-summary td{padding:.15rem .6rem;line-height:1.3}.roster-summary tr:last-child td{border-bottom:0}.roster-summary td:not(:first-child),.roster-summary th:not(:first-child){text-align:right}@media(max-width:900px){.roster-columns,.roster-summaries{grid-template-columns:minmax(0,1fr)}.roster-columns{--roster-height: 20rem}.roster-column-stack{height:auto;grid-template-rows:none}.roster-column-stack .roster-column{height:var(--roster-height)}}.pill{font-size:.75rem;padding:.12rem .5rem;border-radius:999px;border:1px solid var(--border)}.pill.pending{color:var(--accent-hover);border-color:#715336}.pill.approved{color:var(--ok);border-color:var(--ok-border)}.pill.revoked{color:var(--danger);border-color:#70403e}.row-actions{display:flex;gap:.4rem;flex-wrap:wrap}.banner{padding:.6rem .9rem;border-radius:var(--radius);margin-bottom:1rem;border:1px solid var(--border)}.banner.error{color:var(--danger);border-color:#70403e;background:#301a1e}.stack{display:flex;flex-direction:column;gap:.75rem}.inline{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.divider{height:1px;background:var(--border);margin:1.25rem 0}.character-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin:1.5rem 0 1rem}.character-tabs button{border-radius:var(--radius) var(--radius) 0 0;padding:.8rem .5rem}.character-tabs button[aria-selected=true]{background:var(--bg-elev);border-color:var(--accent);color:var(--accent-hover);font-weight:700}.section-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.section-select{margin:.75rem 0;min-width:min(260px,100%)}.table-sort{border:0;background:transparent;color:inherit;padding:0;font-size:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit}.gear-grid-group{margin-top:.25rem}.gear-grid-group h4{margin:0 0 .35rem}.gear-grid{width:869px;table-layout:fixed;border-collapse:collapse}.gear-grid th,.gear-grid td{width:36px;padding:2px;text-align:center}.gear-grid tbody td{box-shadow:inset 0 0 0 1px #f2c88d73}.gear-grid th:first-child{width:155px;text-align:left;padding:.2rem .35rem;position:sticky;left:0;z-index:1;background:var(--bg-elev)}.gear-grid th small{display:block;font-weight:400}.gear-grid th:first-child a,.gear-grid th:first-child small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gear-grid .gear-grid-bis-pct{width:46px;font-size:.78rem;color:var(--text-muted)}.gear-grid .gear-grid-updated{width:56px;font-size:.85rem;color:var(--text-muted);white-space:nowrap}.gear-grid td a{display:block;padding:.15rem 0;color:inherit;text-decoration:none}.gear-grid td a :is([class*=icon],ins)~[aria-hidden=true]{display:none}.gear-grid td a [class*=icon]{vertical-align:middle}.gear-grid-bis{background:#1d684b;color:#fff}.gear-grid-owned{background:#245a8c;color:#fff}.gear-grid-owned-pct{display:block;font-size:.7rem;color:#7fb2e5}.gear-grid-other,.gear-grid-unknown{background:#8b6817;color:#fff}.gear-grid-empty{color:var(--muted, #888)}.gear-grid td a:focus-visible{outline:3px solid #fff;outline-offset:-3px}.bis-tooltip{position:fixed;top:0;left:0;z-index:9999;max-width:260px;padding:5px 8px;font-size:.9rem;line-height:1.35;color:#fff;background:#000;border:1px solid #4b4b4b;border-radius:4px;box-shadow:0 2px 8px #0000007f;pointer-events:none}.bis-tooltip .bis-tooltip-label{display:block;color:#ffd100;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.bis-tooltip .bis-tooltip-name{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.announcement-editor{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.announcement-list{margin-top:1rem}.announcement-card{padding:1rem 0;border-top:1px solid var(--border)}.announcement-card h3{margin-bottom:.15rem}.announcement-meta{margin:0;font-size:.8rem}.announcement-body{margin:.75rem 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.guild-tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:1rem}.guild-tools-column{min-width:0}.guild-tools-column+.guild-tools-column{padding-left:1.5rem;border-left:1px solid var(--border)}.addon-link-form{margin-top:.75rem}.addon-link-list{list-style:none;margin:.75rem 0 0;padding:0}.addon-link-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.5rem 0;border-top:1px solid var(--border)}.addon-link-list li>div{min-width:0;overflow-wrap:anywhere}.addon-link-list p{margin:.15rem 0 0;font-size:.85rem}.addon-commands{margin-top:1rem}.addon-commands summary{cursor:pointer;font-weight:600}.addon-commands dl{margin:.5rem 0 0}.addon-commands dl>div{padding:.2rem 0}.addon-commands dt code{color:var(--accent)}.addon-commands dd{margin:.15rem 0 0;color:var(--text-muted);font-size:.9rem}@media(max-width:760px){.guild-tools-grid{grid-template-columns:1fr}.guild-tools-column+.guild-tools-column{padding-left:0;padding-top:1rem;border-left:0;border-top:1px solid var(--border)}}.field-error{color:var(--danger)}.import-hint{align-self:center;color:var(--text-muted);font-size:.8rem}.gear-set-manager{padding:1rem}.gear-set-manager-toolbar{display:grid;grid-template-columns:minmax(190px,260px) minmax(0,1fr);gap:1rem;align-items:stretch}.gear-set-manager-selector,.gear-set-manager-imports{display:flex;flex-direction:column;justify-content:flex-end;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);background:#26191d59}.gear-set-manager-selector .section-select{min-width:0;margin:0}.gear-set-manager-hint{margin-bottom:.25rem;font-size:.9rem;color:var(--text-muted)}.gear-set-manager-imports .row-actions{min-height:2.6rem;align-items:center}.gear-set-manager-content{margin-top:1rem}.gear-set-card{border:1px solid var(--border);border-radius:var(--radius);overflow:visible;background:#1312128c}.gear-set-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;border-bottom:1px solid var(--border)}.gear-set-card-title{min-width:0}.gear-set-card-title h3{margin:0}.gear-set-actions{justify-content:flex-end;max-width:600px}.gear-set-card>form,.gear-set-card>.stack,.gear-set-card>.banner{margin-right:1rem;margin-left:1rem}.gear-paperdoll{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,10vw,8rem);min-height:520px;padding:1rem}.gear-paperdoll-column{display:flex;flex-direction:column;gap:.55rem}.gear-paperdoll-slot{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:.75rem;min-height:52px}.gear-paperdoll-slot-right{grid-template-columns:minmax(0,1fr) 52px}.gear-paperdoll-slot-right .gear-slot-icon{grid-column:2;grid-row:1}.gear-paperdoll-slot-right .gear-paperdoll-slot-copy{grid-column:1;grid-row:1;align-items:flex-end;text-align:right}.gear-slot-icon{position:relative;width:48px;height:48px;display:grid;place-items:center;overflow:hidden;border:2px solid var(--border);border-radius:5px;background:#170f12;color:var(--text-muted);text-decoration:none;box-shadow:inset 0 0 12px #00000073}.gear-slot-icon-filled{border-color:#806344;color:var(--accent-hover)}.gear-slot-icon-filled:hover{border-color:var(--accent-hover)}.gear-slot-icon-filled [class*=icon]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.79);transform-origin:center}.gear-slot-icon-filled :is([class*=icon],ins)~.gear-slot-icon-fallback{display:none}.gear-slot-icon-fallback{font-size:1rem;font-weight:700;text-transform:uppercase}.gear-slot-icon-empty{border-style:dashed;opacity:.72}.gear-slot-icon-action{padding:0;cursor:pointer}.gear-paperdoll-slot-copy{min-width:0;display:flex;flex-direction:column;gap:.1rem}.gear-paperdoll-item-name{max-width:100%;overflow:hidden;color:var(--text);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.gear-paperdoll-item-name a{display:block;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.gear-paperdoll-item-name a :is([class*=icon],ins){display:none}.gear-paperdoll-item-name.muted{color:var(--text-muted);font-weight:400}.gear-paperdoll-enchant{max-width:100%;overflow:hidden;color:var(--text-muted);font-size:.72rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.gear-paperdoll-enchant a{color:inherit}.gear-slot-editor{margin-top:0!important}.gear-slot-editor-hint{margin:1rem 0 0;font-size:.85rem}.gear-slot-picker-label{width:fit-content;max-width:100%;display:inline-flex;align-items:center;gap:.35rem;text-align:inherit}.gear-slot-picker-label a[role=button],.slot-choice a[role=button]{cursor:pointer}.gear-slot-picker-name-button{padding:0;border:0;background:transparent;color:inherit;font:inherit}.gear-slot-picker-name-button:hover{border-color:transparent;color:var(--accent-hover)}.gear-paperdoll-slot-right .gear-slot-picker-label{justify-content:flex-end}.gear-slot-choices-popover{position:absolute;z-index:20;top:calc(100% + .25rem);left:0;width:min(360px,calc(100vw - 4rem));max-height:280px;overflow-y:auto;box-shadow:0 12px 30px #000000a6}.gear-paperdoll-slot-right .gear-slot-choices-popover{right:0;left:auto}.gear-slot-no-options{margin:.6rem 0 0;font-size:.8rem}.wishlist-builder{display:flex;flex-direction:column;gap:1rem;margin:1rem 0 1.25rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:#1312128c}.wishlist-builder-heading,.wishlist-selection-heading,.wishlist-catalog-title,.wishlist-builder-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.wishlist-builder-heading h3,.wishlist-builder-heading p,.wishlist-link-panel h4,.wishlist-link-panel p,.wishlist-empty-state p{margin:0}.wishlist-builder-heading p,.wishlist-link-panel p{margin-top:.25rem;font-size:.85rem}.wishlist-picker-tabs{display:flex;flex:none;gap:.4rem}.wishlist-catalog-panel,.wishlist-link-panel,.wishlist-selection{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elev)}.wishlist-search{margin:0;padding:.9rem;border-bottom:1px solid var(--border)}.wishlist-catalog-browser{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,1fr) minmax(280px,2fr);min-height:390px}.wishlist-catalog-column,.wishlist-catalog-items{min-width:0;max-height:480px;overflow-y:auto;padding:.75rem}.wishlist-catalog-column{display:flex;flex-direction:column;gap:.3rem;border-right:1px solid var(--border)}.wishlist-catalog-column>strong{padding:.25rem .45rem .45rem;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.wishlist-catalog-column button{padding:.45rem .55rem;border-color:transparent;background:transparent;text-align:left}.wishlist-catalog-column button:hover,.wishlist-catalog-column button.is-active{border-color:var(--border);background:#362329}.wishlist-catalog-column button.is-active{color:var(--accent-hover);box-shadow:inset 3px 0 var(--accent)}.wishlist-catalog-title{margin-bottom:.65rem;padding-bottom:.6rem;border-bottom:1px solid var(--border)}.wishlist-item-choices{display:flex;flex-direction:column;gap:.35rem}.wishlist-item-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:42px;padding:.4rem .5rem;border:1px solid transparent;border-radius:var(--radius);background:#36232973}.wishlist-item-choice:hover,.wishlist-item-choice.is-selected{border-color:#806344}.wishlist-item-choice.is-selected{background:#3c2b26}.wishlist-item-choice a{min-width:0;overflow-wrap:anywhere;text-decoration:none}.wishlist-search-results{min-height:240px;max-height:480px;overflow-y:auto;padding:.9rem}.wishlist-empty-state{display:grid;justify-items:start;gap:.75rem;padding:1.25rem 0;color:var(--text-muted)}.wishlist-link-panel{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr);gap:1.25rem;padding:1rem}.wishlist-selection{display:flex;flex-direction:column;gap:1rem;padding:1rem}.wishlist-selection-heading>div:first-child{display:flex;flex-direction:column;gap:.2rem}.wishlist-step-label{color:var(--text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.wishlist-drop-sources{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.wishlist-drop-sources>.muted{margin-right:.2rem;font-size:.82rem}.wishlist-drop-sources .pill{display:inline-flex;align-items:center}.wishlist-drop-sources .pill button{margin-left:.35rem;padding:0;border:0;background:none;color:inherit;line-height:1}.wishlist-source-picker,.wishlist-target-fields{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(280px,1.25fr);gap:1rem;align-items:start}.wishlist-source-picker label,.wishlist-target-fields label{margin:0}.wishlist-source-picker fieldset{margin:0;padding:0;border:0;color:var(--text-muted);font-size:.9rem}.wishlist-source-picker legend{margin-bottom:.35rem}.wishlist-source-options{display:flex;flex-wrap:wrap;gap:.5rem .9rem}.wishlist-source-options label{display:inline-flex;align-items:center;gap:.35rem;color:var(--text);font-weight:400}.wishlist-source-options input{width:auto;margin:0}.wishlist-source-options span{margin:0}.wishlist-target-fields{padding-top:1rem;border-top:1px solid var(--border)}.wishlist-target-fields small{display:block;margin-top:.4rem;color:var(--text-muted);font-size:.75rem;font-weight:400;line-height:1.35}.wishlist-builder-actions{justify-content:flex-start}.gear-slot-editor-actions{padding:0 0 1rem}.slot-choices{margin-top:.4rem;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input)}.slot-choice{display:flex;align-items:center;gap:.6rem;padding:.35rem 0}.slot-choice+.slot-choice{border-top:1px solid var(--border)}.slot-choice a{min-width:0;overflow-wrap:anywhere}@media(max-width:760px){.wishlist-builder-heading,.wishlist-selection-heading{align-items:flex-start;flex-direction:column}.wishlist-picker-tabs{width:100%}.wishlist-picker-tabs button{flex:1}.wishlist-catalog-browser{grid-template-columns:1fr}.wishlist-catalog-column,.wishlist-catalog-items{max-height:300px;border-right:0;border-bottom:1px solid var(--border)}.wishlist-link-panel,.wishlist-source-picker,.wishlist-target-fields,.gear-set-manager-toolbar{grid-template-columns:1fr}.gear-set-card-header{flex-direction:column}.gear-set-actions{justify-content:flex-start}.gear-paperdoll{grid-template-columns:1fr;gap:.55rem;min-height:0}.gear-paperdoll-slot-right{grid-template-columns:52px minmax(0,1fr)}.gear-paperdoll-slot-right .gear-slot-icon,.gear-paperdoll-slot-right .gear-paperdoll-slot-copy{grid-column:auto;grid-row:auto}.gear-paperdoll-slot-right .gear-paperdoll-slot-copy{align-items:flex-start;text-align:left}.gear-paperdoll-slot-right .gear-slot-picker-label{justify-content:flex-start}.gear-paperdoll-slot-right .gear-slot-choices-popover{right:auto;left:0}}.assignments-page{display:flex;flex-direction:column;gap:1rem}.assignment-viewer-title p,.assignment-empty-state p{margin:0}.assignments-save-actions{justify-content:flex-end}.assignment-boss-select{width:auto;max-width:100%;font-size:1.3rem;font-weight:700}.assignment-phase-tabs{display:flex;min-width:0;gap:.4rem;overflow-x:auto;padding:.15rem .1rem .35rem}.assignment-phase-tabs button{flex:none;padding:.45rem .75rem;white-space:nowrap}.assignment-phase-tabs button.is-active,.assignment-phase-tabs button[aria-selected=true]{border-color:var(--accent);background:#4a2b31;color:var(--accent-hover)}.assignment-viewer{display:flex;flex-direction:column;gap:.85rem}.assignment-viewer-title{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem}.assignment-updated{font-size:.82rem}.assignment-viewer-controls{display:flex;align-items:center;gap:.4rem;min-width:0}.assignment-video-button{flex:none;padding:.45rem .75rem;white-space:nowrap}.assignment-video-dialog{width:min(960px,calc(100vw - 32px));max-width:none;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);color:var(--text)}.assignment-video-dialog::backdrop{background:#000000b3}.assignment-video-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.6rem}.assignment-video-frame{aspect-ratio:16 / 9}.assignment-video-frame iframe{display:block;width:100%;height:100%;border:0}.assignment-editor-fields{display:flex;flex-wrap:wrap;gap:1rem}.assignment-video-url{width:min(420px,100%);margin:0}.assignment-video-url input[aria-invalid=true]{border-color:var(--danger)}.assignment-canvas{position:relative;width:100%;aspect-ratio:1386 / 780;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:#050405;box-shadow:0 10px 28px #00000052;isolation:isolate}.assignment-canvas.is-placing{cursor:crosshair;border-color:var(--accent)}.assignment-map,.assignment-marker-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.assignment-map{display:block;object-fit:contain;-webkit-user-select:none;user-select:none}.assignment-marker-layer{pointer-events:none}.assignment-marker{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;width:clamp(15px,2vw,26px);height:clamp(15px,2vw,26px);padding:0;border:0;border-radius:50%;background:transparent;transform:translate(-50%,-50%);pointer-events:auto;filter:drop-shadow(0 2px 3px rgb(0 0 0 / 85%))}.assignment-marker-boss{width:clamp(30px,4vw,52px);height:clamp(30px,4vw,52px)}.assignment-marker-editable{cursor:grab;touch-action:none}.assignment-marker-editable:active{cursor:grabbing}.assignment-marker-editable.is-selected{outline:3px solid #fff;outline-offset:2px;z-index:3}.assignment-marker-icon{display:block;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.assignment-marker-icon-class{border-radius:50%}.assignment-marker-label{position:absolute;top:calc(100% + 2px);left:50%;width:max-content;max-width:150px;padding:.08rem .3rem;overflow:hidden;border-radius:3px;background:#000000c7;color:#fff;font-size:clamp(.62rem,1.25vw,.78rem);font-weight:700;line-height:1.25;text-overflow:ellipsis;text-shadow:0 1px 2px #000;white-space:nowrap;transform:translate(-50%);pointer-events:none}.assignment-phase-notes p{margin:.5rem 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.assignment-empty-state{text-align:center}.assignment-editor,.assignment-editor-main{display:flex;flex-direction:column;gap:1rem}.assignment-phase-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.assignment-phase-toolbar .assignment-phase-tabs{flex:1}.assignment-phase-actions{flex:none;justify-content:flex-end}.assignment-phase-name{width:min(420px,100%);margin:0}.assignment-editor-layout{display:grid;grid-template-columns:minmax(190px,230px) minmax(0,1fr);gap:1rem;align-items:start}.assignment-palette{position:sticky;top:1rem;display:flex;flex-direction:column;gap:1rem;max-height:calc(100vh - 2rem);padding:.9rem;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elev)}.assignment-palette h3{margin-bottom:.4rem;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.assignment-palette-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.assignment-palette-grid button{display:flex;flex-direction:column;align-items:center;gap:.2rem;min-width:0;padding:.35rem .2rem;border-color:transparent;background:#26191d;font-size:.66rem}.assignment-palette-grid button:hover,.assignment-palette-grid button.is-active{border-color:var(--accent)}.assignment-palette-grid button.is-active{background:#4a2b31;color:var(--accent-hover)}.assignment-palette-grid img{width:32px;height:32px;border-radius:50%;object-fit:contain}.assignment-palette-grid span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-placement-hint{margin:0;color:var(--accent-hover);font-size:.8rem}.assignment-marker-inspector{display:grid;grid-template-columns:minmax(140px,auto) minmax(220px,1fr) auto;align-items:end;gap:.75rem}.assignment-marker-inspector strong{align-self:center}.assignment-marker-inspector label,.assignment-notes-editor{margin:0}.assignment-notes-editor textarea{resize:vertical}@media(max-width:900px){.assignment-viewer-title,.assignment-phase-toolbar{align-items:stretch;flex-direction:column}.assignment-editor-layout{grid-template-columns:1fr}.assignment-palette{position:static;max-height:none}.assignment-palette-grid{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}}@media(max-width:620px){.assignments-heading,.assignments-save-actions{align-items:stretch;flex-direction:column}.assignments-save-actions button{width:100%}.assignment-phase-actions{justify-content:flex-start}.assignment-marker-inspector{grid-template-columns:1fr;align-items:stretch}.assignment-canvas{border-radius:4px}.assignment-marker{width:clamp(13px,4vw,20px);height:clamp(13px,4vw,20px)}.assignment-marker-boss{width:clamp(26px,8vw,40px);height:clamp(26px,8vw,40px)}}.clip-sort{margin-top:1rem}.clip-sort button.is-active{border-color:var(--accent);color:var(--accent)}.clip-list{list-style:none;margin:.75rem 0 0;padding:0}.clip-card{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-top:1px solid var(--border)}.clip-votes{display:flex;flex:none;flex-direction:column;align-items:center;min-width:2.5rem}.clip-vote{padding:.1rem .5rem;font-size:.8rem;line-height:1.2;background:transparent;border-color:transparent;color:var(--text-muted)}.clip-vote.is-active{color:var(--accent)}.clip-score{font-variant-numeric:tabular-nums}.clip-info{flex:1;min-width:0}.clip-info h3{margin:0 0 .15rem;overflow-wrap:anywhere}@media(max-width:600px){.clip-card{flex-wrap:wrap}.clip-card .row-actions{width:100%;padding-left:3.5rem}}.info-tip{position:relative;display:inline-block;margin-left:.4em;vertical-align:middle;font-size:1rem;font-weight:400;line-height:1}.info-tip-button{display:inline-grid;place-items:center;width:1.25rem;height:1.25rem;padding:0;color:var(--text-muted);background:transparent;border:1.5px solid currentColor;border-radius:999px;font-size:.8rem;font-weight:800;line-height:1}.info-tip-button:hover,.info-tip-button.is-pinned,.info-tip-button[aria-expanded=true]{color:var(--accent);border-color:currentColor}.info-tip-popover{position:absolute;z-index:20;top:calc(100% + .5rem);left:-.5rem;display:block;width:max-content;max-width:min(340px,calc(100vw - 32px));max-height:60vh;overflow-y:auto;padding:.65rem .8rem;color:var(--text);background:#110c0e;border:1px solid var(--border);border-radius:5px;box-shadow:0 5px 20px #000b;font-size:.85rem;line-height:1.45;text-align:left;text-transform:none;letter-spacing:normal;white-space:normal}.info-tip-popover:before{position:absolute;bottom:100%;left:0;width:100%;height:.6rem;content:""}.info-tip-popover>span+span{display:block;margin-top:.5rem}.info-tip-legend{display:grid;gap:.3rem;margin-bottom:.5rem}.info-tip-legend>span{display:flex;align-items:center;gap:.5rem}.info-tip-swatch{flex:none;width:.9rem;height:.9rem;border:1px solid var(--border);border-radius:3px}.loot-reassign-dialog{width:min(480px,calc(100vw - 32px));padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elev);color:var(--text)}.loot-reassign-dialog::backdrop{background:#000000b3}.loot-reassign-dialog .inline-checkbox{margin-bottom:.5rem}.loot-reassign-dialog h3{margin-top:0}.loot-reassign-matches{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0 .75rem;padding:0;list-style:none}.loot-log-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.loot-log-select{width:1.5rem}
