/* OldZocker character editors - shared screen presentation v2.63.
   V20 / Dark Ages / Tal Mahe Ra / Mortals / W20.
   Site navigation and PDF print/export keep their separate responsibilities. */

/* editor-layout-v2.21.css */
/* V20 SHARED EDITOR LAYOUT V2.29 */
.brand-mark{background:#050505 url('/favicon.ico?v=2.18') center/cover no-repeat;color:transparent!important;font-size:0!important;overflow:hidden}
.editor-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 36px}
.editor-start-link{display:flex;flex-direction:column;gap:12px;padding:28px;border:1px solid var(--border-soft,#483039);border-radius:12px;background:var(--panel,#15191f);text-decoration:none;color:inherit}
.editor-start-link:hover,.editor-start-link:focus-visible{border-color:#b54450;outline:2px solid #b54450;outline-offset:3px}
.editor-start-link strong{font-size:1.5rem}.editor-start-link span{color:var(--text-muted,#b5afb3)}
.editor-start-link b{margin-top:8px;color:#e2a1a8}.editor-statistics-title{margin:0 0 20px}
.phase5-workspace{display:grid!important;grid-template-columns:minmax(0,1fr) 310px!important;gap:24px;align-items:start}
.phase5-workspace[hidden],.phase5-form [hidden]{display:none!important}
.phase5-main{min-width:0}.phase5-form .phase5-panel{margin-bottom:22px}
.phase5-budget{position:sticky;top:100px;min-width:0;max-height:calc(100vh - 124px);overflow-y:auto;padding:22px;border:1px solid var(--border-soft,#483039);border-radius:12px;background:var(--panel,#15191f)}
.phase5-form .eyebrow,.phase5-head .eyebrow{display:none!important}
.phase5-form .priority-column-grid,.phase5-form .phase5-rating-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.phase5-form .priority-column-grid{margin-bottom:14px}.phase5-form .priority-column{display:grid;gap:10px;min-width:0}
.phase5-form .priority-column select{width:100%;min-width:0}
.phase5-form .phase5-rating-group{min-width:0}.phase5-form .phase5-rating-group>h3{display:none}
.phase5-form .phase5-rating-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px}
.phase5-form .rating-name{min-width:0}.phase5-form .rating-name strong{display:block;overflow-wrap:anywhere}
.phase5-form .rating-name small{display:block;font-size:.69rem;color:var(--text-muted,#b5afb3)}
.phase5-form .rating-track-block{flex-shrink:0}.phase5-form .dot-track,.phase5-form .derived-dot-track{display:flex;gap:3px;align-items:center}
.phase5-form .dot-button,.phase5-form .derived-dot-button{border:0;background:transparent;padding:0;width:18px;min-width:18px;height:24px;line-height:24px;font-size:21px;color:#91949a;cursor:pointer}

.phase5-form .is-freebie-filled{color:#ba2637!important}.phase5-form .is-xp-filled{color:#3789dc!important}
.phase5-form .dot-button:disabled,.phase5-form .derived-dot-button:disabled{cursor:default;opacity:.5}
.phase5-form .dot-button.is-filled:disabled,.phase5-form .derived-dot-button.is-filled:disabled{opacity:1}
.phase5-form .dot-button:focus-visible,.phase5-form .derived-dot-button:focus-visible{outline:2px solid #b54450;border-radius:50%}
.phase5-form .derived-rating-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px}
.phase5-form .compact-add-control{display:flex;gap:10px;align-items:center;margin:12px 0}
.phase5-form .compact-add-control select{flex:1;min-width:0}
.phase5-form .da-origin{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 16px}
.da-hidden-budget{display:none}.phase5-form .budget-line{display:flex;justify-content:space-between;gap:16px;margin:9px 0}
.phase5-form .budget-block{margin:16px 0}.phase5-form .budget-line.big{font-size:1.1rem}
.combination-variant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}
.combination-variant-grid label{display:grid;gap:8px}.combination-review-list{margin-top:16px}
@media(max-width:1250px){.phase5-workspace{grid-template-columns:minmax(0,1fr) 260px!important;gap:18px}.phase5-form .phase5-rating-row{flex-wrap:wrap}.phase5-form .phase5-rating-groups{gap:12px}}
@media(max-width:950px){.phase5-workspace{grid-template-columns:minmax(0,1fr)!important}.phase5-budget{position:static;max-height:none}.phase5-form .phase5-rating-row{flex-wrap:nowrap}}
@media(max-width:650px){.editor-start-grid,.combination-variant-grid{grid-template-columns:1fr}.editor-start-link{padding:22px}.phase5-form .priority-column-grid{gap:8px}.phase5-form .priority-column select{font-size:.78rem;padding:6px 2px}.phase5-form .priority-column strong{font-size:.76rem}.phase5-form .phase5-rating-groups{grid-template-columns:1fr}.phase5-form .phase5-rating-group>h3{display:block}.phase5-form .da-origin{grid-template-columns:1fr}.phase5-form .compact-add-control{flex-wrap:wrap}.phase5-form .compact-add-control select{flex-basis:100%}}

@media(max-width:650px){.phase5-form .panel-heading,.phase5-form .mode-switch-box{flex-wrap:wrap}.phase5-form .experience-combination-row{grid-template-columns:1fr}.phase5-form .experience-combination-row>div{min-width:0;overflow-wrap:anywhere}}

/* V2.29 additive non-vampire editor */
.editor-start-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.nv-editor [hidden]{display:none!important}.nv-editor label{display:grid;gap:6px}.nv-editor input[type=checkbox]{width:auto}.nv-editor textarea{width:100%;box-sizing:border-box}.nv-trait{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin:14px 0}.nv-trait small,.nv-trait .trait-system{grid-column:1/-1;overflow-wrap:anywhere}.nv-editor .trait-selection-detail{margin:10px 0 14px}.nv-editor #nv-errors{font-size:.85rem}.nv-editor #nv-errors ul{padding-left:18px}
.nv-editor .phase5-rating-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:42px;width:100%;max-width:100%;box-sizing:border-box}
.nv-editor .dot-track{justify-self:end;display:grid;grid-auto-flow:column;grid-auto-columns:18px;gap:3px;white-space:nowrap}
.nv-editor .dot-button{display:grid;place-items:center}.nv-editor .dot-button span{display:block;line-height:1}
.nv-editor .phase5-rating-groups .phase5-rating-row{grid-template-columns:minmax(0,1fr);gap:3px}
.nv-editor .phase5-rating-groups .dot-track{justify-self:end;max-width:100%}
.nv-editor .phase5-rating-row.has-remove{grid-template-columns:minmax(0,1fr) auto auto}
.nv-editor .background-remove-button{min-height:32px;padding:0 10px;font-size:.78rem}
.nv-editor #nv-mode-panel{margin-top:22px}
@media(max-width:900px){.editor-start-grid{grid-template-columns:1fr}}
@media(max-width:650px){.nv-editor .phase5-rating-row{grid-template-columns:minmax(0,1fr) auto}.nv-editor .phase5-rating-row.has-remove{grid-template-columns:minmax(0,1fr) auto}.nv-editor .phase5-rating-row.has-remove .background-remove-button{grid-column:1/-1;justify-self:start}}
@media(max-width:500px){.nv-trait{grid-template-columns:1fr}}

/* character-library-v2.32.css */
.library-toolbar,.account-panel{margin:20px 0;padding:20px}.library-toolbar h2,.account-panel h2{margin-top:0}.library-toolbar label{display:block;max-width:540px}.library-toolbar input{width:100%;box-sizing:border-box;margin:5px 0 12px}.library-toolbar .form-actions{display:flex;flex-wrap:wrap;gap:10px}.library-toolbar [hidden],.account-panel [hidden]{display:none!important}.account-grid,.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.account-grid form{display:grid;gap:12px;align-content:start}.account-grid label{display:grid;gap:5px}.account-grid input{min-width:0;width:100%;box-sizing:border-box}.account-message{padding:12px;border:1px solid #a7414d;border-radius:8px}.library-card{min-width:0;overflow-wrap:anywhere}.library-card h2{font-size:1.2rem}.library-card .form-actions{display:flex;flex-wrap:wrap;gap:10px}.library-status-error{color:#ffb5b5}#library-status:empty{display:none}@media(max-width:700px){.account-grid,.library-grid{grid-template-columns:1fr}}

/* archetypes-library-v2.35.css */
.archetype-explanations .rule-detail-box p { white-space: pre-line; overflow-wrap: anywhere; }
.library-editor-group { margin: 28px 0 36px; }
.library-editor-heading { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 14px; }
.library-editor-heading h2 { margin: 0; }
.library-editor-heading span { color: var(--muted, #9c9995); }
.library-editor-group .library-card { margin: 0; }
.library-editor-group .library-card h3 { margin-top: 0; font-size: 1.2rem; }
.library-editor-empty { color: var(--muted, #9c9995); }

/* nonvampire-layout-v2.37.css */
/* V2.37: scoped V20-template presentation; no changes to rule budgets or other editors. */
.phase5-form.nv-editor label{display:grid;gap:7px;min-width:0}
.phase5-form.nv-editor label>span{color:#c7c2bd;font-size:.8rem}
.phase5-form.nv-editor .form-grid,.phase5-form.nv-editor .rule-selection-grid{min-width:0}
.phase5-form.nv-editor input,.phase5-form.nv-editor select,.phase5-form.nv-editor textarea{box-sizing:border-box;min-width:0;max-width:100%}
.phase5-form.nv-editor .phase5-rating-row{display:flex!important;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px;min-height:42px}
.phase5-form.nv-editor .rating-name{flex:1 1 auto;min-width:0}
.phase5-form.nv-editor .rating-track-block{flex:0 0 auto;min-width:0;max-width:100%}
.phase5-form.nv-editor .dot-track{display:flex;align-items:center;gap:3px;max-width:100%}
.phase5-form.nv-editor .dot-button{display:block;flex:0 0 18px;width:18px;min-width:18px;height:24px;padding:0;line-height:24px;font-size:21px;text-align:center}
.phase5-form.nv-editor .derived-rating-row{min-height:44px;gap:16px}
.phase5-form.nv-editor .rule-selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.phase5-form.nv-editor .rule-selection-grid>section{min-width:0}
.phase5-form.nv-editor .nv-trait{display:block;margin:14px 0;padding:14px;border:1px solid var(--border-soft,#38383e);border-radius:9px;background:var(--input,#17171b);overflow-wrap:anywhere}
.phase5-form.nv-editor .trait-card-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:10px}
.phase5-form.nv-editor .trait-point-choice{grid-template-columns:auto minmax(0,8rem);align-items:center;justify-content:start;margin:10px 0}
.phase5-form.nv-editor .nv-trait>small{display:block;margin-top:10px;font-size:.75rem;color:var(--text-muted,#b5afb3)}
.phase5-form.nv-editor .trait-system{margin-top:12px}
.phase5-form.nv-editor .trait-system summary{cursor:pointer}
.phase5-form.nv-editor .trait-system p{white-space:pre-line}
.phase5-form.nv-editor .form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.phase5-form.nv-editor .mode-switch-box{display:flex;align-items:center;justify-content:space-between;gap:16px}
.phase5-form.nv-editor .mode-switch-box .form-actions{margin:0}
.phase5-form.nv-editor .phase5-budget h2{margin-top:0}
.phase5-form.nv-editor .budget-line b{white-space:nowrap}
@media(max-width:1250px){
 .phase5-form.nv-editor .phase5-rating-row{flex-wrap:wrap}
 .phase5-form.nv-editor .rating-track-block{margin-left:auto}
}
@media(max-width:950px){
 .phase5-form.nv-editor .phase5-rating-row{flex-wrap:nowrap}
}
@media(max-width:650px){
 .phase5-form.nv-editor .rule-selection-grid{grid-template-columns:minmax(0,1fr)}
 .phase5-form.nv-editor .derived-rating-row,.phase5-form.nv-editor .phase5-rating-row.has-remove{flex-wrap:wrap}
 .phase5-form.nv-editor .dot-track{flex-wrap:wrap;justify-content:flex-end}
 .phase5-form.nv-editor .mode-switch-box{flex-wrap:wrap}
 .phase5-form.nv-editor .background-remove-button{margin-right:auto}
}

/* w20-layout-v2.44.css */
/* W20 uses the V20 book cards, priority columns, rating tracks and budget components. */
.w20-editor .w20-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.w20-editor .w20-three>section,.w20-editor .phase5-rating-group{min-width:0}
.w20-editor .w20-rating{min-width:0}
.w20-editor .w20-rating .rating-name{min-width:0;overflow-wrap:anywhere}
.w20-editor .w20-rating .rating-track-block{max-width:100%}
.w20-editor .w20-dots{max-width:100%;flex-wrap:wrap}
.w20-editor .w20-dots .dot-button{flex:0 0 18px;padding:0;min-width:18px}
.w20-editor .w20-long-rating{flex-wrap:wrap}
.w20-editor .w20-long-rating .rating-name{flex-basis:100%}
.w20-editor .dot-button:focus-visible{outline:2px solid var(--accent,#ba2637);outline-offset:2px}
.w20-editor select,.w20-editor input,.w20-editor textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}
.w20-editor input[type=checkbox]{width:18px;min-width:18px}
.w20-editor .w20-choice{margin:12px 0;padding-bottom:12px;border-bottom:1px solid var(--border-soft,#393338)}
.w20-editor .w20-choice .compact-add-control{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.w20-editor .compact-add-control select{flex:1 1 180px}
.w20-editor .w20-choice label{display:block;margin-bottom:8px}
.w20-editor .w20-choice summary{cursor:pointer;line-height:1.5}
.w20-editor .w20-rule-text{white-space:pre-line;line-height:1.6;font-size:.86rem;overflow-wrap:anywhere;margin:10px 0}
.w20-editor .w20-source{display:block;font-size:.75rem;color:var(--text-muted,#aca2a0);margin-top:8px}
.w20-editor .budget-line b{white-space:nowrap}
.w20-editor .w20-errors{font-size:.82rem;color:var(--text-muted,#aca2a0);line-height:1.6}
.w20-editor .full-field{display:block;margin:14px 0}
.w20-editor [hidden]{display:none!important}
.w20-editor #w20-message{color:#dfa270;line-height:1.5}
.w20-editor .w20-background-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
@media(max-width:650px){.w20-editor .w20-three{grid-template-columns:1fr}}

/* editor-trait-controls-v2.55.css */
/* V20 add/select cards and circular remove controls, only for DA and mortals. */
:is(#da-editor, #nv-editor) .rating-remove-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 28px;
    width: 28px;
    min-width: 28px;
    height: 28px;
    min-height: 28px;
    padding: 0;
    margin: 0;
    border: 1px solid var(--accent, #8f1d24);
    border-radius: 50%;
    background: var(--accent, #8f1d24);
    color: #fff;
    font-size: 22px;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
}
:is(#da-editor, #nv-editor) .rating-remove-button:hover:not(:disabled) {
    background: var(--accent-hover, #a92630);
    border-color: var(--accent-hover, #a92630);
}
:is(#da-editor, #nv-editor) .rating-remove-button:focus-visible {
    outline: 2px solid var(--text, #ece9e4);
    outline-offset: 3px;
}
:is(#da-editor, #nv-editor) .rating-remove-button:disabled {
    opacity: .45;
    cursor: not-allowed;
}
:is(#da-editor, #nv-editor) .trait-card {
    min-width: 0;
    margin: 14px 0;
    padding: 14px;
    border: 1px solid var(--border-soft, #38383e);
    border-radius: 9px;
    background: var(--input, #17171b);
    overflow-wrap: anywhere;
}
:is(#da-editor, #nv-editor) .trait-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
:is(#da-editor, #nv-editor) .trait-card-head > div { min-width: 0; }
:is(#da-editor, #nv-editor) .trait-card-head small {
    display: block;
    margin-top: 4px;
    color: var(--muted, #9c9995);
    font-size: .8rem;
}
:is(#da-editor, #nv-editor) .compact-add-control {
    display: flex;
    align-items: center;
    gap: 10px;
}
:is(#da-editor, #nv-editor) .compact-add-control select { flex: 1; min-width: 0; }
:is(#da-editor, #nv-editor) .compact-empty-note { color: var(--muted, #9c9995); font-size: .85rem; }
:is(#da-backgrounds, #nv-background-list) .phase5-rating-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto 28px;
    gap: 10px;
    align-items: center;
}
:is(#da-backgrounds, #nv-background-list) .rating-name { min-width: 0; overflow-wrap: anywhere; }
:is(#da-backgrounds, #nv-background-list) .rating-track-block { min-width: 0; max-width: 100%; }
:is(#da-backgrounds, #nv-background-list) .rating-remove-button { grid-column: 3; justify-self: end; }
@media (max-width: 650px) {
    :is(#da-editor, #nv-editor) .compact-add-control { flex-wrap: wrap; }
    :is(#da-editor, #nv-editor) .compact-add-control select { flex-basis: 100%; }
    :is(#da-backgrounds, #nv-background-list) .rating-name { grid-column: 1 / 3; }
    :is(#da-backgrounds, #nv-background-list) .rating-remove-button { grid-row: 1; }
    :is(#da-backgrounds, #nv-background-list) .rating-track-block { grid-column: 1 / 3; grid-row: 2; justify-self: end; }
}

/* dark-ages-compendium-v2.56.css */
.compendium-original p{white-space:normal;line-height:1.7;overflow-wrap:anywhere}
.compendium-table{max-width:100%;overflow-x:auto;white-space:pre;font: .85rem/1.6 ui-monospace,monospace;padding:12px;background:var(--input);border:1px solid var(--border)}
#da-compendium-reference .rule-detail{margin-top:16px}
#da-compendium-lineage-details{grid-column:1/-1}
#da-compendium-ancestry-wrap{margin-top:14px}

/* character-create.php - presentation */
.revenant-discipline-dialog{width:min(42rem,calc(100vw - 2rem));max-height:90vh;overflow:auto;color:inherit;background:var(--panel,#171717);border:1px solid var(--line,#555)}
.revenant-discipline-dialog::backdrop{background:rgba(0,0,0,.72)}
.revenant-discipline-dialog .budget-line{margin-top:1rem}
.revenant-discipline-dialog .revenant-point-track{display:flex;gap:.4rem;align-items:center}
.revenant-discipline-dialog .revenant-point-button{border:0;background:transparent;color:inherit;font-size:1.65rem;line-height:1;cursor:pointer;padding:.25rem}
.revenant-discipline-dialog .revenant-point-button.is-filled{color:#b3212d}
.phase5-head .eyebrow,.phase5-panel .eyebrow,.phase5-budget>.eyebrow{display:none!important}
.gargoyle-variant-dialog{width:min(54rem,calc(100vw - 2rem));max-height:90vh;overflow:auto;color:inherit;background:var(--panel,#171717);border:1px solid var(--line,#555)}
.gargoyle-variant-dialog::backdrop{background:rgba(0,0,0,.72)}
.gargoyle-variant-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.gargoyle-variant-card{display:block;border:1px solid var(--line,#555);border-radius:.6rem;padding:1rem;cursor:pointer}
.gargoyle-variant-card:has(input:checked){border-color:#b3212d;box-shadow:0 0 0 1px #b3212d inset}
.gargoyle-variant-card strong,.gargoyle-variant-card small{display:block}.gargoyle-variant-card small{margin-top:.4rem}
@media(max-width:700px){.gargoyle-variant-options{grid-template-columns:1fr}}

/* character-create-dark-ages.php - presentation */
.phase5-form.da-editor .rating-track-block{max-width:100%;min-width:0}
.phase5-form.da-editor .dot-track{flex-wrap:wrap;max-width:100%;justify-content:flex-end}
.phase5-form.da-editor .phase5-rating-row{flex-wrap:wrap}

/* character-create-dark-ages.php - presentation */
.da-editor .eyebrow,.phase5-head .eyebrow{display:none!important}

/* character-create-dark-ages.php - presentation */
.da-origin[hidden]{display:none!important}

/* character-create-talmahera.php - presentation */
.phase5-form.tmr-editor .rating-track-block{max-width:100%;min-width:0}
.phase5-form.tmr-editor .dot-track{flex-wrap:wrap;max-width:100%;justify-content:flex-end}
.phase5-form.tmr-editor .phase5-rating-row{flex-wrap:wrap}

/* character-create-talmahera.php - presentation */
/* Only Generation may exceed the usual five-dot track. */
.phase5-form .tmr-generation-row{flex-wrap:wrap}
.phase5-form .tmr-generation-row .rating-track-block{max-width:100%;min-width:0;flex-shrink:1}
.phase5-form .tmr-generation-row .dot-track{flex-wrap:wrap;justify-content:flex-end;max-width:24rem}
.revenant-discipline-dialog{width:min(42rem,calc(100vw - 2rem));max-height:90vh;overflow:auto;color:inherit;background:var(--panel,#171717);border:1px solid var(--line,#555)}
.revenant-discipline-dialog::backdrop{background:rgba(0,0,0,.72)}
.revenant-discipline-dialog .budget-line{margin-top:1rem}
.revenant-discipline-dialog .revenant-point-track{display:flex;gap:.4rem;align-items:center}
.revenant-discipline-dialog .revenant-point-button{border:0;background:transparent;color:inherit;font-size:1.65rem;line-height:1;cursor:pointer;padding:.25rem}
.revenant-discipline-dialog .revenant-point-button.is-filled{color:#b3212d}
.phase5-head .eyebrow,.phase5-panel .eyebrow,.phase5-budget>.eyebrow{display:none!important}
.gargoyle-variant-dialog{width:min(54rem,calc(100vw - 2rem));max-height:90vh;overflow:auto;color:inherit;background:var(--panel,#171717);border:1px solid var(--line,#555)}
.gargoyle-variant-dialog::backdrop{background:rgba(0,0,0,.72)}
.gargoyle-variant-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.gargoyle-variant-card{display:block;border:1px solid var(--line,#555);border-radius:.6rem;padding:1rem;cursor:pointer}
.gargoyle-variant-card:has(input:checked){border-color:#b3212d;box-shadow:0 0 0 1px #b3212d inset}
.gargoyle-variant-card strong,.gargoyle-variant-card small{display:block}.gargoyle-variant-card small{margin-top:.4rem}
@media(max-width:700px){.gargoyle-variant-options{grid-template-columns:1fr}}

/* Blood magic paths */
.path-system{grid-column:1/-1;min-width:0;margin-top:.65rem}
 .path-system summary{cursor:pointer;color:var(--accent,#8f202c)}
 .path-original{font-size:1rem;line-height:1.55;overflow-wrap:anywhere}
 .path-original p{white-space:normal;margin:.7rem 0}
 .path-original h4{margin:1rem 0 .4rem}
 .path-table-wrap,.compendium-table-wrap{max-width:100%;overflow-x:auto}
 .path-table-wrap table,.compendium-table-wrap table{border-collapse:collapse;width:100%}
 .path-table-wrap th,.path-table-wrap td,.compendium-table-wrap th,.compendium-table-wrap td{padding:.4rem .65rem;text-align:left;vertical-align:top;border-bottom:1px solid #bdb5b5}
 .phase5-form .phase5-rating-row.has-primary-path,#nv-editor .phase5-rating-row.has-primary-path{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center;min-width:0}
 .phase5-rating-row>.primary-path-field{grid-column:1/-1;min-width:0;width:100%;margin-top:8px}
 .primary-path-field label{display:grid;gap:7px;min-width:0}.primary-path-field label>span{font-size:.8rem;color:var(--text-muted,#b5afb3)}
 .primary-path-field select{box-sizing:border-box;min-width:0;width:100%;max-width:100%}.primary-path-field small{display:block;margin:7px 0 3px;color:var(--text-muted,#b5afb3);font-size:.75rem;overflow-wrap:anywhere}
 .nv-editor .dot-button:disabled:not(.is-regular-filled):not(.is-freebie-filled):not(.is-xp-filled){color:#777!important;opacity:.45;cursor:not-allowed}
 .secondary-path-field{margin-top:12px;padding-top:10px;border-top:1px solid var(--border,#49393e)}
 .secondary-path-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:10px;min-width:0}.secondary-path-row strong{font-size:.85rem;overflow-wrap:anywhere}
 .secondary-path-dots{display:flex;gap:4px;align-items:center;white-space:nowrap}.secondary-path-dot{appearance:none;border:0;background:transparent;color:#74666b;padding:0;min-width:19px;min-height:24px;font-size:1.2rem;line-height:1;cursor:pointer}
 .secondary-path-dot.is-freebie-filled{color:#c24150}.secondary-path-dot.is-xp-filled{color:#5898d4}.secondary-path-dot:disabled{opacity:.4;cursor:not-allowed}.secondary-path-row small[role=alert]{color:#ed8490}
 .secondary-path-recovery{padding:12px;box-sizing:border-box;border:1px solid #ad4855}
 @media(max-width:560px){.secondary-path-row{grid-template-columns:1fr}.secondary-path-dots{justify-self:start}}

/* Experience controls */
.dot-button.is-xp-filled,.derived-dot-button.is-xp-filled,.xp-path-dot.is-xp-filled{
            color:#58a9ff!important;text-shadow:0 0 9px rgba(88,169,255,.42)!important;
        }
        .experience-panel{border-color:#315f8f!important;box-shadow:inset 4px 0 0 #2f78bd!important}
        .experience-panel[hidden]{display:none!important}
        .experience-path-picker{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;margin-bottom:12px}
        .experience-path-list{display:grid;gap:10px}
        .experience-combination-list{display:grid;gap:10px}
        .experience-combination-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--border-soft);border-radius:9px;background:#10151b}
        .experience-combination-row.is-purchased{border-color:#315f8f;box-shadow:inset 4px 0 0 #2f78bd}
        .experience-combination-row.is-purchased strong{color:#58a9ff}
        .experience-path-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--border-soft);border-radius:9px;background:#10151b}
        .experience-path-row strong,.experience-path-row small{display:block}.experience-path-row small{margin-top:4px;color:var(--muted);font-size:.72rem}
        .experience-path-dots{display:flex;align-items:center;gap:4px;white-space:nowrap}
        .xp-path-dot{appearance:none;border:0;background:transparent;color:#50484b;padding:0;min-width:19px;min-height:19px;font-size:1.2rem;line-height:1;cursor:pointer}
        .xp-locked{pointer-events:none;opacity:.62}
        .xp-mode .rating-remove-button,.xp-mode .trait-remove-button,.xp-mode .da-trait-remove{display:none!important}
        @media(max-width:760px){.experience-path-picker,.experience-path-row{grid-template-columns:1fr}.experience-path-dots{justify-content:flex-start}}

/* Shared point colours: regular allocation remains visible in every phase */
.phase5-form {
    --editor-regular-point: #fff;
}
.phase5-form .is-regular-filled:not(.is-freebie-filled):not(.is-xp-filled) {
    color: var(--editor-regular-point) !important;
    text-shadow: none !important;
    opacity: 1;
}
.phase5-form .dot-button:is(.is-regular-filled, .is-freebie-filled, .is-xp-filled):disabled,
.phase5-form .derived-dot-button:is(.is-regular-filled, .is-freebie-filled, .is-xp-filled):disabled {
    opacity: 1;
}
/* The revenant-family selector assigns regular starting discipline points. */
.revenant-discipline-dialog .revenant-point-button.is-filled {
    color: var(--editor-regular-point, #fff);
    text-shadow: none;
}
