.narrative-builder .nb-compact-button{height:28px;min-height:0;width:auto;padding:4px 8px;font-size:12px;line-height:18px;flex:0 0 auto}
.narrative-builder .nb-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.narrative-builder .nb-assignment-toggle{display:flex;align-items:center;gap:10px;flex:1 1 220px;min-width:0;padding:0;border:0;background:transparent;text-align:left;color:inherit;font:inherit;cursor:pointer}
.narrative-builder .nb-assignment-toggle:focus-visible{outline:2px solid #23b7e5;outline-offset:4px}
.narrative-builder .nb-assignment-summary{min-width:0;overflow-wrap:anywhere}
.narrative-builder .nb-assignment-summary strong,.narrative-builder .nb-assignment-summary small{display:block}
.narrative-builder .nb-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start}
.narrative-builder .nb-library{position:sticky;top:12px}
.narrative-builder .nb-list{max-height:65vh;overflow:auto}
.narrative-builder .nb-list-item{display:block;width:100%;padding:12px 16px;text-align:left;background:#fff;border:0;border-top:1px solid #edf1f2;color:inherit;overflow-wrap:anywhere}
.narrative-builder .nb-list-item strong,.narrative-builder .nb-list-item span{display:block}
.narrative-builder .nb-list-item:hover{background:#f5fafc}
.narrative-builder .nb-list-item.active{background:#e9f5fb;border-left:3px solid #23b7e5;padding-left:13px}
.narrative-builder .nb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.narrative-builder .nb-wide{grid-column:1/-1}
.narrative-builder .nb-check{display:flex;gap:8px;align-items:center;font-weight:normal}
.narrative-builder .nb-reference{display:flex;align-items:start;gap:8px;margin-top:10px}
.narrative-builder .nb-reference-select{flex:1;min-width:0}
.narrative-builder .nb-version{width:95px}
.narrative-builder .nb-reference-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;min-height:34px}
.narrative-builder .nb-reference-actions .nb-compact-button{width:28px;padding:4px 0}
.narrative-builder .nb-reference-actions .btn > .fa{font-size:12px;line-height:18px}
.narrative-builder .nb-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid #edf1f2}
.narrative-builder .nb-preview-section{border-top:1px solid #dee5e7;padding:14px 0}
.narrative-builder .nb-section-tabs{display:flex;align-items:stretch;flex-wrap:wrap;gap:7px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #dee5e7}
.narrative-builder .nb-section-tab{margin:0!important;padding:8px 12px!important;background:#fff!important;border:1px solid #d8e0e5!important;border-radius:4px!important;color:#17366f!important;line-height:18px}
.narrative-builder .nb-section-tab:hover,.narrative-builder .nb-section-tab:focus{background:#f5f9fc!important;border-color:#9dabb5!important}
.narrative-builder .nb-section-tab.active{background:#eaf7fd!important;border-color:#23b7e5!important;box-shadow:inset 0 -2px 0 #23b7e5}
.narrative-builder .nb-section-tab-incomplete{border-color:#d9534f!important;background:#fff7f7!important;color:#a52b2b!important}
.narrative-builder .nb-section-tab-complete{border-color:#27c24c!important;background:#f4fbf6!important;color:#246b35!important}
.narrative-builder .nb-section-tab-incomplete.active{border-color:#d9534f!important;box-shadow:inset 0 -2px 0 #d9534f}
.narrative-builder .nb-section-tab-complete.active{border-color:#27c24c!important;box-shadow:inset 0 -2px 0 #27c24c}
.narrative-builder .nb-capture-section{padding:17px 18px;margin-bottom:16px;background:#fff;border:1px solid #dee5e7;border-radius:5px;transition:border-color .15s ease,box-shadow .15s ease}
.narrative-builder .nb-section-incomplete{border-color:#d9534f;box-shadow:0 0 0 1px rgba(217,83,79,.12)}
.narrative-builder .nb-section-complete{border-color:#27c24c;box-shadow:0 0 0 1px rgba(39,194,76,.12)}
.narrative-builder .nb-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.narrative-builder .nb-section-heading h4{margin:0}
.narrative-builder .nb-component-heading,.narrative-builder .nb-field-heading{font-weight:600}
.narrative-builder .nb-section-description,.narrative-builder .nb-field-subheading,.narrative-builder .nb-field-hint{font-size:12px;line-height:1.4}
.narrative-builder .nb-field-subheading{font-weight:500}
.narrative-builder .nb-period-selector{margin:2px 0 16px}
.narrative-builder .nb-period-panel{margin-top:0}
.narrative-builder .nb-period-panel>.panel-body{padding:6px 15px 2px}
.narrative-builder .nb-period-row{margin-bottom:4px}
.narrative-builder .nb-period-row:last-child{margin-bottom:0}
.narrative-builder .narrative-period-pipeline{padding:0}
.narrative-builder .narrative-period-pipeline .owl-stage-outer{overflow-x:auto;padding:2px 1px}
.narrative-builder .narrative-period-pipeline .owl-stage{display:flex;width:100%;min-width:max-content;margin:.35em auto .2em}
.narrative-builder .narrative-period-pipeline .narrative-period-item{flex:1 1 76px;min-width:72px;margin:0;padding:.2em .35em;background:#fff;border:0;border-top:1px solid #ccc;color:#58666e;font:inherit;line-height:1.42857143;cursor:pointer;appearance:none;-webkit-appearance:none}
.narrative-builder .narrative-period-pipeline .narrative-period-item:after{display:none!important}
.narrative-builder .narrative-period-pipeline .narrative-period-item:hover,.narrative-builder .narrative-period-pipeline .narrative-period-item:focus{background:#f5f9fc;outline:0}
.narrative-builder .narrative-period-pipeline .narrative-period-item.is-active{background:#eef6ff;border-radius:4px;color:#17366f;box-shadow:inset 0 0 0 1px #9dcfea}
.narrative-builder .narrative-period-pipeline .narrative-period-item:disabled{cursor:wait;opacity:.65}
.narrative-builder .narrative-period-pipeline .stage{display:block;padding:0}
.narrative-builder .narrative-period-pipeline .counter{display:block}
.narrative-builder .nb-preview-row{border:1px solid #dee5e7;padding:14px;margin:12px 0;background:#fcfdfe}
.narrative-builder .nb-preview-row .nb-toolbar{margin-bottom:12px}
.narrative-builder .nb-guidance{padding:10px 12px;background:#edf7fb;border-left:3px solid #23b7e5;white-space:pre-wrap}
.narrative-builder .nb-system-value{padding:9px;background:#edf1f2;color:#58666e;border:1px solid #dee5e7;border-radius:3px}
.narrative-builder .nb-grid>.form-group{min-width:0}
.narrative-builder .nb-grid .form-control{max-width:100%}
.narrative-builder .nb-system-option-list{max-height:180px;overflow-y:auto;border:1px solid #cfdadd;border-radius:4px;background:#fff}
.narrative-builder .nb-system-option{display:flex;align-items:flex-start;gap:8px;margin:0;padding:8px 10px;border-bottom:1px solid #edf1f2;font-weight:normal;line-height:1.35;cursor:pointer}
.narrative-builder .nb-system-option:last-of-type{border-bottom:0}
.narrative-builder .nb-system-option:hover{background:#f5f9fc}
.narrative-builder .nb-system-option input{flex:0 0 auto;margin-top:3px}
.narrative-builder .nb-system-option span{min-width:0;overflow-wrap:anywhere;word-break:break-word}
.narrative-builder .nb-system-option-empty{margin:0;padding:10px}
.narrative-builder .nb-preview input.ng-invalid.ng-touched,.narrative-builder .nb-preview textarea.ng-invalid.ng-touched,.narrative-builder .nb-preview select.ng-invalid.ng-touched{border-color:#c0392b}
.narrative-builder fieldset{min-width:0}
.narrative-builder .nb-detail{min-width:0}
@media(max-width:1000px){.narrative-builder .nb-workspace{grid-template-columns:240px minmax(0,1fr)}.narrative-builder .nb-reference{flex-wrap:wrap}.narrative-builder .nb-reference-select{flex-basis:100%}}
@media(max-width:767px){.narrative-builder .nb-workspace,.narrative-builder .nb-grid{grid-template-columns:1fr}.narrative-builder .nb-library{position:static}.narrative-builder .nb-list{max-height:260px}.narrative-builder .nb-wide{grid-column:auto}.narrative-builder .nb-section-tab{flex:1 1 100%;text-align:left}.narrative-builder .nb-capture-section{padding:14px}}
.narrative-builder .nb-tab{background:transparent;border:0;border-radius:0}
.narrative-builder .nb-tab.active{border-bottom:1px solid currentColor}
.narrative-builder .nb-tab:disabled{cursor:default;opacity:.65}
.narrative-preview-modal .modal-body{max-height:calc(100vh - 190px);overflow-y:auto}
.narrative-builder .nb-actions .nb-save-button{margin-left:auto}
.narrative-builder .nb-table-scroll{margin:12px 0;overflow-x:auto}
.narrative-builder .nb-preview-table{margin-bottom:0;background:#fff}
.narrative-builder .nb-preview-table > thead > tr > th{background:#f5f7fa;vertical-align:top;white-space:normal}
.narrative-builder .nb-preview-table > tbody > tr > td{vertical-align:top}
.narrative-builder .nb-preview-table .form-control{min-width:160px}
.narrative-builder .nb-preview-table .nb-table-long-text{min-width:260px}
.narrative-builder .nb-preview-table textarea{resize:vertical}
.narrative-builder .nb-preview-table .nb-system-value{min-width:160px}
.narrative-builder .nb-preview-table .nb-check{margin:8px 0}
.narrative-builder .nb-preview-table .nb-row-actions{width:1%;white-space:nowrap;text-align:center}
.narrative-builder .nb-component-rules{margin:18px 0;padding-top:12px;border-top:1px solid #edf1f2}
.narrative-builder .nb-component-rule{padding:12px;border:1px solid #dee5e7;border-radius:4px;margin-bottom:10px}
.narrative-builder .nb-component-rule .radio-inline{margin-top:0}
.narrative-builder .nb-system-settings{padding:14px;border:1px solid #dee5e7;border-radius:4px;margin:4px 0 16px;background:#fcfdfe}
.narrative-builder .nb-system-settings h4:first-child{margin-top:0}
.narrative-builder .nb-column-choices{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.narrative-builder .nb-column-choices .checkbox-inline{margin-left:0}
.narrative-builder .nb-system-column{padding:5px 0;border-bottom:1px solid #edf1f2}
.narrative-builder .nb-system-preview{min-width:0}
.narrative-builder .nb-status-green{background:#e4f5e7;color:#246b35;border-color:#b8dcbc}
.narrative-builder .nb-status-amber{background:#fff3d6;color:#805900;border-color:#ead59d}
.narrative-builder .nb-status-red{background:#fce7e7;color:#a52b2b;border-color:#e7b9b9}
