/* OnlyGirth v9: Native race/class library + restrained talent UI.
   Illustrations are local SVGs. Controls remain genuine HTML and JavaScript. */
.nr-palette {margin-top:18px;padding-top:16px;border-top:1px solid #73442c}
.nr-palette-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}
.nr-palette-heading small{color:#a68b76;font-weight:500;font-size:9px;letter-spacing:normal;text-transform:none}
.nr-palette>p{font-size:11px;color:#bca493;line-height:1.6;margin:12px 0}
.nr-filter-row{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}
.nr-filter-row button{font:650 10px var(--font);color:#c3a392;background:#26140f;border:1px solid #66402e;border-radius:4px;padding:7px 9px}
.nr-filter-row button:hover,.nr-filter-row button.on{color:#ffdfaa;border-color:#c87b48;background:linear-gradient(160deg,#6c251a,#31120f)}
.nr-filter-label{display:block;font:750 10px var(--font);color:#cfab76;letter-spacing:1px;margin:14px 0 5px}
#nr-preset-class{width:100%;background:#150c0a;color:#f2d6b8;border:1px solid #885034;border-radius:4px;padding:9px;font-size:12px}
.nr-preset-list{margin:12px 0 8px;display:grid;gap:6px;max-height:345px;overflow:auto;padding-right:3px}
.nr-preset{display:flex;align-items:center;text-align:left;gap:6px;min-height:51px;width:100%;background:linear-gradient(120deg,#341a15,#1e100d);border:1px solid #633b2b;border-radius:5px;color:#ecd4bd;padding:6px;cursor:grab}
.nr-preset:hover,.nr-preset:focus-visible{background:#4b241b;border-color:#da9153;box-shadow:0 0 0 1px #cb783666}
.nr-preset:active{cursor:grabbing}
.nr-race-token,.nr-preset .nr-class-icon{flex:none;width:36px;height:36px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--race-tint,#926b52) 65%,#402518);background:#110907;border-radius:5px;overflow:hidden}
.nr-race-token img,.nr-class-icon img{width:100%;height:100%;object-fit:contain;display:block}
.nr-class-icon{overflow:hidden}
.nr-class-icon img{position:absolute;inset:0;width:100%;height:100%}
.nr-class-icon{position:relative}
.nr-class-icon>span{display:none}
.nr-preset .nr-class-icon{width:31px;height:31px}
.nr-preset-title{flex:1;min-width:0}
.nr-preset-title b{display:block;font:700 12px Georgia,serif;color:#f2d6ad}
.nr-preset-title small{font-size:10px;color:#c4a898}
.nr-preset-add{display:grid;place-items:center;width:24px;height:24px;flex:none;color:#dfb879;font-size:18px;border:1px solid #7d4d32;border-radius:3px}
.nr-preset-note{font-size:10px;color:#9b8174;line-height:1.5}
.nr-member.nr-drop{outline:2px solid #efb267;outline-offset:-2px}
.nr-member.assigned .nr-name small{color:#d3b29b}
.nr-sidepanel{background:#20110e;border:1px solid #865339}
/* Break the side area into a sensible column on medium screens. */
@media(min-width:1281px){.nr-workspace{grid-template-columns:minmax(0,1fr) minmax(275px,305px)}}
@media(min-width:651px) and (max-width:1280px){.nr-sidepanel{display:block}.nr-preset-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;max-height:260px}.nr-roster-list{max-height:160px}}
/* Original source icon textures, where available, sit above the SVG fallback. */
.nt-game-icon{position:relative;display:block;flex:none;width:100%;height:100%;border-radius:5px;overflow:hidden;background:#20120d;border:1px solid #94623d;box-shadow:inset 0 0 10px #0007}
.nt-game-icon img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nt-game-icon-small{border-radius:4px}
.nt-game-icon-large{width:52px;height:52px;border:1px solid #a46c40}
.nt-class-sigil,.nt-hub-sigil{position:relative;overflow:hidden;font-size:0}
.nt-class-sigil img,.nt-hub-sigil img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* The v8 illustrated collage backgrounds were intentionally removed. A quieter
   engraved stone treatment makes point selections and tooltips readable. */
.nt-workspace{background:linear-gradient(145deg,#1d0f0d,#110b0d 70%);}
.nt-tree{background:#1b1211;border:1px solid #855a3c;box-shadow:0 4px 16px #0009}
.nt-tree-heading{background:linear-gradient(90deg,#30201d,#1c1415);border-bottom:1px solid #866144}
.nt-tree-art,.nt-tree:nth-child(2) .nt-tree-art,.nt-tree:nth-child(3) .nt-tree-art{
  background-image:linear-gradient(180deg,color-mix(in srgb,var(--talent-tint) 9%,transparent),#0d0b0eea),url('../assets/talent-etch.svg');
  background-position:center,center;background-size:cover,cover;
  box-shadow:inset 0 0 28px #000b;
}
.nt-tree:nth-child(2){border-color:#987345}.nt-tree:nth-child(3){border-color:#54748f}
.nt-tree-heading h3{text-shadow:none;color:#ffe3b5}
.nt-tree-foot{background:#261813}
.nt-talent{background:#1d1414!important;border:1px solid #754a30;overflow:hidden}
.nt-talent-art{width:clamp(31px,3vw,40px);height:clamp(31px,3vw,40px);padding:0;border:0!important;border-radius:4px;background:transparent!important;box-shadow:none!important}
.nt-talent.locked{opacity:.62}
.nt-talent.allocated{opacity:1;background:#282018!important;border-color:#c9914d}
.nt-talent.maxed{border-color:#e8cf71;box-shadow:0 0 0 1px #d4ae55,0 0 12px #c9934533}
.nt-talent-name{line-height:1.18;color:#f1d8be;margin-top:5px}
.nt-native-tooltip{position:fixed;z-index:9000;pointer-events:none;width:min(320px,calc(100vw - 24px));padding:14px;background:linear-gradient(155deg,#201517,#0e0b10);border:1px solid #b38a55;box-shadow:0 10px 42px #000f,0 0 0 2px #130d0a;border-radius:5px;color:#f0dcc4;font:12px/1.55 var(--font)}
.nt-native-tooltip[hidden]{display:none!important}
.nt-hover-heading{display:flex;align-items:center;gap:10px}
.nt-hover-heading strong{display:block;color:#ffde94;font:700 15px Georgia,serif}
.nt-hover-heading small{display:block;color:#aab0b8;margin-top:4px;font-size:10px}
.nt-hover-effect{margin:13px 0;color:#e2d9bd;white-space:pre-line;line-height:1.6}
.nt-hover-foot{font-size:10px;color:#b99878;border-top:1px solid #48352b;padding-top:10px}
.nt-inspect{background:linear-gradient(150deg,#251917,#111014);border-color:#895c3c}
.nt-inspect-head>.nt-game-icon{flex:none}
.nt-all-ranks{margin:9px 0 13px;border:1px solid #63422e;border-radius:4px;background:#1b1111}
.nt-all-ranks summary{padding:9px 10px;color:#e7bd8e;font-size:11px;font-weight:650;cursor:pointer}
.nt-ranked-desc{display:grid;gap:4px;padding:9px;border-top:1px solid #3d2a24;color:#c4b4a6;font-size:11px;line-height:1.6}
.nt-ranked-desc.current{background:#56301c55;color:#ecd4b9}
.nt-ranked-desc b{color:#e6aa73;font-size:10px}
.nt-spell-source{display:inline-block;color:#dbbb89;font-size:10px;margin-top:9px}
.nt-spell-source:hover{color:#ffe0a4}
@media(max-width:650px){.nr-preset-list{grid-template-columns:1fr}.nr-filter-row button{padding:8px 9px}.nt-talent-art{width:35px;height:35px}.nt-native-tooltip{max-width:280px}.nr-race-token{width:35px;height:35px}}

/* Presets live below raid groups to prevent a tall, empty builder column. */
.nr-workspace-main>.nr-palette{margin-top:22px;padding:17px;background:#20120f;border:1px solid #88573a;border-radius:5px;box-shadow:inset 0 1px 0 #d69b4e22}
.nr-workspace-main .nr-preset-list{grid-template-columns:repeat(3,minmax(0,1fr));max-height:310px;overflow-y:auto;gap:7px}
.nr-workspace-main .nr-preset{min-width:0}
.nr-workspace-main .nr-preset-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1500px){.nr-workspace-main .nr-preset-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.nr-workspace-main .nr-preset-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.nr-workspace-main .nr-preset-list{grid-template-columns:1fr}}

/* v10: live War Council character availability, compact count, no layout redesign. */
.nr-council-title{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.nr-council-title small{font-size:10px;color:#e7b578;font-weight:500;letter-spacing:0;text-transform:none}
.nr-sidepanel .nr-roster-status{font-size:10px;color:#bba18d;line-height:1.45;margin:3px 0 15px}
.nr-roster-list button[draggable=true]{cursor:grab}
.nr-roster-list button[draggable=true]:active{cursor:grabbing}
