﻿.uses-trait-examples>[data-trait-edit-actions]{display:none!important}
.trait-library-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:6px;background:#1d2c38}
.trait-library-controls button,.trait-examples-dialog button{padding:7px 9px;border:1px solid #3d85c6;border-radius:3px;color:white;background:#03080c;cursor:pointer;font:600 12px/1.3 var(--body-font,Arial)}
.trait-library-controls button:disabled{opacity:.45;cursor:default}.trait-library-controls [hidden]{display:none!important}
.trait-library-controls button:first-child{flex-basis:100%}
.trait-library-status{flex-basis:100%;margin:0;text-align:center;white-space:normal;color:#dfedf7;font:12px/1.4 var(--body-font,Arial)}.trait-library-status:empty{display:none}
.trait-generic-picker .builder-merit-picker-option{font-size:13px;padding:8px}
.trait-examples-dialog{box-sizing:border-box;width:min(740px,calc(100vw - 24px));max-height:85dvh;padding:0;border:1px solid #3d85c6;border-radius:5px;color:white;background:#1e2f3d;font:14px/1.5 var(--body-font,Arial)}
.trait-examples-dialog::backdrop{background:#000b}
.trait-examples-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;background:#152330;border-bottom:1px solid #3d85c6}
.trait-examples-heading h2{margin:0;color:#83caff;font-size:18px}
.trait-examples-list{max-height:65dvh;overflow-y:auto;padding:12px;display:grid;gap:12px;scrollbar-color:#607989 #152330}
.trait-example{padding:12px;border:1px solid #496071;border-radius:3px;background:#273b4a;overflow-wrap:anywhere}
.trait-example h3{margin:0 0 8px;color:#a9d6ff;font-size:16px}.trait-example p{white-space:pre-wrap;margin:8px 0}.trait-example small{display:block;margin:8px 0}.trait-example-muted{color:#bdcddd}
.trait-flavor-help{margin:0 0 12px;padding:10px;color:#dceaf5;background:#1d2c38;font:13px/1.5 var(--body-font,Arial);text-align:center;white-space:normal}
[data-traits-builder] .builder-input-table__title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px}
[data-traits-builder] .builder-add-trait{position:static!important;inset:auto!important;transform:none!important;width:auto!important;height:24px!important;padding:0 9px!important;flex:none;border:1px solid #3d85c6!important;border-radius:3px;background:#03080c!important;color:#fff!important;font:600 11px/1 var(--body-font,Arial)!important}
.uses-trait-examples .builder-trait-dropdown{position:absolute;inset:0 0 auto auto;display:grid;place-items:center;width:24px;height:24px;min-height:24px;padding:0!important;border:0;border-left:1px solid #496071;border-radius:0;background:#101c25;color:white;font:16px/1 Arial!important;cursor:pointer}
.uses-trait-examples .builder-trait-name-field,.uses-trait-examples .builder-trait-name-field>span,.uses-trait-examples [data-builder-merit-name],.uses-trait-examples .builder-merit-modifiers>h5{height:24px;min-height:24px;box-sizing:border-box}
.uses-trait-examples .builder-merit-modifiers>h5{position:relative;display:flex;align-items:center;justify-content:center;padding-right:24px}
.uses-trait-examples [data-builder-merit-name]{padding-right:28px!important}
.uses-trait-examples .builder-add-merit-modifier{position:absolute;inset:0 0 auto auto;width:24px;height:24px;min-height:24px;display:grid;place-items:center;padding:0!important;border:0;border-left:1px solid #496071;border-radius:0;background:#101c25;color:white;font:16px/1 Arial!important;transform:none;cursor:pointer}
.uses-trait-examples .builder-trait-description-toggle{width:24px;min-height:24px;border-radius:0;background:#101c25;border-left:1px solid #496071}
.uses-trait-examples .builder-trait-description-toggle input{width:14px;height:14px;border:1px solid #607989;border-radius:2px;background-color:#304757}
.trait-library-controls .trait-remove-button{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;min-height:28px;padding:0!important}
.trait-library-controls .trait-remove-button svg{display:block}
.trait-library-controls button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.uses-trait-examples .builder-add-merit-modifier[hidden],.uses-trait-examples .builder-trait-dropdown[hidden]{display:none!important}
/* Use aligned action rows, with Show Flavors immediately after Save Flavor. */
.trait-library-controls{display:grid;grid-template-columns:32px minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(32px,1fr)) auto;gap:3px;padding:3px}
.trait-library-controls button{box-sizing:border-box;height:100%;min-height:32px;padding:3px 6px;font-size:11px;line-height:1.2;align-self:stretch}
.trait-library-controls .trait-remove-button{grid-column:1;grid-row:1;width:32px;height:100%;min-height:32px}
.trait-library-controls .trait-save-new{grid-column:2/4;grid-row:1}
.trait-library-controls .trait-save-flavor{grid-column:1/3;grid-row:2}
.trait-library-controls .trait-show-flavors{grid-column:3;grid-row:2}
.trait-library-status{grid-column:1/-1;grid-row:3}
.uses-trait-examples .builder-trait-name-field,.uses-trait-examples .builder-trait-name-field>span,.uses-trait-examples [data-builder-merit-name],.uses-trait-examples .builder-merit-modifiers>h5,.uses-trait-examples .builder-merit-modifier,.uses-trait-examples .builder-merit-modifier>*{box-sizing:border-box;height:32px;min-height:32px}
.uses-trait-examples .builder-trait-dropdown,.uses-trait-examples .builder-add-merit-modifier{width:32px;height:32px;min-height:32px}
.uses-trait-examples .builder-trait-description-toggle{width:32px;min-height:32px}
.uses-trait-examples .builder-merit-description-field textarea{min-height:32px;padding-right:36px}
.uses-trait-examples [data-builder-merit-name]{padding-right:36px!important}
.uses-trait-examples .builder-merit-modifiers>h5{padding:0 32px}
[data-traits-builder] .builder-input-table__title{position:relative;display:flex;justify-content:flex-end;align-items:center;box-sizing:border-box;min-height:38px;padding:3px}
[data-traits-builder] .trait-category-label{position:absolute;left:50%;transform:translateX(-50%);text-align:center;pointer-events:none}
[data-traits-builder] .builder-add-trait{height:32px!important;font-size:10px!important;padding:0 6px!important}
.trait-generic-picker{max-height:min(420px,60vh)}
.trait-picker-folder{background:#152330;color:white}
.trait-picker-folder>summary{padding:8px;font:700 12px/1.4 var(--body-font,Arial);color:#9ad4ff;border-bottom:1px solid #496071;cursor:pointer;min-height:32px;box-sizing:border-box}
.trait-picker-folder .builder-merit-picker-option{min-height:32px;padding:6px 10px;font-size:12px;text-align:left}
.trait-picker-empty{padding:6px 10px;color:#b7c8d6;font-size:12px;margin:0}
.trait-generic-picker .builder-merit-picker-option{display:block}
.trait-generic-picker .trait-option-modifiers{font-size:.9em;font-style:italic;font-weight:400;color:#bad0df}

.modifier-picker-header{box-sizing:border-box;min-height:32px;display:flex;align-items:center;justify-content:center;padding:4px 8px;background:#152330;color:#9ad4ff;font:700 12px/1.3 var(--body-font,Arial);border-bottom:1px solid #496071;text-transform:uppercase}
[data-traits-builder] .builder-add-trait{border-radius:6px!important}
.uses-trait-examples .builder-merit-modifier,.uses-trait-examples .builder-merit-modifier>*{height:32px!important;min-height:32px!important;padding-block:0!important;line-height:normal}
.uses-trait-examples .builder-trait-name-field,.uses-trait-examples .builder-trait-name-field>span,.uses-trait-examples [data-builder-merit-name],.uses-trait-examples .builder-merit-modifiers>h5{height:32px!important;min-height:32px!important}

/* Keep complete trait rows aligned with the 32px action buttons. */
[data-traits-builder] .builder-merit-input-table .uses-trait-examples{gap:3px!important;padding:3px!important;background:var(--ui-blue)!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples>.builder-trait-name-field{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;height:32px!important;min-height:32px!important;margin:0!important;padding:0!important;align-items:stretch!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples>.builder-trait-name-field>span{display:flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;height:32px!important;min-height:32px!important;padding:0 5px!important;line-height:normal!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples>.builder-trait-name-field>input{height:32px!important;min-height:32px!important;padding-block:0!important;line-height:normal!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-trait-dropdown{height:32px!important;min-height:32px!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples>.builder-merit-description-field{display:block!important;position:relative;min-height:32px!important;height:auto!important;margin:0!important;padding:0!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples>.builder-merit-description-field textarea{display:block!important;box-sizing:border-box!important;min-height:32px!important;padding:7px 36px 7px 6px!important;line-height:16px!important;border-radius:0!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-trait-description-toggle{height:100%!important;min-height:32px!important;top:0!important;bottom:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifiers{gap:3px!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifiers>h5{margin:0!important;height:32px!important;min-height:32px!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .trait-library-controls{padding:0!important;gap:3px!important}

[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifiers>h5{position:relative!important;padding:0 32px!important;display:flex!important;align-items:center!important;justify-content:center!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-add-merit-modifier{position:absolute!important;inset:0 0 0 auto!important;box-sizing:border-box!important;width:32px!important;height:100%!important;min-height:32px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;transform:none!important;border-radius:0!important;line-height:1!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-add-merit-modifier[hidden]{display:none!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier{grid-template-columns:56px minmax(0,1fr) 32px!important;align-items:stretch!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier-remove{box-sizing:border-box!important;width:32px!important;height:100%!important;min-height:32px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:0!important;line-height:1!important}

[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier>input,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier>.panel-select-search{box-sizing:border-box!important;display:block;height:32px!important;min-height:32px!important;max-height:32px!important;width:100%!important;min-width:0!important;margin:0!important;padding:0 16px 0 5px!important;line-height:30px!important;align-self:stretch!important;border-radius:0!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier>[data-builder-merit-modifier-value],
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier>.panel-select-search{padding-inline:3px!important;text-align:center!important}

/* Separate trait controls with spacing rather than internal divider lines. */
[data-traits-builder] .builder-merit-input-table .uses-trait-examples,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples :is(.builder-trait-name-field,.builder-trait-name-field>span,.builder-trait-name-field>input,.builder-trait-dropdown,.builder-merit-modifiers>h5,.builder-add-merit-modifier,.builder-merit-modifier>input,.builder-merit-modifier>select,.builder-merit-modifier-remove,.builder-merit-description-field textarea,.builder-trait-description-toggle){border:0!important;box-shadow:none!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-trait-name-field::before,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-trait-name-field::after{display:none!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .trait-library-controls{grid-template-columns:28px minmax(0,1fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(28px,auto)) auto;gap:5px!important;padding:2px!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .trait-library-controls button{height:100%!important;min-height:28px!important;padding:2px 5px!important;font-size:10px!important;line-height:1.2!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .trait-library-controls .trait-remove-button{width:28px!important;min-height:28px!important}

/* Join each trait's rows into one outlined block. */
[data-traits-builder] .builder-merit-input-table .uses-trait-examples{gap:0!important;padding:0!important;border:1px solid #000!important;overflow:hidden}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifiers{gap:0!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples>.builder-trait-name-field,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifiers>h5,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples>.builder-merit-description-field{border:0!important;border-bottom:1px solid #000!important;box-sizing:border-box!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-trait-name-field>span,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier>input{border-right:1px solid #000!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples :is(.builder-trait-dropdown,.builder-add-merit-modifier,.builder-trait-description-toggle,.builder-merit-modifier-remove){border-left:1px solid #000!important}
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .trait-library-controls{background:var(--ui-navy)!important}

/* Paired dark and light top edges match the trait container trim. */
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifiers>h5,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-description-field textarea,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-trait-description-toggle,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-add-merit-modifier,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-modifier-remove,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .trait-library-controls button{border-top:1px solid #000!important;box-shadow:inset 0 1px 0 var(--ui-line)!important}

/* Complete black outlines around trait buttons and description toggles. */
[data-traits-builder] .builder-merit-input-table .uses-trait-examples button,
[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-trait-description-toggle,
[data-traits-builder] .builder-merit-input-table .builder-add-trait{border:1px solid #000!important;box-sizing:border-box!important}

[data-traits-builder] .builder-merit-input-table .uses-trait-examples .builder-merit-description-field>.builder-trait-description-toggle{border:1px solid #000!important;box-shadow:inset 0 1px 0 var(--ui-line)!important}

/* Protected limits use the same row sizing as editable limits. */
[data-traits-builder] .builder-merit-input-table [data-protected-builder-trait="true"]>.builder-trait-name-field{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;height:32px!important;min-height:32px!important;margin:0!important;padding:0!important;align-items:stretch!important}
[data-traits-builder] .builder-merit-input-table [data-protected-builder-trait="true"]>.builder-trait-name-field>span,
[data-traits-builder] .builder-merit-input-table [data-protected-builder-trait="true"] [data-builder-merit-name]{box-sizing:border-box!important;height:32px!important;min-height:32px!important;padding:0 5px!important;white-space:nowrap!important;line-height:normal!important}
[data-traits-builder] .builder-merit-input-table [data-protected-builder-trait="true"]>.builder-trait-name-field>span{display:flex!important;align-items:center!important;justify-content:center!important}
[data-traits-builder] .builder-merit-input-table [data-protected-builder-trait="true"]>.builder-merit-description-field{display:block!important;min-height:32px!important;height:auto!important;margin:0!important;padding:0!important}
[data-traits-builder] .builder-merit-input-table [data-protected-builder-trait="true"] textarea{display:block!important;box-sizing:border-box!important;min-height:32px!important;padding:7px 6px!important;line-height:16px!important}

.builder-merit-picker .modifier-picker-header{background:var(--ui-blue)!important;color:#fff!important}
