:root{font-family:system-ui,sans-serif;background:#1a1a1a;color:#e8e4d2}body{margin:0}.topbar{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1.5rem;background:#0f0f0f;border-bottom:1px solid #3a3a3a}.topbar .brand{font-weight:700;font-size:1.1rem;color:#e6c67a;text-decoration:none}.topbar nav a{color:#e8e4d2;text-decoration:none;margin-right:1rem}.quick-find{position:relative;margin-left:auto;min-width:18rem}.quick-find input{width:100%;box-sizing:border-box;background:#262626;color:#e8e4d2;border:1px solid #3a3a3a;border-radius:4px;padding:.4rem .6rem;font:inherit}.quick-find input:focus{outline:none;border-color:#e6c67a}.search-all-section h2{margin:0 0 .4rem;font-size:1rem;color:#e6c67a;text-transform:uppercase;letter-spacing:.05em}.search-all-section+.search-all-section{margin-top:1.25rem}.search-all-list{list-style:none;margin:0;padding:0}.search-all-list li{padding:.3rem 0;border-bottom:1px solid #2a2a2a}.search-all-list li:last-child{border-bottom:none}.class-level-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));gap:.4rem .75rem}.class-level-row{display:flex;align-items:center;gap:.4rem;background:#262626;border:1px solid #3a3a3a;border-radius:4px;padding:.25rem .4rem}.class-level-row .class-level-code{color:#e6c67a;font-weight:600;min-width:2.5rem}.class-level-row input{flex:1;min-width:0;background:#1a1a1a;color:#e8e4d2;border:1px solid #2a2a2a;border-radius:3px;padding:.2rem .35rem;font:inherit}.dynamic-row{display:flex;gap:.4rem;margin-bottom:.35rem}.dynamic-row input{flex:1;min-width:0}.dynamic-row-pair input:first-of-type{flex:2}.dynamic-row-pair input[type=number]{flex:1;max-width:8rem}.dynamic-row-triple input:nth-of-type(1){flex:2}.dynamic-row-triple input:nth-of-type(2){flex:1;max-width:12rem}.dynamic-row-triple input[type=number]{flex:0 0 5rem;max-width:5rem}.dynamic-row-source .typeahead-picker{flex:1;min-width:10rem}.dynamic-row-source input,.dynamic-row .token-input{flex:1;min-width:0}.btn.small{padding:.25rem .6rem;font-size:.8rem}.npc-items-list{list-style:none;padding:0;margin:0 0 .5rem}.npc-items-list li{display:flex;justify-content:space-between;padding:.3rem .5rem;background:#262626;border:1px solid #3a3a3a;border-radius:4px;margin-bottom:.3rem}.detail-sub{margin:.75rem 0 .3rem;font-size:.9rem;color:#e6c67a;text-transform:uppercase;letter-spacing:.05em}.faction-pos{color:#8ae08a}.faction-neg{color:#ff8a8a}.page{max-width:960px;margin:0 auto;padding:1.5rem}.breadcrumbs{font-size:.85rem;margin-bottom:1rem;color:#8a8476}.breadcrumbs a{color:#b8b3a0;text-decoration:none}.breadcrumbs a:hover{color:#e6c67a;text-decoration:underline}.breadcrumbs .breadcrumb-sep{margin:0 .4rem;color:#5a5648}.breadcrumbs .current{color:#e8e4d2}h1{margin-top:0;color:#e6c67a}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem 1rem}.form-grid .full{grid-column:1 / -1}.form-grid .half{grid-column:span 2}.field{display:flex;flex-direction:column;font-size:.85rem}.field label{margin-bottom:.25rem;color:#b8b3a0}.field input,.field select{background:#262626;color:#e8e4d2;border:1px solid #3a3a3a;border-radius:4px;padding:.4rem .5rem;font:inherit}.field input[type=checkbox]{align-self:flex-start;width:1rem;height:1rem}.checkbox-row{display:flex;flex-direction:row;align-items:center;gap:.5rem}.chip-group{display:flex;flex-wrap:wrap;gap:.35rem}.chip{padding:.3rem .6rem;border-radius:999px;border:1px solid #3a3a3a;background:#262626;color:#e8e4d2;cursor:pointer;font-size:.8rem}.chip.selected{background:#4a3a12;border-color:#e6c67a;color:#e6c67a}.section-title{grid-column:1 / -1;margin:1rem 0 .25rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#b8b3a0;border-bottom:1px solid #3a3a3a;padding-bottom:.25rem}.actions{grid-column:1 / -1;display:flex;gap:.75rem;margin-top:1rem}.btn{padding:.5rem 1rem;border:1px solid #e6c67a;background:#4a3a12;color:#e6c67a;border-radius:4px;cursor:pointer;font:inherit}.btn:disabled{opacity:.6;cursor:not-allowed}.error{color:#ff8a8a}.success{color:#8ae08a}.muted{color:#8a8476;font-style:italic}.hint{color:#8a8476;font-size:.85rem;margin:0 0 .5rem}.search-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.search-section{border:1px solid #3a3a3a;border-radius:6px;padding:1rem;background:#1f1f1f}.search-section h2{margin:0 0 .5rem;font-size:1rem;color:#e6c67a;text-transform:uppercase;letter-spacing:.05em}.filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem 1rem;margin-bottom:.75rem}.sort-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.sort-chip{display:flex;align-items:center;gap:.25rem;background:#4a3a12;border:1px solid #e6c67a;color:#e6c67a;padding:.25rem .5rem;border-radius:4px;font-size:.85rem}.sort-index{color:#b8b3a0;font-weight:600}.sort-label{min-width:3ch}.icon-btn{background:transparent;color:inherit;border:none;cursor:pointer;font:inherit;padding:0 .15rem;line-height:1}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.remove{color:#ff8a8a}.sort-add{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.sort-add select{background:#262626;color:#e8e4d2;border:1px solid #3a3a3a;border-radius:4px;padding:.3rem .5rem}.flags-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}.flags-row .checkbox-row{flex-direction:row}.btn.ghost{background:transparent;color:#e6c67a}.btn.danger{background:transparent;color:#e4a0a0;border-color:#8a3333}.btn.danger:hover:not(:disabled){background:#3a1414;color:#f0c0c0}.btn.danger:disabled{opacity:.5;cursor:not-allowed}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;color:#b8b3a0;font-size:.9rem}.results-header>div{display:flex;gap:.5rem}.results-table{width:100%;border-collapse:collapse;font-size:.9rem}.results-table th,.results-table td{text-align:left;padding:.4rem .6rem;border-bottom:1px solid #2a2a2a}.results-table th{color:#b8b3a0;font-weight:600;background:#1a1a1a;position:sticky;top:0}.results-table td.num{text-align:right;font-variant-numeric:tabular-nums}.flag{display:inline-block;padding:.1rem .4rem;border-radius:3px;font-size:.7rem;font-weight:600;margin-right:.25rem;background:#2a2a2a;color:#b8b3a0}.flag.nd{color:#ff8a8a}.flag.mg{color:#8a9fff}.flag.lr{color:#e6c67a}.flag.nr{color:#c08aff}.name-search{width:100%;box-sizing:border-box;background:#262626;color:#e8e4d2;border:1px solid #3a3a3a;border-radius:4px;padding:.5rem .75rem;font:inherit;font-size:1rem}.item-detail{border:1px solid #3a3a3a;border-radius:6px;padding:1rem 1.25rem;background:#1f1f1f}.item-detail header{border-bottom:1px solid #3a3a3a;padding-bottom:.5rem;margin-bottom:.75rem}.detail-header-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.detail-actions{display:flex;gap:.5rem;align-items:center}.item-detail h2{margin:0 0 .35rem;color:#e6c67a}.item-tags{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.8rem}.tag{padding:.15rem .5rem;border-radius:3px;background:#2a2a2a;color:#b8b3a0}.detail-row{display:flex;gap:1.25rem;flex-wrap:wrap;margin:.4rem 0;font-size:.9rem}.stat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.4rem .75rem;margin:.75rem 0}.stat-cell{display:flex;justify-content:space-between;padding:.2rem .4rem;background:#2a2a2a;border-radius:3px;font-size:.85rem}.stat-label{color:#b8b3a0}.stat-value{color:#e8e4d2;font-variant-numeric:tabular-nums}.tags-row{align-items:center;gap:.4rem}.detail-lines{margin:.5rem 0 .75rem;padding-left:1.25rem}.detail-lines li{margin:.15rem 0}.detail-messages{margin:.5rem 0 .75rem;font-size:.9rem;color:#b8b3a0}.detail-messages div{margin:.15rem 0}.items-with-effect{margin:.25rem 0;padding-left:1.25rem}.typeahead-picker{position:relative}.typeahead-picker input{width:100%;box-sizing:border-box}.typeahead-picker-selected{display:flex;align-items:center;gap:.4rem}.typeahead-picker-dropdown{position:absolute;top:100%;left:0;right:0;z-index:10;background:#1f1f1f;border:1px solid #3a3a3a;border-radius:4px;margin-top:.25rem;max-height:14rem;overflow-y:auto;box-shadow:0 4px 12px #0006}.typeahead-picker-item{display:block;width:100%;text-align:left;padding:.4rem .6rem;background:transparent;color:#e8e4d2;border:none;cursor:pointer;font:inherit}.typeahead-picker-item:hover,.typeahead-picker-item.highlight{background:#2a2a2a;color:#e6c67a}.typeahead-picker-item.muted{cursor:default}.typeahead-picker-item.muted:hover{background:transparent;color:#8a8476}.typeahead-picker-item.muted.error{color:#ff8a8a}.typeahead-picker-item.typeahead-picker-create{color:#e6c67a;border-top:1px solid #2a2a2a;font-style:italic}.typeahead-picker-item.typeahead-picker-create:hover{background:#2a2010}.typeahead-picker-item.typeahead-picker-create[disabled]{opacity:.5;cursor:wait}.row-link{color:#e6c67a;text-decoration:none}.row-link:hover{text-decoration:underline}.back-link{margin-bottom:.75rem;font-size:.9rem}.back-link a{color:#b8b3a0;text-decoration:none}.back-link a:hover{color:#e6c67a}.step-ref-missing{color:#c77a7a;text-decoration:line-through dotted}.nav-menu{position:relative;display:inline-block}.nav-menu-trigger{background:transparent;border:none;color:#e8e4d2;padding:0;margin-right:1rem;cursor:pointer;font:inherit}.nav-menu-trigger:hover{color:#e6c67a}.nav-menu-dropdown{position:absolute;left:0;top:calc(100% + .25rem);background:#151515;border:1px solid #3a3a3a;border-radius:4px;min-width:10rem;padding:.25rem 0;z-index:20;display:flex;flex-direction:column}.nav-menu-dropdown a{color:#e8e4d2;text-decoration:none;padding:.5rem .75rem;margin:0}.nav-menu-dropdown a:hover{background:#222}.user-menu{position:relative;display:flex;align-items:center}.user-menu-loading{color:#888}.user-menu-login{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#5865f2;color:#fff!important;border-radius:4px;font-weight:600;text-decoration:none}.user-menu-login:hover{background:#4752c4}.user-menu-trigger{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:1px solid #3a3a3a;color:#e8e4d2;padding:.3rem .6rem;border-radius:4px;cursor:pointer}.user-menu-trigger:hover{border-color:#666}.user-menu-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.user-menu-dropdown{position:absolute;right:0;top:calc(100% + .25rem);background:#151515;border:1px solid #3a3a3a;border-radius:4px;min-width:8rem;padding:.25rem 0;z-index:20;display:flex;flex-direction:column}.user-menu-dropdown a,.user-menu-dropdown button{background:none;border:none;color:#e8e4d2;text-align:left;padding:.5rem .75rem;cursor:pointer;text-decoration:none}.user-menu-dropdown a:hover,.user-menu-dropdown button:hover{background:#222}.write-gate{padding:2rem;max-width:32rem;margin:2rem auto;background:#1a1a1a;border:1px solid #3a3a3a;border-radius:4px;text-align:center}.write-gate p{margin:0 0 1rem}.admin-users{max-width:64rem}.admin-users-table{width:100%;border-collapse:collapse;margin-top:1rem}.admin-users-table th,.admin-users-table td{padding:.5rem .75rem;border-bottom:1px solid #2a2a2a;text-align:left;vertical-align:middle}.admin-users-table th{font-weight:600;color:#bfbfbf}.admin-users-table .self-row{background:#1a1a1a}.admin-users-table .muted{color:#888;font-size:.85rem}.admin-users-table select{background:#0f0f0f;color:#e8e4d2;border:1px solid #3a3a3a;padding:.3rem .5rem;border-radius:3px}.admin-users-table select:disabled{opacity:.5}.audit-filters{display:flex;gap:1rem;margin:.5rem 0 1rem}.audit-filters label{display:inline-flex;gap:.4rem;align-items:center;color:#bfbfbf;font-size:.9rem}.audit-filters select{background:#0f0f0f;color:#e8e4d2;border:1px solid #3a3a3a;padding:.3rem .5rem;border-radius:3px}.audit-action{display:inline-block;padding:.1rem .5rem;border-radius:3px;font-size:.85rem;text-transform:lowercase}.audit-action-create{background:#1d3a1d;color:#b3e0b3}.audit-action-update{background:#1f2f4a;color:#a9c4ee}.audit-action-delete{background:#3a1414;color:#e4a0a0}.audit-pager{display:flex;gap:1rem;align-items:center;margin-top:1rem}.audit-pager button{background:#0f0f0f;color:#e8e4d2;border:1px solid #3a3a3a;padding:.4rem .8rem;border-radius:3px;cursor:pointer}.audit-pager button:disabled{opacity:.4;cursor:not-allowed}
