.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale3d(0, 0, 0);background-color:var(--mat-ripple-color, rgba(0, 0, 0, 0.1))}.cdk-high-contrast-active .mat-ripple-element{display:none}.cdk-drag-preview .mat-ripple-element,.cdk-drag-placeholder .mat-ripple-element{display:none}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{padding:2px 0 !important;box-sizing:content-box !important;height:auto !important;overflow:hidden !important}textarea.cdk-textarea-autosize-measuring-firefox{padding:2px 0 !important;box-sizing:content-box !important;height:0 !important}@keyframes cdk-text-field-autofill-start{/*!*/}@keyframes cdk-text-field-autofill-end{/*!*/}.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){animation:cdk-text-field-autofill-end 0s 1ms}.mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border:var(--mat-focus-indicator-border-width, 3px) var(--mat-focus-indicator-border-style, solid) var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus::before{content:""}.cdk-high-contrast-active{--mat-focus-indicator-display: block}.mat-mdc-focus-indicator{position:relative}.mat-mdc-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-mdc-focus-indicator-display, none);border:var(--mat-mdc-focus-indicator-border-width, 3px) var(--mat-mdc-focus-indicator-border-style, solid) var(--mat-mdc-focus-indicator-border-color, transparent);border-radius:var(--mat-mdc-focus-indicator-border-radius, 4px)}.mat-mdc-focus-indicator:focus::before{content:""}.cdk-high-contrast-active{--mat-mdc-focus-indicator-display: block}.mat-app-background{background-color:var(--mat-app-background-color, var(--mat-app-background, transparent));color:var(--mat-app-text-color, var(--mat-app-on-background, inherit))}.mat-elevation-z0,.mat-mdc-elevation-specific.mat-elevation-z0{box-shadow:var(--mat-app-elevation-shadow-level-0, none)}.mat-elevation-z1,.mat-mdc-elevation-specific.mat-elevation-z1{box-shadow:var(--mat-app-elevation-shadow-level-1, none)}.mat-elevation-z2,.mat-mdc-elevation-specific.mat-elevation-z2{box-shadow:var(--mat-app-elevation-shadow-level-2, none)}.mat-elevation-z3,.mat-mdc-elevation-specific.mat-elevation-z3{box-shadow:var(--mat-app-elevation-shadow-level-3, none)}.mat-elevation-z4,.mat-mdc-elevation-specific.mat-elevation-z4{box-shadow:var(--mat-app-elevation-shadow-level-4, none)}.mat-elevation-z5,.mat-mdc-elevation-specific.mat-elevation-z5{box-shadow:var(--mat-app-elevation-shadow-level-5, none)}.mat-elevation-z6,.mat-mdc-elevation-specific.mat-elevation-z6{box-shadow:var(--mat-app-elevation-shadow-level-6, none)}.mat-elevation-z7,.mat-mdc-elevation-specific.mat-elevation-z7{box-shadow:var(--mat-app-elevation-shadow-level-7, none)}.mat-elevation-z8,.mat-mdc-elevation-specific.mat-elevation-z8{box-shadow:var(--mat-app-elevation-shadow-level-8, none)}.mat-elevation-z9,.mat-mdc-elevation-specific.mat-elevation-z9{box-shadow:var(--mat-app-elevation-shadow-level-9, none)}.mat-elevation-z10,.mat-mdc-elevation-specific.mat-elevation-z10{box-shadow:var(--mat-app-elevation-shadow-level-10, none)}.mat-elevation-z11,.mat-mdc-elevation-specific.mat-elevation-z11{box-shadow:var(--mat-app-elevation-shadow-level-11, none)}.mat-elevation-z12,.mat-mdc-elevation-specific.mat-elevation-z12{box-shadow:var(--mat-app-elevation-shadow-level-12, none)}.mat-elevation-z13,.mat-mdc-elevation-specific.mat-elevation-z13{box-shadow:var(--mat-app-elevation-shadow-level-13, none)}.mat-elevation-z14,.mat-mdc-elevation-specific.mat-elevation-z14{box-shadow:var(--mat-app-elevation-shadow-level-14, none)}.mat-elevation-z15,.mat-mdc-elevation-specific.mat-elevation-z15{box-shadow:var(--mat-app-elevation-shadow-level-15, none)}.mat-elevation-z16,.mat-mdc-elevation-specific.mat-elevation-z16{box-shadow:var(--mat-app-elevation-shadow-level-16, none)}.mat-elevation-z17,.mat-mdc-elevation-specific.mat-elevation-z17{box-shadow:var(--mat-app-elevation-shadow-level-17, none)}.mat-elevation-z18,.mat-mdc-elevation-specific.mat-elevation-z18{box-shadow:var(--mat-app-elevation-shadow-level-18, none)}.mat-elevation-z19,.mat-mdc-elevation-specific.mat-elevation-z19{box-shadow:var(--mat-app-elevation-shadow-level-19, none)}.mat-elevation-z20,.mat-mdc-elevation-specific.mat-elevation-z20{box-shadow:var(--mat-app-elevation-shadow-level-20, none)}.mat-elevation-z21,.mat-mdc-elevation-specific.mat-elevation-z21{box-shadow:var(--mat-app-elevation-shadow-level-21, none)}.mat-elevation-z22,.mat-mdc-elevation-specific.mat-elevation-z22{box-shadow:var(--mat-app-elevation-shadow-level-22, none)}.mat-elevation-z23,.mat-mdc-elevation-specific.mat-elevation-z23{box-shadow:var(--mat-app-elevation-shadow-level-23, none)}.mat-elevation-z24,.mat-mdc-elevation-specific.mat-elevation-z24{box-shadow:var(--mat-app-elevation-shadow-level-24, none)}html{--mdc-filled-button-container-shape: 4px}.cdk-global-scrollblock{overflow:hidden}.mat-theme-loaded-marker{display:none}html{--mat-ripple-color:rgba(0, 0, 0, 0.1)}html{--mat-option-selected-state-label-text-color:white;--mat-option-label-text-color:rgba(0, 0, 0, 0.87);--mat-option-hover-state-layer-color:rgba(0, 0, 0, 0.04);--mat-option-focus-state-layer-color:rgba(0, 0, 0, 0.04);--mat-option-selected-state-layer-color:rgba(0, 0, 0, 0.04)}.mat-accent{--mat-option-selected-state-label-text-color:#a60000;--mat-option-label-text-color:rgba(0, 0, 0, 0.87);--mat-option-hover-state-layer-color:rgba(0, 0, 0, 0.04);--mat-option-focus-state-layer-color:rgba(0, 0, 0, 0.04);--mat-option-selected-state-layer-color:rgba(0, 0, 0, 0.04)}.mat-warn{--mat-option-selected-state-label-text-color:#f44336;--mat-option-label-text-color:rgba(0, 0, 0, 0.87);--mat-option-hover-state-layer-color:rgba(0, 0, 0, 0.04);--mat-option-focus-state-layer-color:rgba(0, 0, 0, 0.04);--mat-option-selected-state-layer-color:rgba(0, 0, 0, 0.04)}html{--mat-optgroup-label-text-color:rgba(0, 0, 0, 0.87)}.mat-primary{--mat-full-pseudo-checkbox-selected-icon-color:white;--mat-full-pseudo-checkbox-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mat-full-pseudo-checkbox-disabled-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-disabled-unselected-icon-color:#b0b0b0;--mat-full-pseudo-checkbox-disabled-selected-icon-color:#b0b0b0;--mat-minimal-pseudo-checkbox-selected-checkmark-color:white;--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color:#b0b0b0}html{--mat-full-pseudo-checkbox-selected-icon-color:#a60000;--mat-full-pseudo-checkbox-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mat-full-pseudo-checkbox-disabled-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-disabled-unselected-icon-color:#b0b0b0;--mat-full-pseudo-checkbox-disabled-selected-icon-color:#b0b0b0;--mat-minimal-pseudo-checkbox-selected-checkmark-color:#a60000;--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color:#b0b0b0}.mat-accent{--mat-full-pseudo-checkbox-selected-icon-color:#a60000;--mat-full-pseudo-checkbox-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mat-full-pseudo-checkbox-disabled-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-disabled-unselected-icon-color:#b0b0b0;--mat-full-pseudo-checkbox-disabled-selected-icon-color:#b0b0b0;--mat-minimal-pseudo-checkbox-selected-checkmark-color:#a60000;--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color:#b0b0b0}.mat-warn{--mat-full-pseudo-checkbox-selected-icon-color:#f44336;--mat-full-pseudo-checkbox-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mat-full-pseudo-checkbox-disabled-selected-checkmark-color:#fafafa;--mat-full-pseudo-checkbox-disabled-unselected-icon-color:#b0b0b0;--mat-full-pseudo-checkbox-disabled-selected-icon-color:#b0b0b0;--mat-minimal-pseudo-checkbox-selected-checkmark-color:#f44336;--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color:#b0b0b0}html{--mat-app-background-color:#fafafa;--mat-app-text-color:rgba(0, 0, 0, 0.87);--mat-app-elevation-shadow-level-0:0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-1:0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-2:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-3:0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-4:0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-5:0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-6:0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-7:0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-8:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-9:0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-10:0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-11:0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-12:0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-13:0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-14:0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-15:0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-16:0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-17:0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-18:0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-19:0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-20:0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-21:0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-22:0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-23:0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);--mat-app-elevation-shadow-level-24:0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12)}html{--mat-option-label-text-font:Roboto, sans-serif;--mat-option-label-text-line-height:24px;--mat-option-label-text-size:16px;--mat-option-label-text-tracking:0.03125em;--mat-option-label-text-weight:400}html{--mat-optgroup-label-text-font:Roboto, sans-serif;--mat-optgroup-label-text-line-height:24px;--mat-optgroup-label-text-size:16px;--mat-optgroup-label-text-tracking:0.03125em;--mat-optgroup-label-text-weight:400}html{--mdc-elevated-card-container-shape:4px;--mdc-outlined-card-container-shape:4px;--mdc-outlined-card-outline-width:1px}html{--mdc-elevated-card-container-color:white;--mdc-elevated-card-container-elevation:0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);--mdc-outlined-card-container-color:white;--mdc-outlined-card-outline-color:rgba(0, 0, 0, 0.12);--mdc-outlined-card-container-elevation:0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);--mat-card-subtitle-text-color:rgba(0, 0, 0, 0.54)}html{--mat-card-title-text-font:Roboto, sans-serif;--mat-card-title-text-line-height:32px;--mat-card-title-text-size:20px;--mat-card-title-text-tracking:0.0125em;--mat-card-title-text-weight:500;--mat-card-subtitle-text-font:Roboto, sans-serif;--mat-card-subtitle-text-line-height:22px;--mat-card-subtitle-text-size:14px;--mat-card-subtitle-text-tracking:0.0071428571em;--mat-card-subtitle-text-weight:500}html{--mdc-linear-progress-active-indicator-height:4px;--mdc-linear-progress-track-height:4px;--mdc-linear-progress-track-shape:0}.mat-mdc-progress-bar{--mdc-linear-progress-active-indicator-color:white;--mdc-linear-progress-track-color:rgba(255, 255, 255, 0.25)}.mat-mdc-progress-bar.mat-accent{--mdc-linear-progress-active-indicator-color:#a60000;--mdc-linear-progress-track-color:rgba(166, 0, 0, 0.25)}.mat-mdc-progress-bar.mat-warn{--mdc-linear-progress-active-indicator-color:#f44336;--mdc-linear-progress-track-color:rgba(244, 67, 54, 0.25)}html{--mdc-plain-tooltip-container-shape:4px;--mdc-plain-tooltip-supporting-text-line-height:16px}html{--mdc-plain-tooltip-container-color:#616161;--mdc-plain-tooltip-supporting-text-color:#fff}html{--mdc-plain-tooltip-supporting-text-font:Roboto, sans-serif;--mdc-plain-tooltip-supporting-text-size:12px;--mdc-plain-tooltip-supporting-text-weight:400;--mdc-plain-tooltip-supporting-text-tracking:0.0333333333em}html{--mdc-filled-text-field-active-indicator-height:1px;--mdc-filled-text-field-focus-active-indicator-height:2px;--mdc-filled-text-field-container-shape:4px;--mdc-outlined-text-field-outline-width:1px;--mdc-outlined-text-field-focus-outline-width:2px;--mdc-outlined-text-field-container-shape:4px}html{--mdc-filled-text-field-caret-color:white;--mdc-filled-text-field-focus-active-indicator-color:white;--mdc-filled-text-field-focus-label-text-color:rgba(255, 255, 255, 0.87);--mdc-filled-text-field-container-color:whitesmoke;--mdc-filled-text-field-disabled-container-color:#fafafa;--mdc-filled-text-field-label-text-color:rgba(0, 0, 0, 0.6);--mdc-filled-text-field-hover-label-text-color:rgba(0, 0, 0, 0.6);--mdc-filled-text-field-disabled-label-text-color:rgba(0, 0, 0, 0.38);--mdc-filled-text-field-input-text-color:rgba(0, 0, 0, 0.87);--mdc-filled-text-field-disabled-input-text-color:rgba(0, 0, 0, 0.38);--mdc-filled-text-field-input-text-placeholder-color:rgba(0, 0, 0, 0.6);--mdc-filled-text-field-error-hover-label-text-color:#f44336;--mdc-filled-text-field-error-focus-label-text-color:#f44336;--mdc-filled-text-field-error-label-text-color:#f44336;--mdc-filled-text-field-error-caret-color:#f44336;--mdc-filled-text-field-active-indicator-color:rgba(0, 0, 0, 0.42);--mdc-filled-text-field-disabled-active-indicator-color:rgba(0, 0, 0, 0.06);--mdc-filled-text-field-hover-active-indicator-color:rgba(0, 0, 0, 0.87);--mdc-filled-text-field-error-active-indicator-color:#f44336;--mdc-filled-text-field-error-focus-active-indicator-color:#f44336;--mdc-filled-text-field-error-hover-active-indicator-color:#f44336;--mdc-outlined-text-field-caret-color:white;--mdc-outlined-text-field-focus-outline-color:white;--mdc-outlined-text-field-focus-label-text-color:rgba(255, 255, 255, 0.87);--mdc-outlined-text-field-label-text-color:rgba(0, 0, 0, 0.6);--mdc-outlined-text-field-hover-label-text-color:rgba(0, 0, 0, 0.6);--mdc-outlined-text-field-disabled-label-text-color:rgba(0, 0, 0, 0.38);--mdc-outlined-text-field-input-text-color:rgba(0, 0, 0, 0.87);--mdc-outlined-text-field-disabled-input-text-color:rgba(0, 0, 0, 0.38);--mdc-outlined-text-field-input-text-placeholder-color:rgba(0, 0, 0, 0.6);--mdc-outlined-text-field-error-caret-color:#f44336;--mdc-outlined-text-field-error-focus-label-text-color:#f44336;--mdc-outlined-text-field-error-label-text-color:#f44336;--mdc-outlined-text-field-error-hover-label-text-color:#f44336;--mdc-outlined-text-field-outline-color:rgba(0, 0, 0, 0.38);--mdc-outlined-text-field-disabled-outline-color:rgba(0, 0, 0, 0.06);--mdc-outlined-text-field-hover-outline-color:rgba(0, 0, 0, 0.87);--mdc-outlined-text-field-error-focus-outline-color:#f44336;--mdc-outlined-text-field-error-hover-outline-color:#f44336;--mdc-outlined-text-field-error-outline-color:#f44336;--mat-form-field-focus-select-arrow-color:rgba(255, 255, 255, 0.87);--mat-form-field-disabled-input-text-placeholder-color:rgba(0, 0, 0, 0.38);--mat-form-field-state-layer-color:rgba(0, 0, 0, 0.87);--mat-form-field-error-text-color:#f44336;--mat-form-field-select-option-text-color:inherit;--mat-form-field-select-disabled-option-text-color:GrayText;--mat-form-field-leading-icon-color:unset;--mat-form-field-disabled-leading-icon-color:unset;--mat-form-field-trailing-icon-color:unset;--mat-form-field-disabled-trailing-icon-color:unset;--mat-form-field-error-focus-trailing-icon-color:unset;--mat-form-field-error-hover-trailing-icon-color:unset;--mat-form-field-error-trailing-icon-color:unset;--mat-form-field-enabled-select-arrow-color:rgba(0, 0, 0, 0.54);--mat-form-field-disabled-select-arrow-color:rgba(0, 0, 0, 0.38);--mat-form-field-hover-state-layer-opacity:0.04;--mat-form-field-focus-state-layer-opacity:0.08}.mat-mdc-form-field.mat-accent{--mdc-filled-text-field-caret-color:#a60000;--mdc-filled-text-field-focus-active-indicator-color:#a60000;--mdc-filled-text-field-focus-label-text-color:rgba(166, 0, 0, 0.87);--mdc-outlined-text-field-caret-color:#a60000;--mdc-outlined-text-field-focus-outline-color:#a60000;--mdc-outlined-text-field-focus-label-text-color:rgba(166, 0, 0, 0.87);--mat-form-field-focus-select-arrow-color:rgba(166, 0, 0, 0.87)}.mat-mdc-form-field.mat-warn{--mdc-filled-text-field-caret-color:#f44336;--mdc-filled-text-field-focus-active-indicator-color:#f44336;--mdc-filled-text-field-focus-label-text-color:rgba(244, 67, 54, 0.87);--mdc-outlined-text-field-caret-color:#f44336;--mdc-outlined-text-field-focus-outline-color:#f44336;--mdc-outlined-text-field-focus-label-text-color:rgba(244, 67, 54, 0.87);--mat-form-field-focus-select-arrow-color:rgba(244, 67, 54, 0.87)}html{--mat-form-field-container-height:56px;--mat-form-field-filled-label-display:block;--mat-form-field-container-vertical-padding:16px;--mat-form-field-filled-with-label-container-padding-top:24px;--mat-form-field-filled-with-label-container-padding-bottom:8px}html{--mdc-filled-text-field-label-text-font:Roboto, sans-serif;--mdc-filled-text-field-label-text-size:16px;--mdc-filled-text-field-label-text-tracking:0.03125em;--mdc-filled-text-field-label-text-weight:400;--mdc-outlined-text-field-label-text-font:Roboto, sans-serif;--mdc-outlined-text-field-label-text-size:16px;--mdc-outlined-text-field-label-text-tracking:0.03125em;--mdc-outlined-text-field-label-text-weight:400;--mat-form-field-container-text-font:Roboto, sans-serif;--mat-form-field-container-text-line-height:24px;--mat-form-field-container-text-size:16px;--mat-form-field-container-text-tracking:0.03125em;--mat-form-field-container-text-weight:400;--mat-form-field-outlined-label-text-populated-size:16px;--mat-form-field-subscript-text-font:Roboto, sans-serif;--mat-form-field-subscript-text-line-height:20px;--mat-form-field-subscript-text-size:12px;--mat-form-field-subscript-text-tracking:0.0333333333em;--mat-form-field-subscript-text-weight:400}html{--mat-select-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12)}html{--mat-select-panel-background-color:white;--mat-select-enabled-trigger-text-color:rgba(0, 0, 0, 0.87);--mat-select-disabled-trigger-text-color:rgba(0, 0, 0, 0.38);--mat-select-placeholder-text-color:rgba(0, 0, 0, 0.6);--mat-select-enabled-arrow-color:rgba(0, 0, 0, 0.54);--mat-select-disabled-arrow-color:rgba(0, 0, 0, 0.38);--mat-select-focused-arrow-color:rgba(255, 255, 255, 0.87);--mat-select-invalid-arrow-color:rgba(244, 67, 54, 0.87)}html .mat-mdc-form-field.mat-accent{--mat-select-panel-background-color:white;--mat-select-enabled-trigger-text-color:rgba(0, 0, 0, 0.87);--mat-select-disabled-trigger-text-color:rgba(0, 0, 0, 0.38);--mat-select-placeholder-text-color:rgba(0, 0, 0, 0.6);--mat-select-enabled-arrow-color:rgba(0, 0, 0, 0.54);--mat-select-disabled-arrow-color:rgba(0, 0, 0, 0.38);--mat-select-focused-arrow-color:rgba(166, 0, 0, 0.87);--mat-select-invalid-arrow-color:rgba(244, 67, 54, 0.87)}html .mat-mdc-form-field.mat-warn{--mat-select-panel-background-color:white;--mat-select-enabled-trigger-text-color:rgba(0, 0, 0, 0.87);--mat-select-disabled-trigger-text-color:rgba(0, 0, 0, 0.38);--mat-select-placeholder-text-color:rgba(0, 0, 0, 0.6);--mat-select-enabled-arrow-color:rgba(0, 0, 0, 0.54);--mat-select-disabled-arrow-color:rgba(0, 0, 0, 0.38);--mat-select-focused-arrow-color:rgba(244, 67, 54, 0.87);--mat-select-invalid-arrow-color:rgba(244, 67, 54, 0.87)}html{--mat-select-arrow-transform:translateY(-8px)}html{--mat-select-trigger-text-font:Roboto, sans-serif;--mat-select-trigger-text-line-height:24px;--mat-select-trigger-text-size:16px;--mat-select-trigger-text-tracking:0.03125em;--mat-select-trigger-text-weight:400}html{--mat-autocomplete-container-shape:4px;--mat-autocomplete-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12)}html{--mat-autocomplete-background-color:white}html{--mdc-dialog-container-shape:4px;--mat-dialog-container-elevation-shadow:0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);--mat-dialog-container-max-width:80vw;--mat-dialog-container-small-max-width:80vw;--mat-dialog-container-min-width:0;--mat-dialog-actions-alignment:start;--mat-dialog-actions-padding:8px;--mat-dialog-content-padding:20px 24px;--mat-dialog-with-actions-content-padding:20px 24px;--mat-dialog-headline-padding:0 24px 9px}html{--mdc-dialog-container-color:white;--mdc-dialog-subhead-color:rgba(0, 0, 0, 0.87);--mdc-dialog-supporting-text-color:rgba(0, 0, 0, 0.6)}html{--mdc-dialog-subhead-font:Roboto, sans-serif;--mdc-dialog-subhead-line-height:32px;--mdc-dialog-subhead-size:20px;--mdc-dialog-subhead-weight:500;--mdc-dialog-subhead-tracking:0.0125em;--mdc-dialog-supporting-text-font:Roboto, sans-serif;--mdc-dialog-supporting-text-line-height:24px;--mdc-dialog-supporting-text-size:16px;--mdc-dialog-supporting-text-weight:400;--mdc-dialog-supporting-text-tracking:0.03125em}.mat-mdc-standard-chip{--mdc-chip-container-shape-radius:16px;--mdc-chip-with-avatar-avatar-shape-radius:14px;--mdc-chip-with-avatar-avatar-size:28px;--mdc-chip-with-icon-icon-size:18px;--mdc-chip-outline-width:0;--mdc-chip-outline-color:transparent;--mdc-chip-disabled-outline-color:transparent;--mdc-chip-focus-outline-color:transparent;--mdc-chip-hover-state-layer-opacity:0.04;--mdc-chip-with-avatar-disabled-avatar-opacity:1;--mdc-chip-flat-selected-outline-width:0;--mdc-chip-selected-hover-state-layer-opacity:0.04;--mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity:1;--mdc-chip-with-icon-disabled-icon-opacity:1;--mat-chip-disabled-container-opacity:0.4;--mat-chip-trailing-action-opacity:0.54;--mat-chip-trailing-action-focus-opacity:1;--mat-chip-trailing-action-state-layer-color:transparent;--mat-chip-selected-trailing-action-state-layer-color:transparent;--mat-chip-trailing-action-hover-state-layer-opacity:0;--mat-chip-trailing-action-focus-state-layer-opacity:0}.mat-mdc-standard-chip{--mdc-chip-disabled-label-text-color:#212121;--mdc-chip-elevated-container-color:#e0e0e0;--mdc-chip-elevated-selected-container-color:#e0e0e0;--mdc-chip-elevated-disabled-container-color:#e0e0e0;--mdc-chip-flat-disabled-selected-container-color:#e0e0e0;--mdc-chip-focus-state-layer-color:black;--mdc-chip-hover-state-layer-color:black;--mdc-chip-selected-hover-state-layer-color:black;--mdc-chip-focus-state-layer-opacity:0.12;--mdc-chip-selected-focus-state-layer-color:black;--mdc-chip-selected-focus-state-layer-opacity:0.12;--mdc-chip-label-text-color:#212121;--mdc-chip-selected-label-text-color:#212121;--mdc-chip-with-icon-icon-color:#212121;--mdc-chip-with-icon-disabled-icon-color:#212121;--mdc-chip-with-icon-selected-icon-color:#212121;--mdc-chip-with-trailing-icon-disabled-trailing-icon-color:#212121;--mdc-chip-with-trailing-icon-trailing-icon-color:#212121;--mat-chip-selected-disabled-trailing-icon-color:#212121;--mat-chip-selected-trailing-icon-color:#212121}.mat-mdc-standard-chip.mat-mdc-chip-selected.mat-primary,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mat-primary{--mdc-chip-disabled-label-text-color:black;--mdc-chip-elevated-container-color:white;--mdc-chip-elevated-selected-container-color:white;--mdc-chip-elevated-disabled-container-color:white;--mdc-chip-flat-disabled-selected-container-color:white;--mdc-chip-focus-state-layer-color:black;--mdc-chip-hover-state-layer-color:black;--mdc-chip-selected-hover-state-layer-color:black;--mdc-chip-focus-state-layer-opacity:0.12;--mdc-chip-selected-focus-state-layer-color:black;--mdc-chip-selected-focus-state-layer-opacity:0.12;--mdc-chip-label-text-color:black;--mdc-chip-selected-label-text-color:black;--mdc-chip-with-icon-icon-color:black;--mdc-chip-with-icon-disabled-icon-color:black;--mdc-chip-with-icon-selected-icon-color:black;--mdc-chip-with-trailing-icon-disabled-trailing-icon-color:black;--mdc-chip-with-trailing-icon-trailing-icon-color:black;--mat-chip-selected-disabled-trailing-icon-color:black;--mat-chip-selected-trailing-icon-color:black}.mat-mdc-standard-chip.mat-mdc-chip-selected.mat-accent,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mat-accent{--mdc-chip-disabled-label-text-color:white;--mdc-chip-elevated-container-color:#a60000;--mdc-chip-elevated-selected-container-color:#a60000;--mdc-chip-elevated-disabled-container-color:#a60000;--mdc-chip-flat-disabled-selected-container-color:#a60000;--mdc-chip-focus-state-layer-color:black;--mdc-chip-hover-state-layer-color:black;--mdc-chip-selected-hover-state-layer-color:black;--mdc-chip-focus-state-layer-opacity:0.12;--mdc-chip-selected-focus-state-layer-color:black;--mdc-chip-selected-focus-state-layer-opacity:0.12;--mdc-chip-label-text-color:white;--mdc-chip-selected-label-text-color:white;--mdc-chip-with-icon-icon-color:white;--mdc-chip-with-icon-disabled-icon-color:white;--mdc-chip-with-icon-selected-icon-color:white;--mdc-chip-with-trailing-icon-disabled-trailing-icon-color:white;--mdc-chip-with-trailing-icon-trailing-icon-color:white;--mat-chip-selected-disabled-trailing-icon-color:white;--mat-chip-selected-trailing-icon-color:white}.mat-mdc-standard-chip.mat-mdc-chip-selected.mat-warn,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mat-warn{--mdc-chip-disabled-label-text-color:white;--mdc-chip-elevated-container-color:#f44336;--mdc-chip-elevated-selected-container-color:#f44336;--mdc-chip-elevated-disabled-container-color:#f44336;--mdc-chip-flat-disabled-selected-container-color:#f44336;--mdc-chip-focus-state-layer-color:black;--mdc-chip-hover-state-layer-color:black;--mdc-chip-selected-hover-state-layer-color:black;--mdc-chip-focus-state-layer-opacity:0.12;--mdc-chip-selected-focus-state-layer-color:black;--mdc-chip-selected-focus-state-layer-opacity:0.12;--mdc-chip-label-text-color:white;--mdc-chip-selected-label-text-color:white;--mdc-chip-with-icon-icon-color:white;--mdc-chip-with-icon-disabled-icon-color:white;--mdc-chip-with-icon-selected-icon-color:white;--mdc-chip-with-trailing-icon-disabled-trailing-icon-color:white;--mdc-chip-with-trailing-icon-trailing-icon-color:white;--mat-chip-selected-disabled-trailing-icon-color:white;--mat-chip-selected-trailing-icon-color:white}.mat-mdc-chip.mat-mdc-standard-chip{--mdc-chip-container-height:32px}.mat-mdc-standard-chip{--mdc-chip-label-text-font:Roboto, sans-serif;--mdc-chip-label-text-line-height:20px;--mdc-chip-label-text-size:14px;--mdc-chip-label-text-tracking:0.0178571429em;--mdc-chip-label-text-weight:400}html{--mdc-switch-disabled-selected-icon-opacity:0.38;--mdc-switch-disabled-track-opacity:0.12;--mdc-switch-disabled-unselected-icon-opacity:0.38;--mdc-switch-handle-height:20px;--mdc-switch-handle-shape:10px;--mdc-switch-handle-width:20px;--mdc-switch-selected-icon-size:18px;--mdc-switch-track-height:14px;--mdc-switch-track-shape:7px;--mdc-switch-track-width:36px;--mdc-switch-unselected-icon-size:18px;--mdc-switch-selected-focus-state-layer-opacity:0.12;--mdc-switch-selected-hover-state-layer-opacity:0.04;--mdc-switch-selected-pressed-state-layer-opacity:0.1;--mdc-switch-unselected-focus-state-layer-opacity:0.12;--mdc-switch-unselected-hover-state-layer-opacity:0.04;--mdc-switch-unselected-pressed-state-layer-opacity:0.1}html .mat-mdc-slide-toggle{--mat-switch-disabled-selected-handle-opacity:0.38;--mat-switch-disabled-unselected-handle-opacity:0.38;--mat-switch-unselected-handle-size:20px;--mat-switch-selected-handle-size:20px;--mat-switch-pressed-handle-size:20px;--mat-switch-with-icon-handle-size:20px;--mat-switch-selected-handle-horizontal-margin:0;--mat-switch-selected-with-icon-handle-horizontal-margin:0;--mat-switch-selected-pressed-handle-horizontal-margin:0;--mat-switch-unselected-handle-horizontal-margin:0;--mat-switch-unselected-with-icon-handle-horizontal-margin:0;--mat-switch-unselected-pressed-handle-horizontal-margin:0;--mat-switch-visible-track-opacity:1;--mat-switch-hidden-track-opacity:1;--mat-switch-visible-track-transition:transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);--mat-switch-hidden-track-transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);--mat-switch-track-outline-width:1px;--mat-switch-track-outline-color:transparent;--mat-switch-selected-track-outline-width:1px;--mat-switch-selected-track-outline-color:transparent;--mat-switch-disabled-unselected-track-outline-width:1px;--mat-switch-disabled-unselected-track-outline-color:transparent}html{--mdc-switch-selected-focus-state-layer-color:white;--mdc-switch-selected-handle-color:white;--mdc-switch-selected-hover-state-layer-color:white;--mdc-switch-selected-pressed-state-layer-color:white;--mdc-switch-selected-focus-handle-color:white;--mdc-switch-selected-hover-handle-color:white;--mdc-switch-selected-pressed-handle-color:white;--mdc-switch-selected-focus-track-color:white;--mdc-switch-selected-hover-track-color:white;--mdc-switch-selected-pressed-track-color:white;--mdc-switch-selected-track-color:white;--mdc-switch-disabled-selected-handle-color:#424242;--mdc-switch-disabled-selected-icon-color:#fff;--mdc-switch-disabled-selected-track-color:#424242;--mdc-switch-disabled-unselected-handle-color:#424242;--mdc-switch-disabled-unselected-icon-color:#fff;--mdc-switch-disabled-unselected-track-color:#424242;--mdc-switch-handle-surface-color:#fff;--mdc-switch-selected-icon-color:#fff;--mdc-switch-unselected-focus-handle-color:#212121;--mdc-switch-unselected-focus-state-layer-color:#424242;--mdc-switch-unselected-focus-track-color:#e0e0e0;--mdc-switch-unselected-handle-color:#616161;--mdc-switch-unselected-hover-handle-color:#212121;--mdc-switch-unselected-hover-state-layer-color:#424242;--mdc-switch-unselected-hover-track-color:#e0e0e0;--mdc-switch-unselected-icon-color:#fff;--mdc-switch-unselected-pressed-handle-color:#212121;--mdc-switch-unselected-pressed-state-layer-color:#424242;--mdc-switch-unselected-pressed-track-color:#e0e0e0;--mdc-switch-unselected-track-color:#e0e0e0;--mdc-switch-handle-elevation-shadow:0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);--mdc-switch-disabled-handle-elevation-shadow:0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);--mdc-switch-disabled-label-text-color: rgba(0, 0, 0, 0.38)}html .mat-mdc-slide-toggle{--mat-switch-label-text-color:rgba(0, 0, 0, 0.87)}html .mat-mdc-slide-toggle.mat-accent{--mdc-switch-selected-focus-state-layer-color:#9e0000;--mdc-switch-selected-handle-color:#9e0000;--mdc-switch-selected-hover-state-layer-color:#9e0000;--mdc-switch-selected-pressed-state-layer-color:#9e0000;--mdc-switch-selected-focus-handle-color:#7a0000;--mdc-switch-selected-hover-handle-color:#7a0000;--mdc-switch-selected-pressed-handle-color:#7a0000;--mdc-switch-selected-focus-track-color:#c14c4c;--mdc-switch-selected-hover-track-color:#c14c4c;--mdc-switch-selected-pressed-track-color:#c14c4c;--mdc-switch-selected-track-color:#c14c4c}html .mat-mdc-slide-toggle.mat-warn{--mdc-switch-selected-focus-state-layer-color:#e53935;--mdc-switch-selected-handle-color:#e53935;--mdc-switch-selected-hover-state-layer-color:#e53935;--mdc-switch-selected-pressed-state-layer-color:#e53935;--mdc-switch-selected-focus-handle-color:#b71c1c;--mdc-switch-selected-hover-handle-color:#b71c1c;--mdc-switch-selected-pressed-handle-color:#b71c1c;--mdc-switch-selected-focus-track-color:#e57373;--mdc-switch-selected-hover-track-color:#e57373;--mdc-switch-selected-pressed-track-color:#e57373;--mdc-switch-selected-track-color:#e57373}html{--mdc-switch-state-layer-size:40px}html .mat-mdc-slide-toggle{--mat-switch-label-text-font:Roboto, sans-serif;--mat-switch-label-text-line-height:20px;--mat-switch-label-text-size:14px;--mat-switch-label-text-tracking:0.0178571429em;--mat-switch-label-text-weight:400}html{--mdc-radio-disabled-selected-icon-opacity:0.38;--mdc-radio-disabled-unselected-icon-opacity:0.38;--mdc-radio-state-layer-size:40px}.mat-mdc-radio-button.mat-primary{--mdc-radio-disabled-selected-icon-color:black;--mdc-radio-disabled-unselected-icon-color:black;--mdc-radio-unselected-hover-icon-color:#212121;--mdc-radio-unselected-focus-icon-color:#212121;--mdc-radio-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-unselected-pressed-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-selected-focus-icon-color:white;--mdc-radio-selected-hover-icon-color:white;--mdc-radio-selected-icon-color:white;--mdc-radio-selected-pressed-icon-color:white;--mat-radio-ripple-color:black;--mat-radio-checked-ripple-color:white;--mat-radio-disabled-label-color:rgba(0, 0, 0, 0.38);--mat-radio-label-text-color:rgba(0, 0, 0, 0.87)}.mat-mdc-radio-button.mat-accent{--mdc-radio-disabled-selected-icon-color:black;--mdc-radio-disabled-unselected-icon-color:black;--mdc-radio-unselected-hover-icon-color:#212121;--mdc-radio-unselected-focus-icon-color:#212121;--mdc-radio-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-unselected-pressed-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-selected-focus-icon-color:#a60000;--mdc-radio-selected-hover-icon-color:#a60000;--mdc-radio-selected-icon-color:#a60000;--mdc-radio-selected-pressed-icon-color:#a60000;--mat-radio-ripple-color:black;--mat-radio-checked-ripple-color:#a60000;--mat-radio-disabled-label-color:rgba(0, 0, 0, 0.38);--mat-radio-label-text-color:rgba(0, 0, 0, 0.87)}.mat-mdc-radio-button.mat-warn{--mdc-radio-disabled-selected-icon-color:black;--mdc-radio-disabled-unselected-icon-color:black;--mdc-radio-unselected-hover-icon-color:#212121;--mdc-radio-unselected-focus-icon-color:#212121;--mdc-radio-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-unselected-pressed-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-selected-focus-icon-color:#f44336;--mdc-radio-selected-hover-icon-color:#f44336;--mdc-radio-selected-icon-color:#f44336;--mdc-radio-selected-pressed-icon-color:#f44336;--mat-radio-ripple-color:black;--mat-radio-checked-ripple-color:#f44336;--mat-radio-disabled-label-color:rgba(0, 0, 0, 0.38);--mat-radio-label-text-color:rgba(0, 0, 0, 0.87)}html{--mdc-radio-state-layer-size:40px;--mat-radio-touch-target-display:block}html{--mat-radio-label-text-font:Roboto, sans-serif;--mat-radio-label-text-line-height:20px;--mat-radio-label-text-size:14px;--mat-radio-label-text-tracking:0.0178571429em;--mat-radio-label-text-weight:400}html{--mdc-slider-active-track-height:6px;--mdc-slider-active-track-shape:9999px;--mdc-slider-handle-height:20px;--mdc-slider-handle-shape:50%;--mdc-slider-handle-width:20px;--mdc-slider-inactive-track-height:4px;--mdc-slider-inactive-track-shape:9999px;--mdc-slider-with-overlap-handle-outline-width:1px;--mdc-slider-with-tick-marks-active-container-opacity:0.6;--mdc-slider-with-tick-marks-container-shape:50%;--mdc-slider-with-tick-marks-container-size:2px;--mdc-slider-with-tick-marks-inactive-container-opacity:0.6;--mdc-slider-handle-elevation:0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);--mat-slider-value-indicator-width:auto;--mat-slider-value-indicator-height:32px;--mat-slider-value-indicator-caret-display:block;--mat-slider-value-indicator-border-radius:4px;--mat-slider-value-indicator-padding:0 12px;--mat-slider-value-indicator-text-transform:none;--mat-slider-value-indicator-container-transform:translateX(-50%)}html{--mdc-slider-handle-color:white;--mdc-slider-focus-handle-color:white;--mdc-slider-hover-handle-color:white;--mdc-slider-active-track-color:white;--mdc-slider-inactive-track-color:white;--mdc-slider-with-tick-marks-inactive-container-color:white;--mdc-slider-with-tick-marks-active-container-color:black;--mdc-slider-disabled-active-track-color:#000;--mdc-slider-disabled-handle-color:#000;--mdc-slider-disabled-inactive-track-color:#000;--mdc-slider-label-container-color:#000;--mdc-slider-label-label-text-color:#fff;--mdc-slider-with-overlap-handle-outline-color:#fff;--mdc-slider-with-tick-marks-disabled-container-color:#000;--mat-slider-ripple-color:white;--mat-slider-hover-state-layer-color:rgba(255, 255, 255, 0.05);--mat-slider-focus-state-layer-color:rgba(255, 255, 255, 0.2);--mat-slider-value-indicator-opacity:0.6}html .mat-accent{--mdc-slider-handle-color:#a60000;--mdc-slider-focus-handle-color:#a60000;--mdc-slider-hover-handle-color:#a60000;--mdc-slider-active-track-color:#a60000;--mdc-slider-inactive-track-color:#a60000;--mdc-slider-with-tick-marks-inactive-container-color:#a60000;--mdc-slider-with-tick-marks-active-container-color:white;--mat-slider-ripple-color:#a60000;--mat-slider-hover-state-layer-color:rgba(166, 0, 0, 0.05);--mat-slider-focus-state-layer-color:rgba(166, 0, 0, 0.2)}html .mat-warn{--mdc-slider-handle-color:#f44336;--mdc-slider-focus-handle-color:#f44336;--mdc-slider-hover-handle-color:#f44336;--mdc-slider-active-track-color:#f44336;--mdc-slider-inactive-track-color:#f44336;--mdc-slider-with-tick-marks-inactive-container-color:#f44336;--mdc-slider-with-tick-marks-active-container-color:white;--mat-slider-ripple-color:#f44336;--mat-slider-hover-state-layer-color:rgba(244, 67, 54, 0.05);--mat-slider-focus-state-layer-color:rgba(244, 67, 54, 0.2)}html{--mdc-slider-label-label-text-font:Roboto, sans-serif;--mdc-slider-label-label-text-size:14px;--mdc-slider-label-label-text-line-height:22px;--mdc-slider-label-label-text-tracking:0.0071428571em;--mdc-slider-label-label-text-weight:500}html{--mat-menu-container-shape:4px;--mat-menu-divider-bottom-spacing:0;--mat-menu-divider-top-spacing:0;--mat-menu-item-spacing:16px;--mat-menu-item-icon-size:24px;--mat-menu-item-leading-spacing:16px;--mat-menu-item-trailing-spacing:16px;--mat-menu-item-with-icon-leading-spacing:16px;--mat-menu-item-with-icon-trailing-spacing:16px;--mat-menu-base-elevation-level:8}html{--mat-menu-item-label-text-color:rgba(0, 0, 0, 0.87);--mat-menu-item-icon-color:rgba(0, 0, 0, 0.87);--mat-menu-item-hover-state-layer-color:rgba(0, 0, 0, 0.04);--mat-menu-item-focus-state-layer-color:rgba(0, 0, 0, 0.04);--mat-menu-container-color:white;--mat-menu-divider-color:rgba(0, 0, 0, 0.12)}html{--mat-menu-item-label-text-font:Roboto, sans-serif;--mat-menu-item-label-text-size:16px;--mat-menu-item-label-text-tracking:0.03125em;--mat-menu-item-label-text-line-height:24px;--mat-menu-item-label-text-weight:400}html{--mdc-list-list-item-container-shape:0;--mdc-list-list-item-leading-avatar-shape:50%;--mdc-list-list-item-container-color:transparent;--mdc-list-list-item-selected-container-color:transparent;--mdc-list-list-item-leading-avatar-color:transparent;--mdc-list-list-item-leading-icon-size:24px;--mdc-list-list-item-leading-avatar-size:40px;--mdc-list-list-item-trailing-icon-size:24px;--mdc-list-list-item-disabled-state-layer-color:transparent;--mdc-list-list-item-disabled-state-layer-opacity:0;--mdc-list-list-item-disabled-label-text-opacity:0.38;--mdc-list-list-item-disabled-leading-icon-opacity:0.38;--mdc-list-list-item-disabled-trailing-icon-opacity:0.38;--mat-list-active-indicator-color:transparent;--mat-list-active-indicator-shape:4px}html{--mdc-list-list-item-label-text-color:rgba(0, 0, 0, 0.87);--mdc-list-list-item-supporting-text-color:rgba(0, 0, 0, 0.54);--mdc-list-list-item-leading-icon-color:rgba(0, 0, 0, 0.38);--mdc-list-list-item-trailing-supporting-text-color:rgba(0, 0, 0, 0.38);--mdc-list-list-item-trailing-icon-color:rgba(0, 0, 0, 0.38);--mdc-list-list-item-selected-trailing-icon-color:rgba(0, 0, 0, 0.38);--mdc-list-list-item-disabled-label-text-color:black;--mdc-list-list-item-disabled-leading-icon-color:black;--mdc-list-list-item-disabled-trailing-icon-color:black;--mdc-list-list-item-hover-label-text-color:rgba(0, 0, 0, 0.87);--mdc-list-list-item-hover-leading-icon-color:rgba(0, 0, 0, 0.38);--mdc-list-list-item-hover-trailing-icon-color:rgba(0, 0, 0, 0.38);--mdc-list-list-item-focus-label-text-color:rgba(0, 0, 0, 0.87);--mdc-list-list-item-hover-state-layer-color:black;--mdc-list-list-item-hover-state-layer-opacity:0.04;--mdc-list-list-item-focus-state-layer-color:black;--mdc-list-list-item-focus-state-layer-opacity:0.12}.mdc-list-item__start,.mdc-list-item__end{--mdc-radio-disabled-selected-icon-color:black;--mdc-radio-disabled-unselected-icon-color:black;--mdc-radio-unselected-hover-icon-color:#212121;--mdc-radio-unselected-focus-icon-color:#212121;--mdc-radio-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-unselected-pressed-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-selected-focus-icon-color:white;--mdc-radio-selected-hover-icon-color:white;--mdc-radio-selected-icon-color:white;--mdc-radio-selected-pressed-icon-color:white}.mat-accent .mdc-list-item__start,.mat-accent .mdc-list-item__end{--mdc-radio-disabled-selected-icon-color:black;--mdc-radio-disabled-unselected-icon-color:black;--mdc-radio-unselected-hover-icon-color:#212121;--mdc-radio-unselected-focus-icon-color:#212121;--mdc-radio-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-unselected-pressed-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-selected-focus-icon-color:#a60000;--mdc-radio-selected-hover-icon-color:#a60000;--mdc-radio-selected-icon-color:#a60000;--mdc-radio-selected-pressed-icon-color:#a60000}.mat-warn .mdc-list-item__start,.mat-warn .mdc-list-item__end{--mdc-radio-disabled-selected-icon-color:black;--mdc-radio-disabled-unselected-icon-color:black;--mdc-radio-unselected-hover-icon-color:#212121;--mdc-radio-unselected-focus-icon-color:#212121;--mdc-radio-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-unselected-pressed-icon-color:rgba(0, 0, 0, 0.54);--mdc-radio-selected-focus-icon-color:#f44336;--mdc-radio-selected-hover-icon-color:#f44336;--mdc-radio-selected-icon-color:#f44336;--mdc-radio-selected-pressed-icon-color:#f44336}.mat-mdc-list-option{--mdc-checkbox-disabled-selected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-disabled-unselected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-selected-checkmark-color:black;--mdc-checkbox-selected-focus-icon-color:white;--mdc-checkbox-selected-hover-icon-color:white;--mdc-checkbox-selected-icon-color:white;--mdc-checkbox-selected-pressed-icon-color:white;--mdc-checkbox-unselected-focus-icon-color:#212121;--mdc-checkbox-unselected-hover-icon-color:#212121;--mdc-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-checkbox-selected-focus-state-layer-color:white;--mdc-checkbox-selected-hover-state-layer-color:white;--mdc-checkbox-selected-pressed-state-layer-color:white;--mdc-checkbox-unselected-focus-state-layer-color:black;--mdc-checkbox-unselected-hover-state-layer-color:black;--mdc-checkbox-unselected-pressed-state-layer-color:black}.mat-mdc-list-option.mat-accent{--mdc-checkbox-disabled-selected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-disabled-unselected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-selected-checkmark-color:white;--mdc-checkbox-selected-focus-icon-color:#a60000;--mdc-checkbox-selected-hover-icon-color:#a60000;--mdc-checkbox-selected-icon-color:#a60000;--mdc-checkbox-selected-pressed-icon-color:#a60000;--mdc-checkbox-unselected-focus-icon-color:#212121;--mdc-checkbox-unselected-hover-icon-color:#212121;--mdc-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-checkbox-selected-focus-state-layer-color:#a60000;--mdc-checkbox-selected-hover-state-layer-color:#a60000;--mdc-checkbox-selected-pressed-state-layer-color:#a60000;--mdc-checkbox-unselected-focus-state-layer-color:black;--mdc-checkbox-unselected-hover-state-layer-color:black;--mdc-checkbox-unselected-pressed-state-layer-color:black}.mat-mdc-list-option.mat-warn{--mdc-checkbox-disabled-selected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-disabled-unselected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-selected-checkmark-color:white;--mdc-checkbox-selected-focus-icon-color:#f44336;--mdc-checkbox-selected-hover-icon-color:#f44336;--mdc-checkbox-selected-icon-color:#f44336;--mdc-checkbox-selected-pressed-icon-color:#f44336;--mdc-checkbox-unselected-focus-icon-color:#212121;--mdc-checkbox-unselected-hover-icon-color:#212121;--mdc-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-checkbox-selected-focus-state-layer-color:#f44336;--mdc-checkbox-selected-hover-state-layer-color:#f44336;--mdc-checkbox-selected-pressed-state-layer-color:#f44336;--mdc-checkbox-unselected-focus-state-layer-color:black;--mdc-checkbox-unselected-hover-state-layer-color:black;--mdc-checkbox-unselected-pressed-state-layer-color:black}.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--selected .mdc-list-item__primary-text,.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--selected .mdc-list-item__start,.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--activated .mdc-list-item__primary-text,.mat-mdc-list-base.mat-mdc-list-base .mdc-list-item--activated .mdc-list-item__start{color:#fff}.mat-mdc-list-base .mdc-list-item--disabled .mdc-list-item__start,.mat-mdc-list-base .mdc-list-item--disabled .mdc-list-item__content,.mat-mdc-list-base .mdc-list-item--disabled .mdc-list-item__end{opacity:1}html{--mdc-list-list-item-one-line-container-height:48px;--mdc-list-list-item-two-line-container-height:64px;--mdc-list-list-item-three-line-container-height:88px;--mat-list-list-item-leading-icon-start-space:16px;--mat-list-list-item-leading-icon-end-space:32px}.mdc-list-item__start,.mdc-list-item__end{--mdc-radio-state-layer-size:40px}.mat-mdc-list-item.mdc-list-item--with-leading-avatar.mdc-list-item--with-one-line,.mat-mdc-list-item.mdc-list-item--with-leading-checkbox.mdc-list-item--with-one-line,.mat-mdc-list-item.mdc-list-item--with-leading-icon.mdc-list-item--with-one-line{height:56px}.mat-mdc-list-item.mdc-list-item--with-leading-avatar.mdc-list-item--with-two-lines,.mat-mdc-list-item.mdc-list-item--with-leading-checkbox.mdc-list-item--with-two-lines,.mat-mdc-list-item.mdc-list-item--with-leading-icon.mdc-list-item--with-two-lines{height:72px}html{--mdc-list-list-item-label-text-font:Roboto, sans-serif;--mdc-list-list-item-label-text-line-height:24px;--mdc-list-list-item-label-text-size:16px;--mdc-list-list-item-label-text-tracking:0.03125em;--mdc-list-list-item-label-text-weight:400;--mdc-list-list-item-supporting-text-font:Roboto, sans-serif;--mdc-list-list-item-supporting-text-line-height:20px;--mdc-list-list-item-supporting-text-size:14px;--mdc-list-list-item-supporting-text-tracking:0.0178571429em;--mdc-list-list-item-supporting-text-weight:400;--mdc-list-list-item-trailing-supporting-text-font:Roboto, sans-serif;--mdc-list-list-item-trailing-supporting-text-line-height:20px;--mdc-list-list-item-trailing-supporting-text-size:12px;--mdc-list-list-item-trailing-supporting-text-tracking:0.0333333333em;--mdc-list-list-item-trailing-supporting-text-weight:400}.mdc-list-group__subheader{font:400 16px/28px Roboto, sans-serif;letter-spacing:.009375em}html{--mat-paginator-container-text-color:rgba(0, 0, 0, 0.87);--mat-paginator-container-background-color:white;--mat-paginator-enabled-icon-color:rgba(0, 0, 0, 0.54);--mat-paginator-disabled-icon-color:rgba(0, 0, 0, 0.12)}html{--mat-paginator-container-size:56px;--mat-paginator-form-field-container-height:40px;--mat-paginator-form-field-container-vertical-padding:8px;--mat-paginator-touch-target-display:block}html{--mat-paginator-container-text-font:Roboto, sans-serif;--mat-paginator-container-text-line-height:20px;--mat-paginator-container-text-size:12px;--mat-paginator-container-text-tracking:0.0333333333em;--mat-paginator-container-text-weight:400;--mat-paginator-select-trigger-text-size:12px}html{--mdc-secondary-navigation-tab-container-height:48px;--mdc-tab-indicator-active-indicator-height:2px;--mdc-tab-indicator-active-indicator-shape:0;--mat-tab-header-divider-color:transparent;--mat-tab-header-divider-height:0}.mat-mdc-tab-group,.mat-mdc-tab-nav-bar{--mdc-tab-indicator-active-indicator-color:white;--mat-tab-header-disabled-ripple-color:rgba(0, 0, 0, 0.38);--mat-tab-header-pagination-icon-color:black;--mat-tab-header-inactive-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-active-label-text-color:white;--mat-tab-header-active-ripple-color:white;--mat-tab-header-inactive-ripple-color:white;--mat-tab-header-inactive-focus-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-inactive-hover-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-active-focus-label-text-color:white;--mat-tab-header-active-hover-label-text-color:white;--mat-tab-header-active-focus-indicator-color:white;--mat-tab-header-active-hover-indicator-color:white}.mat-mdc-tab-group.mat-accent,.mat-mdc-tab-nav-bar.mat-accent{--mdc-tab-indicator-active-indicator-color:#a60000;--mat-tab-header-disabled-ripple-color:rgba(0, 0, 0, 0.38);--mat-tab-header-pagination-icon-color:black;--mat-tab-header-inactive-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-active-label-text-color:#a60000;--mat-tab-header-active-ripple-color:#a60000;--mat-tab-header-inactive-ripple-color:#a60000;--mat-tab-header-inactive-focus-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-inactive-hover-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-active-focus-label-text-color:#a60000;--mat-tab-header-active-hover-label-text-color:#a60000;--mat-tab-header-active-focus-indicator-color:#a60000;--mat-tab-header-active-hover-indicator-color:#a60000}.mat-mdc-tab-group.mat-warn,.mat-mdc-tab-nav-bar.mat-warn{--mdc-tab-indicator-active-indicator-color:#f44336;--mat-tab-header-disabled-ripple-color:rgba(0, 0, 0, 0.38);--mat-tab-header-pagination-icon-color:black;--mat-tab-header-inactive-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-active-label-text-color:#f44336;--mat-tab-header-active-ripple-color:#f44336;--mat-tab-header-inactive-ripple-color:#f44336;--mat-tab-header-inactive-focus-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-inactive-hover-label-text-color:rgba(0, 0, 0, 0.6);--mat-tab-header-active-focus-label-text-color:#f44336;--mat-tab-header-active-hover-label-text-color:#f44336;--mat-tab-header-active-focus-indicator-color:#f44336;--mat-tab-header-active-hover-indicator-color:#f44336}.mat-mdc-tab-group.mat-background-primary,.mat-mdc-tab-nav-bar.mat-background-primary{--mat-tab-header-with-background-background-color:white;--mat-tab-header-with-background-foreground-color:black}.mat-mdc-tab-group.mat-background-accent,.mat-mdc-tab-nav-bar.mat-background-accent{--mat-tab-header-with-background-background-color:#a60000;--mat-tab-header-with-background-foreground-color:white}.mat-mdc-tab-group.mat-background-warn,.mat-mdc-tab-nav-bar.mat-background-warn{--mat-tab-header-with-background-background-color:#f44336;--mat-tab-header-with-background-foreground-color:white}.mat-mdc-tab-header{--mdc-secondary-navigation-tab-container-height:48px}.mat-mdc-tab-header{--mat-tab-header-label-text-font:Roboto, sans-serif;--mat-tab-header-label-text-size:14px;--mat-tab-header-label-text-tracking:0.0892857143em;--mat-tab-header-label-text-line-height:36px;--mat-tab-header-label-text-weight:500}html{--mdc-checkbox-disabled-selected-checkmark-color:#fff;--mdc-checkbox-selected-focus-state-layer-opacity:0.16;--mdc-checkbox-selected-hover-state-layer-opacity:0.04;--mdc-checkbox-selected-pressed-state-layer-opacity:0.16;--mdc-checkbox-unselected-focus-state-layer-opacity:0.16;--mdc-checkbox-unselected-hover-state-layer-opacity:0.04;--mdc-checkbox-unselected-pressed-state-layer-opacity:0.16}html{--mdc-checkbox-disabled-selected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-disabled-unselected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-selected-checkmark-color:white;--mdc-checkbox-selected-focus-icon-color:#a60000;--mdc-checkbox-selected-hover-icon-color:#a60000;--mdc-checkbox-selected-icon-color:#a60000;--mdc-checkbox-selected-pressed-icon-color:#a60000;--mdc-checkbox-unselected-focus-icon-color:#212121;--mdc-checkbox-unselected-hover-icon-color:#212121;--mdc-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-checkbox-selected-focus-state-layer-color:#a60000;--mdc-checkbox-selected-hover-state-layer-color:#a60000;--mdc-checkbox-selected-pressed-state-layer-color:#a60000;--mdc-checkbox-unselected-focus-state-layer-color:black;--mdc-checkbox-unselected-hover-state-layer-color:black;--mdc-checkbox-unselected-pressed-state-layer-color:black;--mat-checkbox-disabled-label-color:rgba(0, 0, 0, 0.38);--mat-checkbox-label-text-color:rgba(0, 0, 0, 0.87)}.mat-mdc-checkbox.mat-primary{--mdc-checkbox-disabled-selected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-disabled-unselected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-selected-checkmark-color:black;--mdc-checkbox-selected-focus-icon-color:white;--mdc-checkbox-selected-hover-icon-color:white;--mdc-checkbox-selected-icon-color:white;--mdc-checkbox-selected-pressed-icon-color:white;--mdc-checkbox-unselected-focus-icon-color:#212121;--mdc-checkbox-unselected-hover-icon-color:#212121;--mdc-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-checkbox-selected-focus-state-layer-color:white;--mdc-checkbox-selected-hover-state-layer-color:white;--mdc-checkbox-selected-pressed-state-layer-color:white;--mdc-checkbox-unselected-focus-state-layer-color:black;--mdc-checkbox-unselected-hover-state-layer-color:black;--mdc-checkbox-unselected-pressed-state-layer-color:black}.mat-mdc-checkbox.mat-warn{--mdc-checkbox-disabled-selected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-disabled-unselected-icon-color:rgba(0, 0, 0, 0.38);--mdc-checkbox-selected-checkmark-color:white;--mdc-checkbox-selected-focus-icon-color:#f44336;--mdc-checkbox-selected-hover-icon-color:#f44336;--mdc-checkbox-selected-icon-color:#f44336;--mdc-checkbox-selected-pressed-icon-color:#f44336;--mdc-checkbox-unselected-focus-icon-color:#212121;--mdc-checkbox-unselected-hover-icon-color:#212121;--mdc-checkbox-unselected-icon-color:rgba(0, 0, 0, 0.54);--mdc-checkbox-selected-focus-state-layer-color:#f44336;--mdc-checkbox-selected-hover-state-layer-color:#f44336;--mdc-checkbox-selected-pressed-state-layer-color:#f44336;--mdc-checkbox-unselected-focus-state-layer-color:black;--mdc-checkbox-unselected-hover-state-layer-color:black;--mdc-checkbox-unselected-pressed-state-layer-color:black}html{--mdc-checkbox-state-layer-size:40px;--mat-checkbox-touch-target-display:block}html{--mat-checkbox-label-text-font:Roboto, sans-serif;--mat-checkbox-label-text-line-height:20px;--mat-checkbox-label-text-size:14px;--mat-checkbox-label-text-tracking:0.0178571429em;--mat-checkbox-label-text-weight:400}html{--mdc-text-button-container-shape:4px;--mdc-text-button-keep-touch-target:false;--mdc-filled-button-container-shape:4px;--mdc-filled-button-keep-touch-target:false;--mdc-protected-button-container-shape:4px;--mdc-protected-button-container-elevation-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);--mdc-protected-button-disabled-container-elevation-shadow:0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);--mdc-protected-button-focus-container-elevation-shadow:0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);--mdc-protected-button-hover-container-elevation-shadow:0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);--mdc-protected-button-pressed-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mdc-outlined-button-keep-touch-target:false;--mdc-outlined-button-outline-width:1px;--mdc-outlined-button-container-shape:4px;--mat-text-button-horizontal-padding:8px;--mat-text-button-with-icon-horizontal-padding:8px;--mat-text-button-icon-spacing:8px;--mat-text-button-icon-offset:0;--mat-filled-button-horizontal-padding:16px;--mat-filled-button-icon-spacing:8px;--mat-filled-button-icon-offset:-4px;--mat-protected-button-horizontal-padding:16px;--mat-protected-button-icon-spacing:8px;--mat-protected-button-icon-offset:-4px;--mat-outlined-button-horizontal-padding:15px;--mat-outlined-button-icon-spacing:8px;--mat-outlined-button-icon-offset:-4px}html{--mdc-text-button-label-text-color:black;--mdc-text-button-disabled-label-text-color:rgba(0, 0, 0, 0.38);--mat-text-button-state-layer-color:black;--mat-text-button-disabled-state-layer-color:black;--mat-text-button-ripple-color:rgba(0, 0, 0, 0.1);--mat-text-button-hover-state-layer-opacity:0.04;--mat-text-button-focus-state-layer-opacity:0.12;--mat-text-button-pressed-state-layer-opacity:0.12;--mdc-filled-button-container-color:white;--mdc-filled-button-label-text-color:black;--mdc-filled-button-disabled-container-color:rgba(0, 0, 0, 0.12);--mdc-filled-button-disabled-label-text-color:rgba(0, 0, 0, 0.38);--mat-filled-button-state-layer-color:black;--mat-filled-button-disabled-state-layer-color:black;--mat-filled-button-ripple-color:rgba(0, 0, 0, 0.1);--mat-filled-button-hover-state-layer-opacity:0.04;--mat-filled-button-focus-state-layer-opacity:0.12;--mat-filled-button-pressed-state-layer-opacity:0.12;--mdc-protected-button-container-color:white;--mdc-protected-button-label-text-color:black;--mdc-protected-button-disabled-container-color:rgba(0, 0, 0, 0.12);--mdc-protected-button-disabled-label-text-color:rgba(0, 0, 0, 0.38);--mat-protected-button-state-layer-color:black;--mat-protected-button-disabled-state-layer-color:black;--mat-protected-button-ripple-color:rgba(0, 0, 0, 0.1);--mat-protected-button-hover-state-layer-opacity:0.04;--mat-protected-button-focus-state-layer-opacity:0.12;--mat-protected-button-pressed-state-layer-opacity:0.12;--mdc-outlined-button-disabled-outline-color:rgba(0, 0, 0, 0.12);--mdc-outlined-button-disabled-label-text-color:rgba(0, 0, 0, 0.38);--mdc-outlined-button-label-text-color:black;--mdc-outlined-button-outline-color:rgba(0, 0, 0, 0.12);--mat-outlined-button-state-layer-color:black;--mat-outlined-button-disabled-state-layer-color:black;--mat-outlined-button-ripple-color:rgba(0, 0, 0, 0.1);--mat-outlined-button-hover-state-layer-opacity:0.04;--mat-outlined-button-focus-state-layer-opacity:0.12;--mat-outlined-button-pressed-state-layer-opacity:0.12}.mat-mdc-button.mat-primary{--mdc-text-button-label-text-color:white;--mat-text-button-state-layer-color:white;--mat-text-button-ripple-color:rgba(255, 255, 255, 0.1)}.mat-mdc-button.mat-accent{--mdc-text-button-label-text-color:#a60000;--mat-text-button-state-layer-color:#a60000;--mat-text-button-ripple-color:rgba(166, 0, 0, 0.1)}.mat-mdc-button.mat-warn{--mdc-text-button-label-text-color:#f44336;--mat-text-button-state-layer-color:#f44336;--mat-text-button-ripple-color:rgba(244, 67, 54, 0.1)}.mat-mdc-unelevated-button.mat-primary{--mdc-filled-button-container-color:white;--mdc-filled-button-label-text-color:black;--mat-filled-button-state-layer-color:black;--mat-filled-button-ripple-color:rgba(0, 0, 0, 0.1)}.mat-mdc-unelevated-button.mat-accent{--mdc-filled-button-container-color:#a60000;--mdc-filled-button-label-text-color:white;--mat-filled-button-state-layer-color:white;--mat-filled-button-ripple-color:rgba(255, 255, 255, 0.1)}.mat-mdc-unelevated-button.mat-warn{--mdc-filled-button-container-color:#f44336;--mdc-filled-button-label-text-color:white;--mat-filled-button-state-layer-color:white;--mat-filled-button-ripple-color:rgba(255, 255, 255, 0.1)}.mat-mdc-raised-button.mat-primary{--mdc-protected-button-container-color:white;--mdc-protected-button-label-text-color:black;--mat-protected-button-state-layer-color:black;--mat-protected-button-ripple-color:rgba(0, 0, 0, 0.1)}.mat-mdc-raised-button.mat-accent{--mdc-protected-button-container-color:#a60000;--mdc-protected-button-label-text-color:white;--mat-protected-button-state-layer-color:white;--mat-protected-button-ripple-color:rgba(255, 255, 255, 0.1)}.mat-mdc-raised-button.mat-warn{--mdc-protected-button-container-color:#f44336;--mdc-protected-button-label-text-color:white;--mat-protected-button-state-layer-color:white;--mat-protected-button-ripple-color:rgba(255, 255, 255, 0.1)}.mat-mdc-outlined-button.mat-primary{--mdc-outlined-button-label-text-color:white;--mdc-outlined-button-outline-color:rgba(0, 0, 0, 0.12);--mat-outlined-button-state-layer-color:white;--mat-outlined-button-ripple-color:rgba(255, 255, 255, 0.1)}.mat-mdc-outlined-button.mat-accent{--mdc-outlined-button-label-text-color:#a60000;--mdc-outlined-button-outline-color:rgba(0, 0, 0, 0.12);--mat-outlined-button-state-layer-color:#a60000;--mat-outlined-button-ripple-color:rgba(166, 0, 0, 0.1)}.mat-mdc-outlined-button.mat-warn{--mdc-outlined-button-label-text-color:#f44336;--mdc-outlined-button-outline-color:rgba(0, 0, 0, 0.12);--mat-outlined-button-state-layer-color:#f44336;--mat-outlined-button-ripple-color:rgba(244, 67, 54, 0.1)}html{--mdc-text-button-container-height:36px;--mdc-filled-button-container-height:36px;--mdc-protected-button-container-height:36px;--mdc-outlined-button-container-height:36px;--mat-text-button-touch-target-display:block;--mat-filled-button-touch-target-display:block;--mat-protected-button-touch-target-display:block;--mat-outlined-button-touch-target-display:block}html{--mdc-text-button-label-text-font:Roboto, sans-serif;--mdc-text-button-label-text-size:14px;--mdc-text-button-label-text-tracking:0.0892857143em;--mdc-text-button-label-text-weight:500;--mdc-text-button-label-text-transform:none;--mdc-filled-button-label-text-font:Roboto, sans-serif;--mdc-filled-button-label-text-size:14px;--mdc-filled-button-label-text-tracking:0.0892857143em;--mdc-filled-button-label-text-weight:500;--mdc-filled-button-label-text-transform:none;--mdc-protected-button-label-text-font:Roboto, sans-serif;--mdc-protected-button-label-text-size:14px;--mdc-protected-button-label-text-tracking:0.0892857143em;--mdc-protected-button-label-text-weight:500;--mdc-protected-button-label-text-transform:none;--mdc-outlined-button-label-text-font:Roboto, sans-serif;--mdc-outlined-button-label-text-size:14px;--mdc-outlined-button-label-text-tracking:0.0892857143em;--mdc-outlined-button-label-text-weight:500;--mdc-outlined-button-label-text-transform:none}html{--mdc-icon-button-icon-size:24px}html{--mdc-icon-button-icon-color:inherit;--mdc-icon-button-disabled-icon-color:rgba(0, 0, 0, 0.38);--mat-icon-button-state-layer-color:black;--mat-icon-button-disabled-state-layer-color:black;--mat-icon-button-ripple-color:rgba(0, 0, 0, 0.1);--mat-icon-button-hover-state-layer-opacity:0.04;--mat-icon-button-focus-state-layer-opacity:0.12;--mat-icon-button-pressed-state-layer-opacity:0.12}html .mat-mdc-icon-button.mat-primary{--mdc-icon-button-icon-color:white;--mat-icon-button-state-layer-color:white;--mat-icon-button-ripple-color:rgba(255, 255, 255, 0.1)}html .mat-mdc-icon-button.mat-accent{--mdc-icon-button-icon-color:#a60000;--mat-icon-button-state-layer-color:#a60000;--mat-icon-button-ripple-color:rgba(166, 0, 0, 0.1)}html .mat-mdc-icon-button.mat-warn{--mdc-icon-button-icon-color:#f44336;--mat-icon-button-state-layer-color:#f44336;--mat-icon-button-ripple-color:rgba(244, 67, 54, 0.1)}html{--mat-icon-button-touch-target-display:block}.mat-mdc-icon-button.mat-mdc-button-base{--mdc-icon-button-state-layer-size: 48px;width:var(--mdc-icon-button-state-layer-size);height:var(--mdc-icon-button-state-layer-size);padding:12px}html{--mdc-fab-container-shape:50%;--mdc-fab-container-elevation-shadow:0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);--mdc-fab-focus-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mdc-fab-hover-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mdc-fab-pressed-container-elevation-shadow:0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);--mdc-fab-small-container-shape:50%;--mdc-fab-small-container-elevation-shadow:0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);--mdc-fab-small-focus-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mdc-fab-small-hover-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mdc-fab-small-pressed-container-elevation-shadow:0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);--mdc-extended-fab-container-height:48px;--mdc-extended-fab-container-shape:24px;--mdc-extended-fab-container-elevation-shadow:0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);--mdc-extended-fab-focus-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mdc-extended-fab-hover-container-elevation-shadow:0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);--mdc-extended-fab-pressed-container-elevation-shadow:0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12)}html{--mdc-fab-container-color:white;--mat-fab-foreground-color:black;--mat-fab-state-layer-color:black;--mat-fab-disabled-state-layer-color:black;--mat-fab-ripple-color:rgba(0, 0, 0, 0.1);--mat-fab-hover-state-layer-opacity:0.04;--mat-fab-focus-state-layer-opacity:0.12;--mat-fab-pressed-state-layer-opacity:0.12;--mat-fab-disabled-state-container-color:rgba(0, 0, 0, 0.12);--mat-fab-disabled-state-foreground-color:rgba(0, 0, 0, 0.38);--mdc-fab-small-container-color:white;--mat-fab-small-foreground-color:black;--mat-fab-small-state-layer-color:black;--mat-fab-small-disabled-state-layer-color:black;--mat-fab-small-ripple-color:rgba(0, 0, 0, 0.1);--mat-fab-small-hover-state-layer-opacity:0.04;--mat-fab-small-focus-state-layer-opacity:0.12;--mat-fab-small-pressed-state-layer-opacity:0.12;--mat-fab-small-disabled-state-container-color:rgba(0, 0, 0, 0.12);--mat-fab-small-disabled-state-foreground-color:rgba(0, 0, 0, 0.38)}html .mat-mdc-fab.mat-primary{--mdc-fab-container-color:white;--mat-fab-foreground-color:black;--mat-fab-state-layer-color:black;--mat-fab-ripple-color:rgba(0, 0, 0, 0.1)}html .mat-mdc-fab.mat-accent{--mdc-fab-container-color:#a60000;--mat-fab-foreground-color:white;--mat-fab-state-layer-color:white;--mat-fab-ripple-color:rgba(255, 255, 255, 0.1)}html .mat-mdc-fab.mat-warn{--mdc-fab-container-color:#f44336;--mat-fab-foreground-color:white;--mat-fab-state-layer-color:white;--mat-fab-ripple-color:rgba(255, 255, 255, 0.1)}html .mat-mdc-mini-fab.mat-primary{--mdc-fab-small-container-color:white;--mat-fab-small-foreground-color:black;--mat-fab-small-state-layer-color:black;--mat-fab-small-ripple-color:rgba(0, 0, 0, 0.1)}html .mat-mdc-mini-fab.mat-accent{--mdc-fab-small-container-color:#a60000;--mat-fab-small-foreground-color:white;--mat-fab-small-state-layer-color:white;--mat-fab-small-ripple-color:rgba(255, 255, 255, 0.1)}html .mat-mdc-mini-fab.mat-warn{--mdc-fab-small-container-color:#f44336;--mat-fab-small-foreground-color:white;--mat-fab-small-state-layer-color:white;--mat-fab-small-ripple-color:rgba(255, 255, 255, 0.1)}html{--mat-fab-touch-target-display:block;--mat-fab-small-touch-target-display:block}html{--mdc-extended-fab-label-text-font:Roboto, sans-serif;--mdc-extended-fab-label-text-size:14px;--mdc-extended-fab-label-text-tracking:0.0892857143em;--mdc-extended-fab-label-text-weight:500}html{--mdc-snackbar-container-shape:4px}html{--mdc-snackbar-container-color:#333333;--mdc-snackbar-supporting-text-color:rgba(255, 255, 255, 0.87);--mat-snack-bar-button-color:#a60000}html{--mdc-snackbar-supporting-text-font:Roboto, sans-serif;--mdc-snackbar-supporting-text-line-height:20px;--mdc-snackbar-supporting-text-size:14px;--mdc-snackbar-supporting-text-weight:400}html{--mat-table-row-item-outline-width:1px}html{--mat-table-background-color:white;--mat-table-header-headline-color:rgba(0, 0, 0, 0.87);--mat-table-row-item-label-text-color:rgba(0, 0, 0, 0.87);--mat-table-row-item-outline-color:rgba(0, 0, 0, 0.12)}html{--mat-table-header-container-height:56px;--mat-table-footer-container-height:52px;--mat-table-row-item-container-height:52px}html{--mat-table-header-headline-font:Roboto, sans-serif;--mat-table-header-headline-line-height:22px;--mat-table-header-headline-size:14px;--mat-table-header-headline-weight:500;--mat-table-header-headline-tracking:0.0071428571em;--mat-table-row-item-label-text-font:Roboto, sans-serif;--mat-table-row-item-label-text-line-height:20px;--mat-table-row-item-label-text-size:14px;--mat-table-row-item-label-text-weight:400;--mat-table-row-item-label-text-tracking:0.0178571429em;--mat-table-footer-supporting-text-font:Roboto, sans-serif;--mat-table-footer-supporting-text-line-height:20px;--mat-table-footer-supporting-text-size:14px;--mat-table-footer-supporting-text-weight:400;--mat-table-footer-supporting-text-tracking:0.0178571429em}html{--mdc-circular-progress-active-indicator-width:4px;--mdc-circular-progress-size:48px}html{--mdc-circular-progress-active-indicator-color:white}html .mat-accent{--mdc-circular-progress-active-indicator-color:#a60000}html .mat-warn{--mdc-circular-progress-active-indicator-color:#f44336}html{--mat-badge-container-shape:50%;--mat-badge-container-size:unset;--mat-badge-small-size-container-size:unset;--mat-badge-large-size-container-size:unset;--mat-badge-legacy-container-size:22px;--mat-badge-legacy-small-size-container-size:16px;--mat-badge-legacy-large-size-container-size:28px;--mat-badge-container-offset:-11px 0;--mat-badge-small-size-container-offset:-8px 0;--mat-badge-large-size-container-offset:-14px 0;--mat-badge-container-overlap-offset:-11px;--mat-badge-small-size-container-overlap-offset:-8px;--mat-badge-large-size-container-overlap-offset:-14px;--mat-badge-container-padding:0;--mat-badge-small-size-container-padding:0;--mat-badge-large-size-container-padding:0}html{--mat-badge-background-color:white;--mat-badge-text-color:black;--mat-badge-disabled-state-background-color:#b9b9b9;--mat-badge-disabled-state-text-color:rgba(0, 0, 0, 0.38)}.mat-badge-accent{--mat-badge-background-color:#a60000;--mat-badge-text-color:white}.mat-badge-warn{--mat-badge-background-color:#f44336;--mat-badge-text-color:white}html{--mat-badge-text-font:Roboto, sans-serif;--mat-badge-line-height:22px;--mat-badge-text-size:12px;--mat-badge-text-weight:600;--mat-badge-small-size-text-size:9px;--mat-badge-small-size-line-height:16px;--mat-badge-large-size-text-size:24px;--mat-badge-large-size-line-height:28px}html{--mat-bottom-sheet-container-shape:4px}html{--mat-bottom-sheet-container-text-color:rgba(0, 0, 0, 0.87);--mat-bottom-sheet-container-background-color:white}html{--mat-bottom-sheet-container-text-font:Roboto, sans-serif;--mat-bottom-sheet-container-text-line-height:20px;--mat-bottom-sheet-container-text-size:14px;--mat-bottom-sheet-container-text-tracking:0.0178571429em;--mat-bottom-sheet-container-text-weight:400}html{--mat-legacy-button-toggle-height:36px;--mat-legacy-button-toggle-shape:2px;--mat-legacy-button-toggle-focus-state-layer-opacity:1;--mat-standard-button-toggle-shape:4px;--mat-standard-button-toggle-hover-state-layer-opacity:0.04;--mat-standard-button-toggle-focus-state-layer-opacity:0.12}html{--mat-legacy-button-toggle-text-color:rgba(0, 0, 0, 0.38);--mat-legacy-button-toggle-state-layer-color:rgba(0, 0, 0, 0.12);--mat-legacy-button-toggle-selected-state-text-color:rgba(0, 0, 0, 0.54);--mat-legacy-button-toggle-selected-state-background-color:#e0e0e0;--mat-legacy-button-toggle-disabled-state-text-color:rgba(0, 0, 0, 0.26);--mat-legacy-button-toggle-disabled-state-background-color:#eeeeee;--mat-legacy-button-toggle-disabled-selected-state-background-color:#bdbdbd;--mat-standard-button-toggle-text-color:rgba(0, 0, 0, 0.87);--mat-standard-button-toggle-background-color:white;--mat-standard-button-toggle-state-layer-color:black;--mat-standard-button-toggle-selected-state-background-color:#e0e0e0;--mat-standard-button-toggle-selected-state-text-color:rgba(0, 0, 0, 0.87);--mat-standard-button-toggle-disabled-state-text-color:rgba(0, 0, 0, 0.26);--mat-standard-button-toggle-disabled-state-background-color:white;--mat-standard-button-toggle-disabled-selected-state-text-color:rgba(0, 0, 0, 0.87);--mat-standard-button-toggle-disabled-selected-state-background-color:#bdbdbd;--mat-standard-button-toggle-divider-color:#e0e0e0}html{--mat-standard-button-toggle-height:48px}html{--mat-legacy-button-toggle-label-text-font:Roboto, sans-serif;--mat-legacy-button-toggle-label-text-line-height:24px;--mat-legacy-button-toggle-label-text-size:16px;--mat-legacy-button-toggle-label-text-tracking:0.03125em;--mat-legacy-button-toggle-label-text-weight:400;--mat-standard-button-toggle-label-text-font:Roboto, sans-serif;--mat-standard-button-toggle-label-text-line-height:24px;--mat-standard-button-toggle-label-text-size:16px;--mat-standard-button-toggle-label-text-tracking:0.03125em;--mat-standard-button-toggle-label-text-weight:400}html{--mat-datepicker-calendar-container-shape:4px;--mat-datepicker-calendar-container-touch-shape:4px;--mat-datepicker-calendar-container-elevation-shadow:0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);--mat-datepicker-calendar-container-touch-elevation-shadow:0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12)}html{--mat-datepicker-calendar-date-selected-state-text-color:black;--mat-datepicker-calendar-date-selected-state-background-color:white;--mat-datepicker-calendar-date-selected-disabled-state-background-color:rgba(255, 255, 255, 0.4);--mat-datepicker-calendar-date-today-selected-state-outline-color:black;--mat-datepicker-calendar-date-focus-state-background-color:rgba(255, 255, 255, 0.3);--mat-datepicker-calendar-date-hover-state-background-color:rgba(255, 255, 255, 0.3);--mat-datepicker-toggle-active-state-icon-color:white;--mat-datepicker-calendar-date-in-range-state-background-color:rgba(255, 255, 255, 0.2);--mat-datepicker-calendar-date-in-comparison-range-state-background-color:rgba(249, 171, 0, 0.2);--mat-datepicker-calendar-date-in-overlap-range-state-background-color:#a8dab5;--mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color:#46a35e;--mat-datepicker-toggle-icon-color:rgba(0, 0, 0, 0.54);--mat-datepicker-calendar-body-label-text-color:rgba(0, 0, 0, 0.54);--mat-datepicker-calendar-period-button-text-color:black;--mat-datepicker-calendar-period-button-icon-color:rgba(0, 0, 0, 0.54);--mat-datepicker-calendar-navigation-button-icon-color:rgba(0, 0, 0, 0.54);--mat-datepicker-calendar-header-divider-color:rgba(0, 0, 0, 0.12);--mat-datepicker-calendar-header-text-color:rgba(0, 0, 0, 0.54);--mat-datepicker-calendar-date-today-outline-color:rgba(0, 0, 0, 0.38);--mat-datepicker-calendar-date-today-disabled-state-outline-color:rgba(0, 0, 0, 0.18);--mat-datepicker-calendar-date-text-color:rgba(0, 0, 0, 0.87);--mat-datepicker-calendar-date-outline-color:transparent;--mat-datepicker-calendar-date-disabled-state-text-color:rgba(0, 0, 0, 0.38);--mat-datepicker-calendar-date-preview-state-outline-color:rgba(0, 0, 0, 0.24);--mat-datepicker-range-input-separator-color:rgba(0, 0, 0, 0.87);--mat-datepicker-range-input-disabled-state-separator-color:rgba(0, 0, 0, 0.38);--mat-datepicker-range-input-disabled-state-text-color:rgba(0, 0, 0, 0.38);--mat-datepicker-calendar-container-background-color:white;--mat-datepicker-calendar-container-text-color:rgba(0, 0, 0, 0.87)}.mat-datepicker-content.mat-accent{--mat-datepicker-calendar-date-selected-state-text-color:white;--mat-datepicker-calendar-date-selected-state-background-color:#a60000;--mat-datepicker-calendar-date-selected-disabled-state-background-color:rgba(166, 0, 0, 0.4);--mat-datepicker-calendar-date-today-selected-state-outline-color:white;--mat-datepicker-calendar-date-focus-state-background-color:rgba(166, 0, 0, 0.3);--mat-datepicker-calendar-date-hover-state-background-color:rgba(166, 0, 0, 0.3);--mat-datepicker-calendar-date-in-range-state-background-color:rgba(166, 0, 0, 0.2);--mat-datepicker-calendar-date-in-comparison-range-state-background-color:rgba(249, 171, 0, 0.2);--mat-datepicker-calendar-date-in-overlap-range-state-background-color:#a8dab5;--mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color:#46a35e}.mat-datepicker-content.mat-warn{--mat-datepicker-calendar-date-selected-state-text-color:white;--mat-datepicker-calendar-date-selected-state-background-color:#f44336;--mat-datepicker-calendar-date-selected-disabled-state-background-color:rgba(244, 67, 54, 0.4);--mat-datepicker-calendar-date-today-selected-state-outline-color:white;--mat-datepicker-calendar-date-focus-state-background-color:rgba(244, 67, 54, 0.3);--mat-datepicker-calendar-date-hover-state-background-color:rgba(244, 67, 54, 0.3);--mat-datepicker-calendar-date-in-range-state-background-color:rgba(244, 67, 54, 0.2);--mat-datepicker-calendar-date-in-comparison-range-state-background-color:rgba(249, 171, 0, 0.2);--mat-datepicker-calendar-date-in-overlap-range-state-background-color:#a8dab5;--mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color:#46a35e}.mat-datepicker-toggle-active.mat-accent{--mat-datepicker-toggle-active-state-icon-color:#a60000}.mat-datepicker-toggle-active.mat-warn{--mat-datepicker-toggle-active-state-icon-color:#f44336}.mat-calendar-controls{--mat-icon-button-touch-target-display:none}.mat-calendar-controls .mat-mdc-icon-button.mat-mdc-button-base{--mdc-icon-button-state-layer-size: 40px;width:var(--mdc-icon-button-state-layer-size);height:var(--mdc-icon-button-state-layer-size);padding:8px}html{--mat-datepicker-calendar-text-font:Roboto, sans-serif;--mat-datepicker-calendar-text-size:13px;--mat-datepicker-calendar-body-label-text-size:14px;--mat-datepicker-calendar-body-label-text-weight:500;--mat-datepicker-calendar-period-button-text-size:14px;--mat-datepicker-calendar-period-button-text-weight:500;--mat-datepicker-calendar-header-text-size:11px;--mat-datepicker-calendar-header-text-weight:400}html{--mat-divider-width:1px}html{--mat-divider-color:rgba(0, 0, 0, 0.12)}html{--mat-expansion-container-shape:4px;--mat-expansion-legacy-header-indicator-display:inline-block;--mat-expansion-header-indicator-display:none}html{--mat-expansion-container-background-color:white;--mat-expansion-container-text-color:rgba(0, 0, 0, 0.87);--mat-expansion-actions-divider-color:rgba(0, 0, 0, 0.12);--mat-expansion-header-hover-state-layer-color:rgba(0, 0, 0, 0.04);--mat-expansion-header-focus-state-layer-color:rgba(0, 0, 0, 0.04);--mat-expansion-header-disabled-state-text-color:rgba(0, 0, 0, 0.26);--mat-expansion-header-text-color:rgba(0, 0, 0, 0.87);--mat-expansion-header-description-color:rgba(0, 0, 0, 0.54);--mat-expansion-header-indicator-color:rgba(0, 0, 0, 0.54)}html{--mat-expansion-header-collapsed-state-height:48px;--mat-expansion-header-expanded-state-height:64px}html{--mat-expansion-header-text-font:Roboto, sans-serif;--mat-expansion-header-text-size:14px;--mat-expansion-header-text-weight:500;--mat-expansion-header-text-line-height:inherit;--mat-expansion-header-text-tracking:inherit;--mat-expansion-container-text-font:Roboto, sans-serif;--mat-expansion-container-text-line-height:20px;--mat-expansion-container-text-size:14px;--mat-expansion-container-text-tracking:0.0178571429em;--mat-expansion-container-text-weight:400}html{--mat-grid-list-tile-header-primary-text-size:14px;--mat-grid-list-tile-header-secondary-text-size:12px;--mat-grid-list-tile-footer-primary-text-size:14px;--mat-grid-list-tile-footer-secondary-text-size:12px}html{--mat-icon-color:inherit}.mat-icon.mat-primary{--mat-icon-color:white}.mat-icon.mat-accent{--mat-icon-color:#a60000}.mat-icon.mat-warn{--mat-icon-color:#f44336}html{--mat-sidenav-container-shape:0;--mat-sidenav-container-elevation-shadow:0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);--mat-sidenav-container-width:auto}html{--mat-sidenav-container-divider-color:rgba(0, 0, 0, 0.12);--mat-sidenav-container-background-color:white;--mat-sidenav-container-text-color:rgba(0, 0, 0, 0.87);--mat-sidenav-content-background-color:#fafafa;--mat-sidenav-content-text-color:rgba(0, 0, 0, 0.87);--mat-sidenav-scrim-color:rgba(0, 0, 0, 0.6)}html{--mat-stepper-header-icon-foreground-color:black;--mat-stepper-header-selected-state-icon-background-color:white;--mat-stepper-header-selected-state-icon-foreground-color:black;--mat-stepper-header-done-state-icon-background-color:white;--mat-stepper-header-done-state-icon-foreground-color:black;--mat-stepper-header-edit-state-icon-background-color:white;--mat-stepper-header-edit-state-icon-foreground-color:black;--mat-stepper-container-color:white;--mat-stepper-line-color:rgba(0, 0, 0, 0.12);--mat-stepper-header-hover-state-layer-color:rgba(0, 0, 0, 0.04);--mat-stepper-header-focus-state-layer-color:rgba(0, 0, 0, 0.04);--mat-stepper-header-label-text-color:rgba(0, 0, 0, 0.54);--mat-stepper-header-optional-label-text-color:rgba(0, 0, 0, 0.54);--mat-stepper-header-selected-state-label-text-color:rgba(0, 0, 0, 0.87);--mat-stepper-header-error-state-label-text-color:#f44336;--mat-stepper-header-icon-background-color:rgba(0, 0, 0, 0.54);--mat-stepper-header-error-state-icon-foreground-color:#f44336;--mat-stepper-header-error-state-icon-background-color:transparent}html .mat-step-header.mat-accent{--mat-stepper-header-icon-foreground-color:white;--mat-stepper-header-selected-state-icon-background-color:#a60000;--mat-stepper-header-selected-state-icon-foreground-color:white;--mat-stepper-header-done-state-icon-background-color:#a60000;--mat-stepper-header-done-state-icon-foreground-color:white;--mat-stepper-header-edit-state-icon-background-color:#a60000;--mat-stepper-header-edit-state-icon-foreground-color:white}html .mat-step-header.mat-warn{--mat-stepper-header-icon-foreground-color:white;--mat-stepper-header-selected-state-icon-background-color:#f44336;--mat-stepper-header-selected-state-icon-foreground-color:white;--mat-stepper-header-done-state-icon-background-color:#f44336;--mat-stepper-header-done-state-icon-foreground-color:white;--mat-stepper-header-edit-state-icon-background-color:#f44336;--mat-stepper-header-edit-state-icon-foreground-color:white}html{--mat-stepper-header-height:72px}html{--mat-stepper-container-text-font:Roboto, sans-serif;--mat-stepper-header-label-text-font:Roboto, sans-serif;--mat-stepper-header-label-text-size:14px;--mat-stepper-header-label-text-weight:400;--mat-stepper-header-error-state-label-text-size:16px;--mat-stepper-header-selected-state-label-text-size:16px;--mat-stepper-header-selected-state-label-text-weight:400}html{--mat-sort-arrow-color:#757575}html{--mat-toolbar-container-background-color:whitesmoke;--mat-toolbar-container-text-color:rgba(0, 0, 0, 0.87)}.mat-toolbar.mat-primary{--mat-toolbar-container-background-color:white;--mat-toolbar-container-text-color:black}.mat-toolbar.mat-accent{--mat-toolbar-container-background-color:#a60000;--mat-toolbar-container-text-color:white}.mat-toolbar.mat-warn{--mat-toolbar-container-background-color:#f44336;--mat-toolbar-container-text-color:white}html{--mat-toolbar-standard-height:64px;--mat-toolbar-mobile-height:56px}html{--mat-toolbar-title-text-font:Roboto, sans-serif;--mat-toolbar-title-text-line-height:32px;--mat-toolbar-title-text-size:20px;--mat-toolbar-title-text-tracking:0.0125em;--mat-toolbar-title-text-weight:500}html{--mat-tree-container-background-color:white;--mat-tree-node-text-color:rgba(0, 0, 0, 0.87)}html{--mat-tree-node-min-height:48px}html{--mat-tree-node-text-font:Roboto, sans-serif;--mat-tree-node-text-size:14px;--mat-tree-node-text-weight:400}body{color:inherit !important}.no-outline,.no-outline:focus,.no-outline:active{outline:none !important}.mat-simple-snackbar-action{color:#fff}.accent-color,.accent-color-active.active{color:var(--color-accent) !important}.accent-background-color,.accent-background-color-active:active,.accent-background-color-active.active,.donate-body .accent-background-color-active.btn-primary,.accent-background-color-hover:hover,.accent-background-color-focus:focus,input.radio:checked~label::before,.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background-color:var(--color-accent) !important;color:var(--color-accent-contrast) !important}.accent-border-color,.accent-border-color-focus:focus,.accent-border-color-active.active,.active-border-color-hover:hover,.donate-body .accent-border-color-active.btn-primary{border-color:var(--color-accent) !important}.accent-border-bottom-color,.accent-border-bottom-color-focus:focus{border-bottom-color:var(--color-accent) !important}.accent-outline-color-focus:focus{outline-color:var(--color-accent) !important}.accent-font-color,.accent-background-color-hover:hover .accent-font-color-hover,.accent-font-color-hover:hover,.accent-background-color-focus:focus .accent-font-color-focus,.accent-font-color-hover:focus{color:var(--color-accent-contrast) !important}.accent-font-background-color,.accent-background-color-hover:hover .accent-font-background-color-hover{background-color:var(--color-accent-contrast) !important}select.frequency:focus{border-bottom:5px solid var(--color-accent) !important}.primary-color,input.radio:checked~label::before,i.fb,span.fb,i.emailit,span.emailit,i.tw,span.tw{color:var(--color-primary) !important}.primary-background-color,.primary-background-color-active.active,.dropdown-menu>li>a.primary-background-color-hover:hover,.dropdown-menu>li>a.primary-background-color-focus:focus,a.list-group-item.primary-background-color-focus.active:focus{background-color:var(--color-primary) !important;color:var(--color-primary-contrast) !important}.primary-border-color,.primary-border-color-focus:focus,a.list-group-item.primary-border-color-focus.active:focus{border-color:var(--color-primary) !important}.primary-font-color{color:var(--color-primary-contrast) !important}.primary-font-color:disabled,.primary-font-color :disabled,.primary-font-color .mat-button-disabled[disabled]{color:rgba(var(--color-primary-contrast-rgb), 0.26) !important}.primary-font-placeholder-color ::placeholder{color:var(--color-primary-contrast) !important}.primary-font-background-color{background-color:var(--color-primary-contrast) !important}.primary-font-border-color,.primary-font-border-color-focus:focus{border-color:var(--color-primary-contrast) !important}.dark-font{color:#000 !important}.dark-background,.dark-background-active.active{background-color:#000 !important}.dark-font-border-color,.dark-font-border-color-focus:focus{border-color:#000 !important}.light-font,.light-font-active.active{color:#fff !important}.nav-font-color{color:var(--color-nav-text)}.nav-border-color{border-color:var(--color-nav-text)}.body-text-color,.sub-text-user,.input-group-addon,.news-feed-item a,.story-feed-item a,.event-feed-item a,.poll-feed-item a,.message a,.get-involved a{color:inherit !important}input.radio:checked~label::before{content:"✔";text-indent:.9em}.tabbable-line>.nav-tabs>li.active{border-bottom:4px solid;position:relative}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#fff;text-decoration:none}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;outline:0;text-decoration:none}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{background-color:#fff}h5 a{text-decoration:none}.news-feed-item a,.story-feed-item a,.event-feed-item a,.poll-feed-item a,.message a,.get-involved a{cursor:pointer}body .mat-drawer.mat-sidenav:not(.mat-drawer-end){background-color:var(--color-primary)}body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-list-option:not(.mat-list-item-disabled):hover,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-list-option:not(.mat-list-item-disabled):focus,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-nav-list .mat-list-item:not(.mat-list-item-disabled):focus,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-action-list .mat-list-item:not(.mat-list-item-disabled):focus{background-color:var(--color-accent);color:var(--color-accent-contrast)}body .mat-drawer.mat-sidenav:not(.mat-drawer-end){color:var(--color-nav-text)}body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .user-info .email,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .user-info svg{color:var(--color-nav-text)}body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-list-option,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-list-base .mat-list-item,body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-action-list .mat-list-item{color:var(--color-nav-text)}body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .mat-divider{border-top-color:var(--color-nav-text)}body .mat-drawer.mat-sidenav:not(.mat-drawer-end) .badge{background-color:var(--color-accent);color:var(--color-accent-contrast)}body .sidebar-nav .mat-list-option:not(.mat-list-item-disabled):hover,body .sidebar-nav .mat-list-option:not(.mat-list-item-disabled):focus,body .sidebar-nav .mat-nav-list .mat-list-item:not(.mat-list-item-disabled):hover,body .sidebar-nav .mat-nav-list .mat-list-item:not(.mat-list-item-disabled):focus,body .sidebar-nav .mat-action-list .mat-list-item:not(.mat-list-item-disabled):hover,body .sidebar-nav .mat-action-list .mat-list-item:not(.mat-list-item-disabled):focus{background-color:rgba(var(--color-accent-rgb), 0.2);color:var(--color-accent-contrast)}html{--ih-color-primary-on-low-contrast: rgba(0, 0, 0, 0.87);--ih-color-primary-on-low-contrast-rgb: 33, 33, 33;--ih-color-primary-on-low-contrast-text-color: #fff;--ih-color-primary-on-low-contrast-text-color-rgb: 255, 255, 255;--mdc-outlined-text-field-focus-label-text-color: rgba(0, 0, 0, 0.87);--mdc-outlined-text-field-caret-color: rgba(0, 0, 0, 0.87);--mdc-filled-text-field-caret-color: rgba(0, 0, 0, 0.87);--mdc-outlined-button-label-text-color: #000;--mdc-outlined-button-outline-color: rgba(0, 0, 0, 0.12)}.mat-mdc-tab-group,.mat-mdc-tab-nav-bar{--mdc-tab-indicator-active-indicator-color: rgba(0, 0, 0, 0.87);--mat-tab-header-active-label-text-color: rgba(0, 0, 0, 0.87);--mat-tab-header-active-ripple-color: rgba(0, 0, 0, 0.87);--mat-tab-header-inactive-ripple-color: rgba(0, 0, 0, 0.87);--mat-tab-header-active-focus-label-text-color: rgba(0, 0, 0, 0.87);--mat-tab-header-active-hover-label-text-color: rgba(0, 0, 0, 0.87);--mat-tab-header-active-focus-indicator-color: rgba(0, 0, 0, 0.87);--mat-tab-header-active-hover-indicator-color: rgba(0, 0, 0, 0.87)}.mat-mdc-button.mat-primary,.mat-mdc-outlined-button.mat-primary{--mat-mdc-button-persistent-ripple-color: rgba(0, 0, 0, 0.87);--mdc-text-button-label-text-color: rgba(0, 0, 0, 0.87)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__leading,.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__notch,.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline__trailing{border-color:var(--mdc-theme-primary, rgba(0, 0, 0, 0.87))}.mat-primary{--mat-full-pseudo-checkbox-selected-icon-color: rgba(0, 0, 0, 0.87);--mat-minimal-pseudo-checkbox-selected-checkmark-color: rgba(0, 0, 0, 0.87)}.mat-primary .mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:rgba(0,0,0,.87)}.mat-primary .mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal::after,.mat-primary .mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-minimal::after{color:rgba(0,0,0,.87)}.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label{color:rgba(0,0,0,.87)}.shepherd-theme-custom .shepherd-button{color:rgba(0,0,0,.87)}.mat-button.mat-primary,.mat-icon-button.mat-primary,.mat-stroked-button.mat-primary{color:rgba(0,0,0,.87)}.mat-form-field-appearance-outline .mat-form-field-outline,.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline{color:rgba(0,0,0,.87)}.mat-form-field.mat-focused,.mat-form-field.mat-focused .mat-form-field-label,.mat-form-field.mat-form-field-focused .mat-form-field-label{color:rgba(0,0,0,.87)}.mat-form-field.mat-focused .mat-form-field-ripple{background-color:rgba(0,0,0,.87)}.mat-form-field::placeholder{color:rgba(0,0,0,.87)}.mat-form-field::placeholder{color:rgba(0,0,0,.87)}.mat-form-field::input-placeholder{color:rgba(0,0,0,.87)}.mat-form-field:input-placeholder{color:rgba(0,0,0,.87)}.mat-input-element{caret-color:rgba(0,0,0,.87)}.mat-progress-spinner circle,.mat-spinner circle{color:rgba(0,0,0,.87)}.mat-progress-spinner circle,.mat-spinner circle{stroke:rgba(0,0,0,.87)}.mat-primary .mat-option.mat-selected:not(.mat-option-disabled){color:unset}html{--color-primary: rgba(255, 255, 255, 1);--color-primary-rgb: 255, 255, 255;--color-primary-contrast: black;--color-primary-contrast-rgb: 0, 0, 0;--color-accent: #A60000;--color-accent-rgb: 166, 0, 0;--color-accent-contrast: white;--color-accent-contrast-rgb: 255, 255, 255;--color-nav-text: #000000;--color-nav-text-rgb: 0, 0, 0;--mdc-dialog-container-shape: 28px;--mdc-typography-button-letter-spacing: normal}.mat-mdc-list-base{--mdc-list-list-item-label-text-tracking: normal}

/* ==========================================================================
   PROJECT ROLLPLAY — GLOBAL STYLESHEET v14
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,600;0,700;1,400;1,600&display=swap');

/* ==========================================================================
   FONT SIZE SCALE
   10px  — micro: platform labels, metadata, absolute minimum
   13px  — caption: eyebrows, tags, utility labels
   15px  — small body: secondary paragraphs, card body text
   16px  — base body: standard paragraph text
   18px  — lead: subheadings, emphasized body, h4
   24px  — h3
   36px  — h2
   48px  — h1 / display
   ========================================================================== */

/* ==========================================================================
   01. DESIGN TOKENS
   ========================================================================== */

:root {
  --prp-dark:   color-mix(in srgb, var(--color-accent) 45%, #000000);
  --prp-deeper: color-mix(in srgb, var(--color-accent) 18%, #000000);

  --prp-surface:     #fbfbfb;
  --prp-surface-alt: #f0f0f0;
  --prp-border:      #EBECF1;

  --prp-text:       #1a1a1a;
  --prp-text-muted: #7c7c7c;
  --prp-text-light: #ffffff;

  --prp-shadow-sm: 0 2px 4px rgba(0,0,0,0.12);
  --prp-shadow-md: 0 4px 8px rgba(0,0,0,0.15);
  --prp-shadow-lg: 0 8px 24px rgba(0,0,0,0.25);
  --prp-shadow-xl: 0 12px 40px rgba(0,0,0,0.4);

  --prp-radius-sm:   8px;
  --prp-radius-md:   16px;
  --prp-radius-lg:   25px;
  --prp-radius-pill: 50px;

  --prp-font-heading: 'Cinzel', Georgia, serif;
  --prp-font-body:    'Nunito', Arial, sans-serif;
  --prp-font-serif:   'Lora', Georgia, serif;

  --prp-space-xs:  4px;
  --prp-space-sm:  8px;
  --prp-space-md:  16px;
  --prp-space-lg:  24px;
  --prp-space-xl:  40px;
  --prp-space-2xl: 60px;

  --prp-transition:      all 0.3s ease;
  --prp-transition-fast: all 0.15s ease;

  --ih-bottom-nav-height:                            56px;
  --ih-app-background-color:                         #fbfbfb;
  --ih-app-background-color-contrast:                #000000;
  --ih-app-background-color-content:                 #fbfbfb;
  --ih-app-background-color-content-contrast:        #000000;
  --ih-app-channel-header-background-color:          #fbfbfb;
  --ih-app-channel-header-background-color-contrast: #000000;
}


/* ==========================================================================
   02. BASE & RESET
   ========================================================================== */

html { font-size: 16px; overflow-x: hidden; }
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: var(--prp-font-body);
  color: var(--prp-text);
  background-color: var(--prp-surface);
  line-height: 1.6;
  margin: 0; padding: 0;
  overflow-x: hidden;
  max-width: 100vw;
}

img { max-width: 100%; height: auto; }
a   { text-decoration: none; color: inherit; }


/* ==========================================================================
   03. TYPOGRAPHY
   ========================================================================== */

h1, h2, h3, h4, h5, h6 {
  font-family: var(--prp-font-heading);
  line-height: 1.2;
  margin: 0 0 var(--prp-space-md);
  color: var(--prp-text);
}

h1 { font-size: 48px; font-weight: 700; }
h2 { font-size: 36px; font-weight: 600; }
h3 { font-size: 24px; font-weight: 600; }
h4 { font-size: 18px; font-weight: 600; }

p {
  font-family: var(--prp-font-body);
  font-size: 16px;
  line-height: 1.75;
  margin: 0 0 var(--prp-space-md);
}

/* Universal eyebrow */
.prp-eyebrow,
.prp-section-eyebrow {
  display: block;
  font-family: var(--prp-font-body);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--color-accent);
  margin-bottom: var(--prp-space-sm);
}

/* Universal centred section intro block */
.prp-section-title {
  text-align: center;
  margin: 0 auto var(--prp-space-xl);
  max-width: 800px;
}
.prp-section-title h1,
.prp-section-title h2 { margin-bottom: var(--prp-space-md); }
.prp-section-title p   { color: var(--prp-text-muted); font-size: 16px; }

/* Universal heading scale
   Replaces page-specific heading classes. Old classes kept below as deprecated
   and will be removed as pages are updated to use these. */
.prp-heading-xl {
  font-family: var(--prp-font-heading);
  font-size: clamp(32px, 5vw, 56px);
  font-weight: 700;
  line-height: 1.08;
  margin: 0 0 var(--prp-space-md);
  color: var(--prp-text);
}
.prp-heading-lg {
  font-family: var(--prp-font-heading);
  font-size: clamp(26px, 3.8vw, 48px);
  font-weight: 700;
  line-height: 1.1;
  margin: 0 0 var(--prp-space-md);
  color: var(--prp-text);
}
.prp-heading-md {
  font-family: var(--prp-font-heading);
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 var(--prp-space-md);
  color: var(--prp-text);
}

/* Heading colour on coloured backgrounds */
.prp-section-red  .prp-heading-xl,
.prp-section-red  .prp-heading-lg,
.prp-section-red  .prp-heading-md,
.prp-section-dark .prp-heading-xl,
.prp-section-dark .prp-heading-lg,
.prp-section-dark .prp-heading-md { color: var(--prp-text-light); }

/* em accent inside headings */
.prp-heading-xl em,
.prp-heading-lg em,
.prp-heading-md em { color: var(--color-accent); font-style: italic; }

/* Section footer utilities */
.prp-section-footer-center { text-align: center; margin-top: var(--prp-space-xl); }
.prp-section-footer-center .prp-btn-group { justify-content: center; }

/* Colour utilities */
.prp-text-center  { text-align: center; }
.prp-text-accent  { color: var(--color-accent); }
.prp-text-primary { color: var(--color-primary); }
.prp-text-white   { color: var(--prp-text-light); }
.prp-text-dark    { color: var(--prp-dark); }
.prp-text-muted   { color: var(--prp-text-muted); }
.prp-bg-accent    { background-color: var(--color-accent); }
.prp-bg-primary   { background-color: var(--color-primary); }
.prp-bg-dark      { background-color: var(--prp-dark); }
.prp-bg-deeper    { background-color: var(--prp-deeper); }


/* ==========================================================================
   04. BUTTONS
   Shared base + colour-only variants.
   ========================================================================== */

.prp-btn,
.prp-btn-outline,
.prp-btn-deep {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--prp-space-sm);
  padding: 10px 24px;
  border: 2px solid transparent;
  border-radius: var(--prp-radius-pill);
  font-family: var(--prp-font-body);
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: var(--prp-transition);
  box-shadow: var(--prp-shadow-md);
  text-decoration: none !important;
  margin: 2px;
  white-space: nowrap;
}

.prp-btn         { background-color: var(--color-accent);  border-color: var(--color-accent);  color: var(--prp-text-light); }
.prp-btn-outline { background-color: var(--color-primary); border-color: var(--color-accent);  color: var(--color-accent); }
.prp-btn-deep    { background-color: var(--prp-deeper);    border-color: var(--color-primary); color: var(--color-primary); }

.prp-btn:hover         { background-color: var(--prp-dark); border-color: var(--prp-dark); color: var(--prp-text-light); transform: translateY(-3px); box-shadow: var(--prp-shadow-lg); }
.prp-btn-outline:hover { background-color: var(--color-accent); color: var(--prp-text-light); transform: translateY(-3px); box-shadow: var(--prp-shadow-lg); }
.prp-btn-deep:hover    { background-color: var(--prp-dark); border-color: var(--color-primary); color: var(--color-primary); transform: translateY(-3px); box-shadow: var(--prp-shadow-lg); }

.prp-btn-group { display: flex; flex-wrap: wrap; gap: 10px; }


/* ==========================================================================
   05. LAYOUT UTILITIES
   ========================================================================== */

/* Universal outer container — prp-feed-outer and prp-container are identical. */
.prp-feed-outer,
.prp-container {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}

/* Inner content wrapper */
.prp-section-inner { display: block; width: 100%; }

.prp-section-2col { display: flex; align-items: flex-start; gap: 60px; flex-wrap: wrap; }
.prp-row          { display: flex; align-items: center; gap: var(--prp-space-lg); flex-wrap: wrap; }
.prp-col          { flex: 1; min-width: 280px; padding: var(--prp-space-lg); }
.prp-grid-3       { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--prp-space-lg); }
.prp-grid-2       { display: grid; grid-template-columns: 1fr 1fr; gap: var(--prp-space-lg); }
.prp-center       { text-align: center; margin: 0 auto; }

.prp-quicknav {
  display: flex; flex-wrap: wrap; gap: var(--prp-space-sm);
  justify-content: center; padding: var(--prp-space-lg) 0 var(--prp-space-md);
}

.prp-hide-mobile  { display: block; }
.prp-hide-desktop { display: none; }
.alphanumeric     { background-color: var(--color-accent) !important; }


/* ==========================================================================
   05b. UNIVERSAL SECTION WRAPPERS
   Three types only: light, red, dark.
   All width control lives inside prp-feed-outer / prp-container.
   ========================================================================== */

.prp-section-light { padding: 72px 0; }

.prp-section-red {
  background: radial-gradient(circle at top, var(--color-accent) 0%, var(--prp-dark) 55%);
  padding: 72px 0; position: relative; overflow: hidden;
}
.prp-section-red::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: repeating-linear-gradient(0deg, transparent, transparent 60px, rgba(0,0,0,0.04) 60px, rgba(0,0,0,0.04) 61px);
}

.prp-section-dark {
  background: radial-gradient(circle at bottom, var(--prp-dark) 0%, var(--prp-deeper) 100%);
  padding: 72px 0; position: relative; overflow: hidden;
}
.prp-section-dark::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: repeating-linear-gradient(0deg, transparent, transparent 64px, color-mix(in srgb, var(--color-accent) 2%, transparent) 64px, color-mix(in srgb, var(--color-accent) 2%, transparent) 65px);
}

/* Content sits above ::before overlay */
.prp-section-red  .prp-feed-outer,
.prp-section-red  .prp-section-inner,
.prp-section-red  .prp-section-2col,
.prp-section-dark .prp-feed-outer,
.prp-section-dark .prp-section-inner,
.prp-section-dark .prp-section-2col { position: relative; z-index: 1; }

/* Eyebrow colour on coloured backgrounds */
.prp-section-red  .prp-section-eyebrow { color: var(--prp-text-light); opacity: 0.5; }
.prp-section-dark .prp-section-eyebrow { color: color-mix(in srgb, var(--color-accent) 70%, transparent); }


/* ==========================================================================
   06. IMAGES & HERO BACKGROUNDS
   ========================================================================== */

.prp-banner-img,
.banner-image {
  display: block; width: 100%;
  border-radius: var(--prp-radius-lg);
  box-shadow: var(--prp-shadow-lg);
  margin: 0 auto var(--prp-space-md);
}

.prp-banner-bg {
  width: 100%; background-repeat: no-repeat;
  background-position: top center; background-size: cover;
  position: relative;
}

/* Shared positioning for all page hero background images.
   Only background-image is declared per class below. */
.prp-gm-hero-bg, .prp-fdm-hero-bg, .prp-mh-hero-bg, .prp-mc-hero-bg,
.prp-emp-hero-bg, .prp-ehcl-hero-bg, .prp-cb-hero-bg, .prp-party-hero-bg,
.prp-homebrew-hero-bg, .prp-avalon-lost-hero-bg, .prp-endora-hero-bg, .prp-irdivine-hero-bg, .prp-mythharbor-hero-bg, .prp-noliel-hero-bg,
.prp-sirocco-springs-hero-bg, .prp-pandoria-hero-bg, .prp-marvel-city-hero-bg,
.prp-khazammar-hero-bg, .prp-foxguard-hero-bg, .prp-dracos-den-hero-bg,
.prp-winterglade-hero-bg, .prp-vassal-keep-hero-bg, .prp-valfaern-hero-bg,
.prp-nexia-hero-bg {
  position: absolute; inset: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

/* Page-specific URLs */
.prp-gm-hero-bg              { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2026/02/19/prp-blob_09_23_58_5384.dat'); }
.prp-fdm-hero-bg             { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/09/15/prp-blob_06_55_29_0792.dat'); }
.prp-mh-hero-bg              { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/06/12/prp-blob_09_15_01_5709.dat'); }
.prp-mc-hero-bg              { background-image: url('https://ih-cdn.ihub.app/media/v1/crop/w_1536,h_710,ow_1536,oh_710,s_1/render/w_1536,h_710,dpr_1.25/instance/ca/posts/90/2026/03/22/prp-blob_04_53_46_1378.dat'); }
.prp-emp-hero-bg             { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/11/07/prp-blob_07_02_03_5724.dat'); }
.prp-ehcl-hero-bg            { background-image: url('https://ih-cdn.ihub.app/media/v1/crop/w_478,h_269,ow_1792,oh_1024,s_0.26734984/render/w_1536,h_864,dpr_1.25/instance/ca/give/90/2023/11/09/prp-blob_05_58_20_3795.dat'); }
.prp-cb-hero-bg              { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/12/07/prp-blob_05_30_57_2805.dat'); }
.prp-party-hero-bg           { background-image: url('https://ih-cdn.ihub.app/media/v1/crop/w_1536,h_641,ow_1536,oh_641,s_1/render/w_1536,h_641,dpr_1.25/instance/ca/posts/90/2026/03/31/prp-blob_07_33_05_0419.dat'); }
.prp-sirocco-springs-hero-bg { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/25/prp-blob_05_11_41_7075.dat'); }
.prp-pandoria-hero-bg        { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/04/24/prp-blob_04_22_45_9624.dat'); }
.prp-marvel-city-hero-bg     { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/05/09/prp-blob_03_29_59_8027.dat'); }
.prp-khazammar-hero-bg       { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/26/prp-blob_06_05_16_6181.dat'); }
.prp-foxguard-hero-bg        { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/08/01/prp-blob_01_52_28_3526.dat'); }
.prp-dracos-den-hero-bg      { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/23/prp-blob_02_06_49_3838.dat'); }
.prp-winterglade-hero-bg     { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/09/13/prp-blob_04_20_50_4379.dat'); }
.prp-vassal-keep-hero-bg     { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/08/01/prp-blob_09_19_29_0426.dat'); }
.prp-valfaern-hero-bg        { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/26/prp-blob_03_31_32_2024.dat'); }
.prp-nexia-hero-bg            { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/10/13/prp-blob_01_13_46_4067.dat'); }
.prp-homebrew-hero-bg         { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/11/07/prp-blob_07_32_39_6033.dat'); }
.prp-avalon-lost-hero-bg      { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/03/21/prp-blob_05_02_09_8514.dat'); }
.prp-endora-hero-bg           { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/26/prp-blob_06_09_58_0250.dat'); }
.prp-irdivine-hero-bg         { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/26/prp-blob_05_56_17_1115.dat'); }
.prp-mythharbor-hero-bg       { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/26/prp-blob_06_13_09_1164.dat'); }
.prp-noliel-hero-bg           { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/07/19/prp-blob_06_28_10_2543.dat'); }

/* Universal dark gradient overlay for page banner heroes */
.prp-page-hero-overlay {
  position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(to right, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.5) 55%, rgba(0,0,0,0.15) 100%),
    linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.2) 40%, transparent 100%);
}


/* ==========================================================================
   07. CARDS
   ========================================================================== */

.prp-card {
  background-color: var(--prp-surface); border-radius: var(--prp-radius-md);
  padding: var(--prp-space-lg); box-shadow: var(--prp-shadow-md); transition: var(--prp-transition);
}
.prp-card:hover { transform: translateY(-4px); box-shadow: var(--prp-shadow-xl); }

.prp-card-dark {
  background: radial-gradient(circle at top, var(--prp-dark) 0%, var(--prp-deeper) 100%);
  color: var(--prp-text-light); border-radius: var(--prp-radius-md);
  padding: var(--prp-space-lg); box-shadow: var(--prp-shadow-lg); transition: var(--prp-transition);
}
.prp-card-dark:hover { transform: translateY(-6px); box-shadow: var(--prp-shadow-xl); }

.prp-card-service {
  background-color: rgba(239,239,239,0.44); border-radius: var(--prp-radius-md);
  padding: var(--prp-space-lg) var(--prp-space-md); text-align: center;
  box-shadow: var(--prp-shadow-lg); transition: var(--prp-transition); flex: 1; min-width: 240px;
}
.prp-card-service:hover { transform: translateY(-4px); box-shadow: var(--prp-shadow-xl); }
.prp-card-service.prp-card-service-active { background-color: var(--color-accent); }
.prp-card-service.prp-card-service-active h3,
.prp-card-service.prp-card-service-active p { color: var(--prp-text-light); }

.prp-service-icon {
  width: 80px; height: 80px; border-radius: var(--prp-radius-pill);
  background-color: var(--color-accent); margin: var(--prp-space-md) auto var(--prp-space-sm);
  display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.prp-card-service-active .prp-service-icon { background-color: var(--color-primary); }
.prp-service-icon img { width: 70px; height: 70px; object-fit: contain; border-radius: 0; box-shadow: none; margin: 0; }

.prp-card-service h3 { color: var(--color-accent); font-size: 24px; margin-top: var(--prp-space-sm); margin-bottom: var(--prp-space-sm); }
.prp-card-service p  { font-size: 15px; line-height: 1.75; color: var(--prp-text); margin: 0; }

.prp-service-row { display: flex; align-items: stretch; gap: var(--prp-space-lg); flex-wrap: wrap; margin-top: var(--prp-space-lg); }


/* ==========================================================================
   08. HERO SECTION (Home page)
   ========================================================================== */

.prp-hero-text h1 { font-size: 48px; font-weight: 900; line-height: 1.05; margin-bottom: var(--prp-space-md); }
.prp-hero-text p  { font-size: 18px; }
.prp-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: var(--prp-space-md); margin-top: var(--prp-space-xl); padding-bottom: 8px; }


/* ==========================================================================
   09. ABOUT / TWO-COLUMN SECTION
   ========================================================================== */

.prp-about { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: var(--prp-space-lg); padding: var(--prp-space-2xl) 0; }
.prp-about-col { flex: 1; min-width: 280px; padding: var(--prp-space-lg); }
.prp-about-col img { width: 100%; height: auto; border-radius: var(--prp-radius-lg); box-shadow: var(--prp-shadow-lg); margin: 0; display: block; }
.prp-about-col h2 { margin-bottom: var(--prp-space-sm); }
.prp-check-list { list-style: none; padding: 0; margin: var(--prp-space-md) 0; }
.prp-check-list li { font-family: var(--prp-font-body); font-size: 16px; padding: var(--prp-space-xs) 0; color: var(--prp-text); }


/* ==========================================================================
   11. CAMPAIGN CARDS (Nexia pages)
   ========================================================================== */

.prp-campaign-link { display: block; text-decoration: none; color: inherit; }
.prp-campaign-card {
  display: flex; flex-wrap: wrap; align-items: center;
  width: 90%; border: 1px solid var(--color-accent); padding: var(--prp-space-lg);
  box-shadow: var(--prp-shadow-xl); border-radius: var(--prp-radius-lg);
  margin: var(--prp-space-md) auto; transition: var(--prp-transition);
  background: radial-gradient(circle at top, var(--color-primary) 0%, #e6e6e6 55%);
  color: var(--prp-text);
}
.prp-campaign-card:hover { transform: translateY(-4px); box-shadow: 0 10px 20px rgba(0,0,0,0.2); }
.prp-campaign-card:nth-child(even) { background: radial-gradient(circle at top, var(--color-accent) 0%, var(--prp-dark) 55%); color: var(--prp-text-light); }

.prp-campaign-content { display: flex; flex-direction: row; align-items: center; width: 100%; gap: var(--prp-space-lg); }
.prp-campaign-img     { flex: 0 0 200px; max-width: 200px; }
.prp-campaign-img img { width: 100%; height: auto; border-radius: var(--prp-radius-md); display: block; box-shadow: none; margin: 0; }
.prp-campaign-text    { flex: 1; }
.prp-campaign-text h2 { margin: 0; }
.prp-campaign-text h4 { margin: 0 0 var(--prp-space-lg); font-weight: 700; }
.prp-campaign-text p  { margin: 0 0 var(--prp-space-sm); }


/* ==========================================================================
   12. NPC CARDS
   Replaces previous .prp-npc-grid / .prp-npc-card rules entirely.
   New classes added: .prp-crew-roster, .prp-npc-card-header, .prp-npc-role,
   .prp-npc-img-wrap, .prp-npc-nameblock, .prp-npc-race, .prp-npc-footer,
   .prp-npc-ranks-key, .prp-npc-ranks-val, .prp-npc-manifest and children.
   ========================================================================== */

/* Counter wrapper — one per page, wraps all crew grids */
.prp-crew-roster { counter-reset: prp-crew; }
 
/* Grid */
.npc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: var(--prp-space-md);
  margin: var(--prp-space-lg) 0 var(--prp-space-xl);
}
 
/* Card shell */
.npc-card {
  background: var(--prp-deeper);
  border: none;
  box-shadow: 0 8px 28px rgba(0,0,0,0.45), 0 0 0 1px rgba(166,0,0,0.5);
  border-radius: var(--prp-radius-sm);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  counter-increment: prp-crew;
}
 
/* Shared red header bar — used on both .npc-card and .npc-manifest */
.npc-header {
  background: linear-gradient(to right, var(--color-accent), var(--prp-dark));
  padding: 6px 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-shrink: 0;
  gap: 8px;
}
 
/* Header text — role label or manifest title */
.npc-header span {
  font-family: var(--prp-font-body);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.75);
}
 
/* Auto crew number — officer cards only, not manifest */
.npc-card .npc-header::after {
  content: '№ ' counter(prp-crew, decimal-leading-zero);
  font-family: var(--prp-font-body);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  color: rgba(255,255,255,0.35);
  white-space: nowrap;
  flex-shrink: 0;
}
 
/* Image zone */
.npc-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  flex-shrink: 0;
}
 
.npc-img-wrap img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
 
/* Gradient fade — image to card background */
.npc-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    var(--prp-deeper) 0%,
    color-mix(in srgb, var(--prp-deeper) 30%, transparent) 40%,
    transparent 65%
  );
  pointer-events: none;
}
 
/* Name + race overlay at base of image */
.npc-nameblock {
  position: absolute;
  bottom: 10px;
  left: 10px;
  right: 10px;
  z-index: 2;
}
 
.npc-nameblock h3 {
  font-family: var(--prp-font-heading);
  font-size: 14px;
  font-weight: 700;
  color: var(--prp-text-light);
  margin: 0 0 3px;
  line-height: 1.2;
}
 
.npc-race {
  display: block;
  font-family: var(--prp-font-body);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--color-accent);
}
 
/* Ranks footer */
.npc-footer {
  padding: 9px 10px 12px;
  border-top: 1px solid color-mix(in srgb, var(--color-accent) 20%, transparent);
  display: flex;
  gap: 6px;
  align-items: baseline;
}
 
/* "RANKS" key label */
.npc-footer span:first-child {
  font-family: var(--prp-font-body);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--color-accent) 50%, transparent);
  flex-shrink: 0;
  min-width: 34px;
}
 
/* Rank values */
.npc-footer span:last-child {
  font-family: var(--prp-font-body);
  font-size: 10px;
  color: rgba(255,255,255,0.6);
  line-height: 1.4;
}
 
/* ── Manifest panel — listed crew without portraits ── */
 
.npc-manifest {
  grid-column: 1 / -1;
  border-radius: var(--prp-radius-sm);
  overflow: hidden;
  background: var(--prp-deeper);
  border: 1px solid color-mix(in srgb, var(--color-accent) 35%, transparent);
  box-shadow: var(--prp-shadow-lg);
}
 
.npc-manifest-body {
  padding: 12px 14px 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
 
.npc-entry {
  display: flex;
  gap: 7px;
  align-items: baseline;
  padding: 6px 8px 6px 0;
  border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 10%, transparent);
  counter-increment: prp-crew;
}
 
.npc-entry:nth-child(even) {
  padding-left: 10px;
  border-left: 1px solid color-mix(in srgb, var(--color-accent) 10%, transparent);
}
 
.npc-entry:nth-last-child(-n+2) { border-bottom: none; }
 
.npc-entry::before {
  content: '№ ' counter(prp-crew, decimal-leading-zero);
  font-family: var(--prp-font-body);
  font-size: 9px;
  font-weight: 700;
  color: color-mix(in srgb, var(--color-accent) 55%, transparent);
  letter-spacing: 1px;
  flex-shrink: 0;
  min-width: 28px;
}
 
.npc-entry-name {
  font-family: var(--prp-font-heading);
  font-size: 12px;
  color: rgba(255,255,255,0.7);
  line-height: 1.3;
}
 
.npc-entry-sub {
  display: block;
  font-family: var(--prp-font-body);
  font-size: 9px;
  font-weight: 700;
  color: color-mix(in srgb, var(--color-accent) 60%, transparent);
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 1px;
}

/* ==========================================================================
   14. STATS BAR
   ========================================================================== */

.prp-stats-bar { display: flex; justify-content: center; flex-wrap: wrap; gap: var(--prp-space-xl); padding: var(--prp-space-xl) var(--prp-space-lg); text-align: center; }
.prp-stat-item strong { display: block; font-family: var(--prp-font-heading); font-size: 48px; font-weight: 700; line-height: 1; color: var(--prp-text-light); }
.prp-stat-item span   { font-family: var(--prp-font-body); font-size: 13px; text-transform: uppercase; letter-spacing: 1px; color: rgba(255,255,255,0.8); }


/* ==========================================================================
   15. HOME PAGE SECTIONS
   ========================================================================== */

.prp-topnav {
  display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 0; padding: 0;
  background-color: var(--prp-deeper);
  border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 60%, transparent);
}
.prp-topnav-pill {
  font-family: var(--prp-font-body); font-size: 13px; font-weight: 800;
  letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.75);
  text-decoration: none; padding: 22px; display: inline-flex;
  align-items: center; gap: 10px; border: none; background: transparent;
  transition: all 0.2s ease; white-space: nowrap; position: relative;
}
.prp-topnav-pill + .prp-topnav-pill::before {
  content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%);
  width: 1px; height: 16px; background: color-mix(in srgb, var(--color-accent) 30%, transparent); flex-shrink: 0;
}
.prp-topnav-pill::after {
  content: ''; width: 12px; height: 12px; border-radius: 50%;
  border: 1.5px solid color-mix(in srgb, var(--color-accent) 80%, transparent);
  background: color-mix(in srgb, var(--color-accent) 20%, transparent);
  flex-shrink: 0; transition: all 0.2s ease; order: -1;
}
.prp-topnav-pill span { position: relative; }
.prp-topnav-pill span::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 2px; background: var(--color-accent); transition: width 0.25s ease; }
.prp-topnav-pill:hover { color: var(--color-primary); background: color-mix(in srgb, var(--color-accent) 8%, transparent); }
.prp-topnav-pill:hover::after { background: var(--color-accent); border-color: var(--color-accent); box-shadow: 0 0 8px color-mix(in srgb, var(--color-accent) 90%, transparent); }
.prp-topnav-pill:hover span::after { width: 100%; }

.prp-hero-banner {
  position: relative; width: 100%; height: calc(100vh - 96px);
  min-height: 560px; max-height: 980px;
  background-color: var(--prp-deeper); overflow: hidden; margin-top: 0;
}
.prp-hero-bg {
  position: absolute; inset: 0;
  background: url('https://ih-cdn.ihub.app/media/v1/crop/w_2560,h_1440,ow_2560,oh_1440,s_1/render/w_1920,h_1080,dpr_1/instance/ca/posts/90/2026/03/17/prp-blob_05_31_40_9218.dat') no-repeat center right;
  background-size: cover;
}
.prp-hero-overlay {
  position: absolute; inset: 0;
  background:
    linear-gradient(100deg, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.75) 35%, rgba(0,0,0,0.15) 62%, transparent 100%),
    linear-gradient(to top, rgba(0,0,0,0.99) 0%, rgba(0,0,0,0.55) 22%, transparent 50%);
}
.prp-hero-content {
  position: relative; z-index: 3; height: 100%;
  display: flex; flex-direction: row; align-items: flex-end; justify-content: space-between;
  padding: 0 5% 48px; gap: 32px;
}
.prp-hero-left  { flex: 1; max-width: 650px; display: flex; flex-direction: column; justify-content: flex-end; }
.prp-hero-right { display: flex; flex-direction: column; align-items: center; justify-content: flex-end; padding-bottom: 8px; gap: 0; }

.prp-hero-badge { display: inline-block; background: linear-gradient(90deg, var(--color-accent), var(--prp-dark)); border-radius: 3px; padding: 3px 12px; margin-bottom: 20px; }
.prp-hero-badge span { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.9); }

.prp-hero-h1 { font-family: var(--prp-font-heading); font-size: clamp(40px, 5.8vw, 72px); font-weight: 900; color: var(--color-primary); line-height: 1.02; margin: 0 0 16px; text-shadow: 0 2px 30px rgba(0,0,0,0.9); }
.prp-hero-h1 em { color: var(--color-accent); font-style: italic; }
.prp-hero-sub { font-family: var(--prp-font-body); font-size: clamp(14px, 1.5vw, 16px); color: rgba(255,255,255,0.75); line-height: 1.85; margin: 0 0 32px; max-width: 460px; text-shadow: 0 1px 10px rgba(0,0,0,0.8); }
.prp-hero-ghost-link { font-family: var(--prp-font-body); font-size: 13px; font-weight: 700; letter-spacing: 0.5px; color: rgba(255,255,255,0.5); text-decoration: none; transition: color 0.2s; }
.prp-hero-ghost-link:hover { color: rgba(255,255,255,0.85); }

.prp-stat-col    { display: flex; flex-direction: column; align-items: center; gap: 0; padding-bottom: 8px; }
.prp-stat-rule-v { width: 1px; background: linear-gradient(to bottom, transparent, color-mix(in srgb, var(--color-accent) 50%, transparent)); margin-bottom: 6px; }
.prp-stat-rule-h { width: 36px; height: 1px; background: color-mix(in srgb, var(--color-accent) 35%, transparent); margin: 4px 0; }
.prp-sc          { text-align: center; padding: 10px 16px; }
.prp-sc strong   { display: block; font-family: var(--prp-font-heading); font-size: 30px; font-weight: 700; color: var(--color-primary); line-height: 1; margin-bottom: 5px; }
.prp-sc span     { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.45); line-height: 1.4; }

.prp-scroll-cue      { margin-top: 24px; animation: prp-drop 2.2s ease-in-out infinite; text-align: center; }
.prp-scroll-cue span { font-family: var(--prp-font-body); font-size: 10px; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.28); display: block; margin-bottom: 6px; }
.prp-scroll-line     { width: 1px; height: 28px; background: linear-gradient(to bottom, rgba(255,255,255,0.25), transparent); margin: 0 auto; }

/* WIS — Parchment section
   NOTE: Intentional non-brand hex colours for parchment aesthetic. */
.prp-carrying-text  { flex: 1.2; min-width: 280px; }
.prp-carry-lines    { margin-bottom: 28px; }
.prp-carry-line     { font-family: var(--prp-font-heading); font-size: clamp(16px, 2vw, 21px); font-weight: 700; color: #2b1f16; display: block; line-height: 2; opacity: 0; transform: translateX(-16px); animation: prp-slidein 0.6s ease forwards; }
.prp-carry-line:nth-child(1) { animation-delay: 0.1s; }
.prp-carry-line:nth-child(2) { animation-delay: 0.25s; }
.prp-carry-line:nth-child(3) { animation-delay: 0.4s; }
.prp-carry-rule     { width: 56px; height: 3px; background: var(--color-accent); border-radius: 2px; margin-bottom: 24px; }
.prp-carry-body     { font-size: 16px; line-height: 1.85; color: #3d2e22; margin: 0 0 15px; font-family: Georgia, serif; }
.prp-carry-emphasis { color: #2b1f16; }
.prp-carry-quote    { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: var(--color-accent); margin: 0 0 32px; font-style: italic; padding-left: 16px; border-left: 3px solid color-mix(in srgb, var(--color-accent) 40%, transparent); width: 75%; margin-left: auto; text-align: left; }
.prp-carry-quote-attr { display: block; text-align: right; margin-top: 12px; }

.prp-saving-throw { flex: 1; min-width: 260px; }
.prp-st-card { background: #ede0c4; border: 2px solid rgba(90,60,30,0.3); border-radius: 6px; padding: 28px 28px 32px; box-shadow: inset 0 0 20px rgba(90,60,30,0.08), 2px 4px 12px rgba(90,60,30,0.15); position: relative; }
.prp-st-header { text-align: center; border-bottom: 1.5px solid rgba(90,60,30,0.25); padding-bottom: 15px; margin-bottom: 20px; }
.prp-st-title  { font-family: var(--prp-font-heading); font-size: 13px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #2b1f16; margin: 0 0 2px; display: block; }
.prp-st-subtitle { font-family: var(--prp-font-heading); font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: rgba(43,31,22,0.5); margin: 0; display: block; }
.prp-st-rows   { display: flex; flex-direction: column; gap: 0; }
.prp-st-row    { display: flex; align-items: center; gap: 12px; padding: 15px 0; border-bottom: 1px solid rgba(90,60,30,0.12); }
.prp-st-row:last-child { border-bottom: none; }
.prp-st-dot    { width: 14px; height: 14px; border-radius: 50%; background: var(--color-accent); box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-accent) 30%, transparent); flex-shrink: 0; }
.prp-st-label  { flex: 1; font-family: var(--prp-font-serif); font-size: 15px; color: #2b1f16; letter-spacing: 0.5px; }
.prp-st-check  { font-family: var(--prp-font-heading); font-size: 13px; font-weight: 700; color: var(--color-accent); }
.prp-st-footer { margin-top: 20px; padding-top: 16px; border-top: 1.5px solid rgba(90,60,30,0.25); text-align: center; }
.prp-st-footer span { font-family: var(--prp-font-heading); font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: rgba(43,31,22,0.4); }
.prp-st-corner    { position: absolute; width: 12px; height: 12px; }
.prp-st-corner-tl { top: 8px;    left: 8px;  border-top: 1.5px solid rgba(90,60,30,0.3); border-left: 1.5px solid rgba(90,60,30,0.3); }
.prp-st-corner-tr { top: 8px;    right: 8px; border-top: 1.5px solid rgba(90,60,30,0.3); border-right: 1.5px solid rgba(90,60,30,0.3); }
.prp-st-corner-bl { bottom: 8px; left: 8px;  border-bottom: 1.5px solid rgba(90,60,30,0.3); border-left: 1.5px solid rgba(90,60,30,0.3); }
.prp-st-corner-br { bottom: 8px; right: 8px; border-bottom: 1.5px solid rgba(90,60,30,0.3); border-right: 1.5px solid rgba(90,60,30,0.3); }

/* CHA — Cinematic storytelling */
.prp-section-red .prp-stat-block-label { width: 100%; }
.prp-happens     .prp-stat-block-label { margin-bottom: 52px; }
.prp-happens     .prp-btn-group        { justify-content: center; }

.prp-cha-scene       { text-align: center; margin-bottom: 20px; }
.prp-cha-scene-label { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.3); display: block; margin-bottom: 28px; }
.prp-cha-quote       { font-family: var(--prp-font-heading); font-size: clamp(22px, 3.5vw, 42px); font-weight: 400; font-style: italic; color: var(--prp-text-light); line-height: 1.5; max-width: 760px; margin: 0 auto 12px; text-shadow: 0 2px 40px rgba(0,0,0,0.8); text-align: center; }
.prp-cha-quote-sub   { font-family: var(--prp-font-heading); font-size: clamp(18px, 2.5vw, 28px); font-style: italic; color: rgba(255,255,255,0.5); display: block; margin-top: 8px; }
.prp-cha-quote-sub em { color: var(--prp-text-light); font-style: italic; }
.prp-cha-rule        { width: 1px; height: 60px; background: linear-gradient(to bottom, rgba(255,255,255,0.3), transparent); margin: 0 auto 48px; }

.prp-cha-cards       { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 48px; }
.prp-cha-card        { background: #f5ede0; border-radius: 4px; padding: 28px 24px 32px; position: relative; box-shadow: 0 8px 32px rgba(0,0,0,0.6), inset 0 0 0 1px rgba(90,60,30,0.2); }
.prp-cha-card:nth-child(1) { transform: rotate(-1.5deg); }
.prp-cha-card:nth-child(2) { transform: rotate(0.5deg) translateY(-8px); }
.prp-cha-card:nth-child(3) { transform: rotate(1.2deg); }
.prp-cha-card-act    { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(90,60,30,0.4); display: block; margin-bottom: 16px; border-bottom: 1px solid rgba(90,60,30,0.15); padding-bottom: 10px; }
.prp-cha-card-fantasy { font-family: var(--prp-font-serif); font-size: 15px; font-weight: 600; color: #2b1f16; line-height: 1.5; display: block; margin-bottom: 20px; font-style: italic; }
.prp-cha-card-stamp  { border: 2px solid var(--color-accent); border-radius: 3px; padding: 8px 12px; text-align: center; position: relative; }
.prp-cha-card-stamp::before { content: ''; position: absolute; inset: 3px; border: 1px solid color-mix(in srgb, var(--color-accent) 20%, transparent); border-radius: 2px; pointer-events: none; }
.prp-cha-card-stamp-text { font-family: var(--prp-font-heading); font-size: 13px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--color-accent); display: block; line-height: 1.4; }

/* INT — Nexia / Codex */
.prp-nexia-codex-content { flex: 1.2; min-width: 280px; }
.prp-nexia-codex-atlas   { flex: 1;   min-width: 260px; }
.prp-nexia-body          { font-size: 16px; line-height: 1.85; margin: 0 0 var(--prp-space-md); font-family: var(--prp-font-body); color: rgba(255,255,255,0.55); }
.prp-final-cta-inner     { text-align: center; }
.prp-final-cta .prp-section-eyebrow { color: color-mix(in srgb, var(--color-accent) 70%, transparent); margin-top: var(--prp-space-lg); }

.prp-codex-header { display: flex; align-items: center; gap: 15px; margin-bottom: 28px; }
.prp-codex-tag    { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--color-accent); border: 1px solid color-mix(in srgb, var(--color-accent) 40%, transparent); border-radius: 3px; padding: 4px 10px; white-space: nowrap; }
.prp-codex-rule   { flex: 1; height: 1px; background: color-mix(in srgb, var(--color-accent) 25%, transparent); }
.prp-codex-cat    { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.2); white-space: nowrap; }

.prp-lore-record { display: grid; grid-template-columns: 1fr 1fr 1fr; border: 1px solid color-mix(in srgb, var(--color-accent) 25%, transparent); border-radius: 6px; background: color-mix(in srgb, var(--color-accent) 6%, transparent); margin: 24px 0 28px; overflow: hidden; }
.prp-lore-record-item { text-align: center; padding: 20px 12px; border-right: 1px solid color-mix(in srgb, var(--color-accent) 18%, transparent); }
.prp-lore-record-item:last-child { border-right: none; }
.prp-lore-stat  { display: block; font-family: var(--prp-font-heading); font-size: 30px; font-weight: 700; color: var(--color-accent); line-height: 1; margin-bottom: 6px; }
.prp-lore-label { display: block; font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); }

.prp-atlas-outer { position: relative; padding: 8px; }
.prp-atlas-frame { border-radius: 8px; overflow: hidden; box-shadow: 0 0 0 1px color-mix(in srgb, var(--color-accent) 40%, transparent), 0 0 0 5px color-mix(in srgb, var(--color-accent) 8%, transparent), 0 0 0 6px color-mix(in srgb, var(--color-accent) 30%, transparent), 0 24px 64px rgba(0,0,0,0.8); }
.prp-atlas-frame img { display: block; width: 100%; height: auto; margin: 0; }
.prp-atlas-caption { background: var(--prp-deeper); border-top: 1px solid color-mix(in srgb, var(--color-accent) 25%, transparent); padding: 12px 18px; display: flex; align-items: center; justify-content: space-between; }
.prp-atlas-caption-left  { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 2.5px; color: rgba(255,255,255,0.55); text-transform: uppercase; }
.prp-atlas-caption-right { font-family: var(--prp-font-body); font-size: 10px; font-weight: 700; letter-spacing: 2px; color: color-mix(in srgb, var(--color-accent) 70%, transparent); text-transform: uppercase; }
.prp-atlas-corner    { position: absolute; width: 15px; height: 15px; pointer-events: none; }
.prp-atlas-corner-tl { top: 0;    left: 0;  border-top: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); border-left: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); }
.prp-atlas-corner-tr { top: 0;    right: 0; border-top: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); border-right: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); }
.prp-atlas-corner-bl { bottom: 0; left: 0;  border-bottom: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); border-left: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); }
.prp-atlas-corner-br { bottom: 0; right: 0; border-bottom: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); border-right: 2px solid color-mix(in srgb, var(--color-accent) 60%, transparent); }

.prp-dex-con-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start; }
.prp-dex-con-col  { display: flex; flex-direction: column; gap: 20px; }

.prp-ticket { background: #fdf8f0; border-radius: 4px; box-shadow: 0 8px 32px rgba(90,60,30,0.2), inset 0 0 0 1px rgba(90,60,30,0.15); transform: rotate(-0.8deg); overflow: hidden; }
.prp-ticket-header { background: var(--color-accent); padding: 20px 24px 28px; position: relative; }
.prp-ticket-header::after { content: ''; position: absolute; bottom: -10px; left: 0; right: 0; height: 20px; background: #fdf8f0; border-radius: 50% 50% 0 0 / 100% 100% 0 0; }
.prp-ticket-event  { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.6); display: block; margin-bottom: 6px; }
.prp-ticket-title  { font-family: var(--prp-font-heading); font-size: 24px; font-weight: 700; color: var(--prp-text-light); line-height: 1.2; display: block; }
.prp-ticket-body   { padding: 28px 24px 16px; }
.prp-ticket-row    { display: flex; justify-content: space-between; align-items: baseline; border-bottom: 1px dashed rgba(90,60,30,0.2); padding: 8px 0; }
.prp-ticket-row:last-of-type { border-bottom: none; }
.prp-ticket-key    { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: rgba(90,60,30,0.4); }
.prp-ticket-val    { font-family: var(--prp-font-heading); font-size: 13px; font-weight: 600; color: #2b1f16; }
.prp-ticket-desc   { font-family: var(--prp-font-serif); font-size: 15px; line-height: 1.75; color: #3d2e22; margin: 16px 0 4px; }
.prp-ticket-tear   { border-top: 2px dashed rgba(90,60,30,0.2); margin: 0 24px; display: flex; align-items: center; justify-content: space-between; padding: 12px 0; }
.prp-ticket-stub   { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: rgba(90,60,30,0.3); }
.prp-ticket-seat   { font-family: var(--prp-font-heading); font-size: 18px; font-weight: 700; color: var(--color-accent); }
.prp-ticket-footer { padding: 0 24px 24px; }

.prp-journal { background: #f0e8d5; border-radius: 4px; box-shadow: 0 8px 32px rgba(90,60,30,0.2), inset 0 0 0 1px rgba(90,60,30,0.15); transform: rotate(0.6deg); padding: 28px 28px 24px; position: relative; }
.prp-journal-header { border-bottom: 2px solid rgba(90,60,30,0.2); padding-bottom: 15px; margin-bottom: 20px; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.prp-journal-tag    { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(90,60,30,0.4); display: block; margin-bottom: 6px; }
.prp-journal-title  { font-family: var(--prp-font-heading); font-size: 24px; font-weight: 700; color: #2b1f16; line-height: 1.2; display: block; }
.prp-journal-seal   { width: 48px; height: 48px; border-radius: 50%; background: var(--color-accent); display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(0,0,0,0.2); flex-shrink: 0; }
.prp-journal-seal span { font-family: var(--prp-font-heading); font-size: 13px; font-weight: 700; color: rgba(255,255,255,0.85); letter-spacing: 1px; }
.prp-journal-lines { margin-bottom: 20px; }
.prp-journal-line  { display: block; border-bottom: 1px solid rgba(90,60,30,0.15); padding: 10px 0 4px; font-family: var(--prp-font-serif); font-size: 15px; color: #3d2e22; line-height: 1.6; }
.prp-journal-line:first-child { padding-top: 0; }
.prp-journal-note  { font-family: var(--prp-font-heading); font-size: 10px; font-style: italic; color: rgba(90,60,30,0.4); display: block; margin-bottom: 20px; border-left: 2px solid color-mix(in srgb, var(--color-accent) 30%, transparent); padding-left: 10px; }

/* STR — Testimonials */
.prp-tgrid { display: flex; gap: 20px; flex-wrap: wrap; margin-bottom: 36px; }
.prp-tcard { flex: 1; min-width: 220px; border-radius: 12px; background: var(--color-primary); box-shadow: 0 4px 24px rgba(0,0,0,0.3); overflow: hidden; position: relative; display: flex; flex-direction: column; }
.prp-tcard-accent-bar { height: 4px; background: var(--color-accent); flex-shrink: 0; }
.prp-tcard-body       { padding: 28px 24px 20px; flex: 1; position: relative; }
.prp-tcard-mark       { position: absolute; top: 16px; left: 16px; font-family: var(--prp-font-heading); font-size: 80px; font-weight: 700; line-height: 1; color: color-mix(in srgb, var(--color-accent) 7%, transparent); pointer-events: none; user-select: none; }
.prp-tcard p          { font-family: var(--prp-font-serif); font-size: 15px; font-style: italic; line-height: 1.85; color: var(--prp-text); margin: 0; position: relative; z-index: 1; }
.prp-tcard-footer     { padding: 16px 24px 24px; display: flex; align-items: center; gap: 12px; }
.prp-tcard-rule       { flex: 1; height: 1px; background: color-mix(in srgb, var(--color-accent) 15%, transparent); }
.prp-tcard cite       { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; color: var(--color-accent); font-style: normal; white-space: nowrap; }

.prp-tcard-dark                       { background: radial-gradient(circle at top, var(--prp-dark) 0%, var(--prp-deeper) 100%); }
.prp-tcard-dark .prp-tcard-accent-bar { background: rgba(255,255,255,0.15); }
.prp-tcard-dark .prp-tcard-mark       { color: rgba(255,255,255,0.05); }
.prp-tcard-dark .prp-tcard-rule       { background: rgba(255,255,255,0.1); }
.prp-tcard-dark p                     { color: rgba(255,255,255,0.88); }
.prp-tcard-dark cite                  { color: rgba(255,255,255,0.5); }

.prp-tcard-red                       { background: radial-gradient(circle at top, var(--color-accent) 0%, var(--prp-dark) 55%); }
.prp-tcard-red .prp-tcard-accent-bar { background: rgba(255,255,255,0.15); }
.prp-tcard-red .prp-tcard-mark       { color: rgba(255,255,255,0.05); }
.prp-tcard-red .prp-tcard-rule       { background: rgba(255,255,255,0.12); }
.prp-tcard-red p                     { color: rgba(255,255,255,0.9); }
.prp-tcard-red cite                  { color: rgba(255,255,255,0.5); }

/* Final CTA */
.prp-cta-ring   { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 50%; border: 1px solid color-mix(in srgb, var(--color-accent) 12%, transparent); pointer-events: none; }
.prp-cta-inner  { position: relative; z-index: 2; max-width: 700px; margin: 0 auto; text-align: center; }

.prp-back-top      { position: absolute; bottom: 24px; right: 5%; display: flex; flex-direction: column; align-items: center; gap: 4px; opacity: 0.35; transition: opacity 0.2s ease; text-decoration: none !important; }
.prp-back-top:hover { opacity: 0.75; }
.prp-back-top-pill { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 3px; color: var(--prp-text-light); background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.3); border-radius: 4px; padding: 4px 10px; display: flex; align-items: center; gap: 6px; }
.prp-back-top-sub  { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.4); }
.prp-back-top-on-light .prp-back-top-pill { color: var(--color-accent); background: color-mix(in srgb, var(--color-accent) 8%, transparent); border-color: color-mix(in srgb, var(--color-accent) 35%, transparent); }
.prp-back-top-on-light .prp-back-top-sub  { color: rgba(90,60,30,0.4); }

@keyframes prp-drop    { 0%, 100% { transform: translateY(0);   opacity: 0.5; } 50% { transform: translateY(8px); opacity: 1; } }
@keyframes prp-slidein { to { opacity: 1; transform: translateX(0); } }


/* ==========================================================================
   15b. CHARACTER SHEET COMPONENTS
   ========================================================================== */

.prp-cs-header        { display: flex; flex-direction: column; gap: 8px; margin-bottom: 16px; padding-bottom: 12px; border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 40%, transparent); }
.prp-cs-publisher-row { display: flex; gap: 24px; flex-wrap: wrap; padding-bottom: 8px; border-bottom: 1px solid rgba(255,255,255,0.08); }
.prp-cs-pub-item      { min-width: 100px; }
.prp-cs-char-row      { display: flex; align-items: flex-end; gap: 20px; flex-wrap: wrap; }
.prp-cs-name-block    { flex: 1; min-width: 180px; }
.prp-cs-label         { display: block; font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.35); margin-bottom: 4px; }
.prp-cs-value         { display: block; font-family: var(--prp-font-heading); font-size: clamp(20px, 2.5vw, 28px); font-weight: 700; color: var(--color-primary); line-height: 1; }
.prp-cs-meta          { display: flex; gap: 24px; flex-wrap: wrap; }
.prp-cs-meta-item     { text-align: center; }
.prp-cs-value-sm      { display: block; font-family: var(--prp-font-heading); font-size: 15px; font-weight: 600; color: rgba(255,255,255,0.8); line-height: 1; }

.prp-ability-bar   { background-color: var(--prp-deeper); border-top: 2px solid var(--color-accent); border-bottom: 2px solid var(--color-accent); padding: 24px 0; }
.prp-ability-inner { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.prp-ability-score { flex: 1; min-width: 80px; text-align: center; padding: 12px 8px; border: 1px solid color-mix(in srgb, var(--color-accent) 25%, transparent); border-radius: 8px; background: color-mix(in srgb, var(--color-accent) 5%, transparent); transition: all 0.25s ease; text-decoration: none; display: block; }
.prp-ability-score:hover { background: color-mix(in srgb, var(--color-accent) 15%, transparent); border-color: color-mix(in srgb, var(--color-accent) 50%, transparent); transform: translateY(-2px); }
.prp-ability-featured   { background: color-mix(in srgb, var(--color-accent) 15%, transparent); border-color: color-mix(in srgb, var(--color-accent) 50%, transparent); }
.prp-ability-name  { display: block; font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 2px; color: var(--color-accent); margin-bottom: 4px; }
.prp-ability-num   { display: block; font-family: var(--prp-font-heading); font-size: 32px; font-weight: 900; color: var(--color-primary); line-height: 1; }
.prp-ability-mod   { display: block; font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: color-mix(in srgb, var(--color-accent) 80%, transparent); margin: 2px 0 6px; }
.prp-ability-label { display: block; font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.35); }

.prp-stat-block-label { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: var(--prp-space-lg); }
.prp-stat-block-abbr  { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 900; letter-spacing: 3px; color: var(--color-accent); background: color-mix(in srgb, var(--color-accent) 12%, transparent); border: 1px solid color-mix(in srgb, var(--color-accent) 35%, transparent); border-radius: 4px; padding: 4px 10px; }
.prp-stat-block-name  { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: var(--color-accent); flex: 1; border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 35%, transparent); padding-bottom: 4px; }
.prp-stat-block-score { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 900; color: var(--color-accent); background: color-mix(in srgb, var(--color-accent) 12%, transparent); border: 1px solid color-mix(in srgb, var(--color-accent) 35%, transparent); border-radius: 4px; padding: 4px 10px; }
.prp-stat-block-label-on-dark .prp-stat-block-abbr,
.prp-stat-block-label-on-dark .prp-stat-block-score { color: var(--color-primary); background: var(--prp-deeper); border-color: var(--prp-dark); }
.prp-stat-block-label-on-dark .prp-stat-block-name  { color: var(--color-primary); border-bottom-color: rgba(255,255,255,0.15); }
.prp-stat-block-label-on-accent .prp-stat-block-abbr,
.prp-stat-block-label-on-accent .prp-stat-block-score { color: var(--prp-text-light); background: var(--prp-deeper); border-color: rgba(255,255,255,0.5); }
.prp-stat-block-label-on-accent .prp-stat-block-name  { color: rgba(255,255,255,0.75); border-bottom-color: rgba(255,255,255,0.3); }

.prp-cs-empty       { border: 1px solid color-mix(in srgb, var(--color-accent) 30%, transparent); border-radius: 8px; padding: 20px 28px; background: color-mix(in srgb, var(--color-accent) 6%, transparent); max-width: 600px; margin: 0 auto; }
.prp-cs-empty-row   { display: flex; gap: 24px; flex-wrap: wrap; justify-content: center; }
.prp-cs-empty-field { text-align: left; }
.prp-cs-empty-label { display: block; font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.3); margin-bottom: 6px; }
.prp-cs-empty-blank { display: block; font-family: var(--prp-font-heading); font-size: 18px; font-weight: 600; color: rgba(255,255,255,0.2); letter-spacing: 3px; border-bottom: 1px solid rgba(255,255,255,0.15); padding-bottom: 4px; min-width: 140px; }


/* ==========================================================================
   15c. CTA SECTION
   ========================================================================== */

.prp-cta        { text-align: center; padding: var(--prp-space-2xl) var(--prp-space-xl); }
.prp-cta h1,
.prp-cta h2     { color: var(--prp-text-light); margin-bottom: var(--prp-space-sm); }
.prp-cta p      { color: rgba(255,255,255,0.85); font-size: 16px; max-width: 700px; margin: 0 auto var(--prp-space-lg); }
.prp-cta small  { color: rgba(255,255,255,0.7); }
.prp-cta-body   { font-size: 16px; line-height: 1.85; color: rgba(255,255,255,0.65); max-width: 540px; margin: 0 auto var(--prp-space-xl); }
.prp-cta-actions { display: flex; flex-wrap: wrap; gap: var(--prp-space-sm); justify-content: center; margin-top: var(--prp-space-md); }


/* ==========================================================================
   15d. MEET THE PARTY PAGE
   Hero uses the shared prp-hero-banner / prp-hero-h1 / prp-hero-sub system.
   No page-specific hero text classes needed.
   ========================================================================== */

/* Two-column member layout */
.prp-party-member     { display: flex; align-items: flex-start; gap: 60px; flex-wrap: wrap; }
.prp-party-member-alt { flex-direction: row-reverse; }

/* Section dividers */
.prp-party-divider       { height: 4px; background: var(--color-accent); border: none; margin: 0; }
.prp-party-divider-light { height: 1px; background: var(--prp-border); border: none; margin: 0; }

/* Member photo column */
.prp-party-img        { flex: 1; min-width: 260px; }
.prp-party-frame      { border-radius: var(--prp-radius-md); overflow: hidden; box-shadow: var(--prp-shadow-xl); }
.prp-party-frame img  { display: block; width: 100%; height: auto; margin: 0; }
.prp-party-caption    { background: var(--color-accent); padding: 10px 20px; display: flex; align-items: center; justify-content: space-between; }
.prp-party-caption-name { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 2px; color: rgba(255,255,255,0.8); text-transform: uppercase; }
.prp-party-caption-role { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; color: rgba(255,255,255,0.5); text-transform: uppercase; }

/* Member content column */
.prp-party-content { flex: 1.2; min-width: 280px; }
.prp-party-tag     { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--color-accent); background: color-mix(in srgb, var(--color-accent) 8%, transparent); border: 1px solid color-mix(in srgb, var(--color-accent) 20%, transparent); border-radius: 4px; padding: 4px 12px; display: inline-block; margin-bottom: 16px; }
.prp-party-name    { font-family: var(--prp-font-heading); font-size: clamp(24px, 3vw, 36px); font-weight: 700; color: var(--prp-text); margin: 0 0 4px; line-height: 1.1; }
.prp-party-class   { font-family: var(--prp-font-heading); font-size: 15px; font-style: italic; color: var(--color-accent); display: block; margin: 0 0 20px; }
.prp-party-trait   { font-family: var(--prp-font-serif); font-size: 15px; font-style: italic; color: var(--prp-text-muted); border-left: 3px solid color-mix(in srgb, var(--color-accent) 35%, transparent); padding-left: 15px; margin: 0 0 20px; line-height: 1.7; }
.prp-party-bio     { font-family: var(--prp-font-body); font-size: 15px; color: var(--prp-text); line-height: 1.85; margin: 0 0 24px; }

/* Colour overrides for red and dark section backgrounds */
.prp-section-red  .prp-party-name,
.prp-section-dark .prp-party-name  { color: var(--prp-text-light); }
.prp-section-red  .prp-party-class,
.prp-section-dark .prp-party-class { color: rgba(255,255,255,0.6); }
.prp-section-red  .prp-party-trait,
.prp-section-dark .prp-party-trait { color: rgba(255,255,255,0.6); border-left-color: rgba(255,255,255,0.25); }
.prp-section-red  .prp-party-bio,
.prp-section-dark .prp-party-bio   { color: rgba(255,255,255,0.55); }
.prp-section-red  .prp-party-tag,
.prp-section-dark .prp-party-tag   { color: rgba(255,255,255,0.75); background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.25); }


/* ==========================================================================
   15e. CAMPAIGN BOARD PAGE
   ========================================================================== */

.prp-cb-section-heading        { font-family: var(--prp-font-heading); font-size: clamp(26px, 3vw, 40px); font-weight: 700; color: var(--prp-text); margin: 0 0 12px; }
.prp-cb-section-heading-center { text-align: center; }
.prp-cb-section-sub            { font-size: 16px; color: var(--prp-text-muted); line-height: 1.85; margin: 0 auto var(--prp-space-xl); max-width: 680px; }
.prp-cb-fundraiser .prp-section-eyebrow    { color: var(--color-primary); opacity: 0.6; }
.prp-cb-fundraiser .prp-cb-section-heading { color: var(--color-primary); }
.prp-cb-fundraiser .prp-cb-section-sub     { text-align: center; }
.prp-section-dark .prp-cb-section-heading  { color: var(--prp-text-light); }

.prp-notice-board { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 20px 8px 28px; }
.prp-notice       { position: relative; background: #e8d5a3; border-radius: 3px; box-shadow: 4px 6px 20px rgba(0,0,0,0.6), inset 0 0 0 1px rgba(43,31,22,0.2); display: flex; flex-direction: column; }
.prp-notice:nth-child(1) { transform: rotate(-1.8deg); }
.prp-notice:nth-child(2) { transform: rotate(1.2deg) translateY(-6px); }
.prp-notice:nth-child(3) { transform: rotate(-0.8deg) translateY(4px); }
.prp-notice:nth-child(4) { transform: rotate(1.5deg); }
.prp-notice-pin   { position: absolute; top: -10px; left: 50%; transform: translateX(-50%); width: 16px; height: 16px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, var(--color-accent), var(--prp-dark)); box-shadow: 0 2px 6px rgba(0,0,0,0.5); z-index: 2; }
.prp-notice-pin::after { content: ''; position: absolute; top: 14px; left: 50%; transform: translateX(-50%); width: 2px; height: 8px; background: rgba(43,31,22,0.3); }
.prp-notice-tear  { height: 12px; background: #d4bf8a; clip-path: polygon(0% 100%, 3% 20%, 7% 80%, 12% 10%, 17% 70%, 22% 15%, 28% 85%, 33% 20%, 38% 75%, 44% 5%, 50% 70%, 56% 15%, 62% 80%, 67% 10%, 73% 75%, 78% 20%, 83% 85%, 88% 15%, 93% 70%, 97% 25%, 100% 90%, 100% 100%); }
.prp-notice-body  { padding: 16px 18px 20px; flex: 1; display: flex; flex-direction: column; }
.prp-notice-num   { font-family: var(--prp-font-heading); font-size: 52px; font-weight: 900; color: var(--color-accent); line-height: 1; display: block; text-align: center; margin-bottom: 4px; }
.prp-notice-ornate-rule    { display: flex; align-items: center; gap: 6px; margin: 6px 0 12px; }
.prp-notice-ornate-line    { flex: 1; height: 1px; background: rgba(43,31,22,0.25); }
.prp-notice-ornate-diamond { width: 5px; height: 5px; background: var(--color-accent); transform: rotate(45deg); flex-shrink: 0; opacity: 0.6; }
.prp-notice h3    { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; margin: 0 0 8px; text-align: center; }
.prp-notice p     { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.75; text-align: center; margin: 0; }
.prp-notice-footer { margin-top: 15px; padding-top: 10px; border-top: 1px dashed rgba(43,31,22,0.2); text-align: center; }
.prp-notice-tag    { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(43,31,22,0.3); }

.prp-cb-pillars .prp-cb-section-sub { margin: 0 auto var(--prp-space-xl); text-align: center; }
.prp-cb-pillars .prp-card-service   { background: transparent; padding: 0; box-shadow: 0 8px 32px rgba(0,0,0,0.15); overflow: hidden; display: flex; flex-direction: column; align-items: stretch; text-align: center; }
.prp-cb-pillars .prp-card-service .prp-cb-card-top { padding: 28px 24px 24px; display: flex; flex-direction: column; align-items: center; position: relative; overflow: hidden; background: radial-gradient(circle at top, var(--prp-dark) 0%, var(--prp-deeper) 100%); }
.prp-cb-pillars .prp-card-service-active .prp-cb-card-top { background: radial-gradient(circle at top, var(--color-accent) 0%, var(--prp-dark) 55%); }
.prp-cb-card-ghost { position: absolute; top: -10px; right: 8px; font-family: var(--prp-font-heading); font-size: 96px; font-weight: 900; line-height: 1; color: rgba(255,255,255,0.03); user-select: none; pointer-events: none; }
.prp-cb-pillars .prp-service-icon { margin: 0 auto 16px; position: relative; z-index: 1; background: rgba(245,237,224,0.18); border: 2px solid rgba(245,237,224,0.35); box-shadow: none; }
.prp-cb-pillars .prp-card-service-active .prp-service-icon { background: var(--color-primary); border: none; box-shadow: 0 6px 20px rgba(0,0,0,0.3); }
.prp-cb-pillars .prp-cb-card-rule { width: 36px; height: 2px; background: rgba(245,237,224,0.25); margin: 0 auto 15px; position: relative; z-index: 1; }
.prp-cb-pillars .prp-card-service-active .prp-cb-card-rule { background: var(--color-primary); }
.prp-cb-pillars .prp-card-service h3 { font-size: 18px; font-weight: 700; color: rgba(245,237,224,0.85); position: relative; z-index: 1; margin: 0; line-height: 1.2; }
.prp-cb-pillars .prp-card-service-active h3 { color: var(--prp-text-light); }
.prp-cb-pillars .prp-card-service .prp-cb-card-body { padding: 20px 22px 26px; flex: 1; background: var(--prp-surface-alt); }
.prp-cb-pillars .prp-card-service-active .prp-cb-card-body { background: #e8dcc8; }
.prp-cb-pillars .prp-card-service p { font-size: 15px; line-height: 1.8; font-weight: 400; text-align: center; color: #5a5a5a; margin: 0; }
.prp-cb-pillars .prp-card-service-active p { color: #3d2e22; font-family: var(--prp-font-serif); }

.prp-cb-campaigns-title { font-family: var(--prp-font-heading); font-size: clamp(26px, 3vw, 40px); font-weight: 700; color: var(--prp-text); text-align: center; margin: 0 0 8px; }
.prp-cb-campaigns-sub   { font-size: 15px; color: var(--prp-text-muted); text-align: center; margin: 0 0 48px; line-height: 1.7; }

.prp-cb-grid    { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.prp-cb-card    { background: var(--prp-surface); border-radius: 12px; overflow: hidden; box-shadow: var(--prp-shadow-xl); display: flex; flex-direction: column; transition: var(--prp-transition); height: 100%; }
.prp-cb-card:hover { transform: translateY(-4px); box-shadow: 0 16px 48px rgba(0,0,0,0.2); }
.prp-cb-card-open  { box-shadow: 0 0 0 2px var(--color-accent), 0 8px 32px color-mix(in srgb, var(--color-accent) 30%, transparent); }
.prp-cb-card-poster { position: relative; flex-shrink: 0; }
.prp-cb-card-img    { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.prp-cb-card-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.3) 60%, transparent 100%); display: flex; flex-direction: column; justify-content: flex-end; padding: 16px; }
.prp-cb-card-code-pill { position: absolute; top: 12px; left: 12px; background: var(--color-accent); font-family: var(--prp-font-heading); font-size: 10px; font-weight: 900; letter-spacing: 2px; color: var(--prp-text-light); padding: 4px 12px; border-radius: 3px; z-index: 2; }
.prp-cb-open-badge     { position: absolute; top: 12px; right: 12px; background: var(--color-accent); font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: var(--prp-text-light); padding: 4px 10px; border-radius: 3px; z-index: 2; }
.prp-cb-card-system { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.45); display: block; margin-bottom: 4px; }
.prp-cb-card-title  { font-family: var(--prp-font-heading); font-size: 18px; font-weight: 700; color: var(--prp-text-light); line-height: 1.2; margin: 0; }
.prp-cb-card-body   { padding: 18px 18px 16px; flex: 1; display: flex; flex-direction: column; position: relative; overflow: hidden; }
.prp-cb-card-watermark { position: absolute; bottom: -8px; right: 4px; font-family: var(--prp-font-heading); font-size: 72px; font-weight: 900; color: color-mix(in srgb, var(--color-accent) 6%, transparent); line-height: 1; user-select: none; pointer-events: none; }
.prp-cb-card-body .prp-cb-card-rule { width: 28px; height: 2px; background: var(--color-accent); margin-bottom: 12px; flex-shrink: 0; }
.prp-cb-card-excerpt { font-family: var(--prp-font-serif); font-size: 13px; line-height: 1.8; color: var(--prp-text-muted); flex: 1; margin-bottom: 15px; position: relative; z-index: 1; }
.prp-cb-card-footer { display: flex; align-items: center; justify-content: space-between; min-height: 22px; padding-top: 15px; border-top: 1px solid var(--prp-border); flex-wrap: wrap; gap: 8px; position: relative; z-index: 1; }
.prp-cb-card-status      { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: var(--prp-text-muted); }
.prp-cb-card-status-open { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: var(--color-accent); }


/* ==========================================================================
   15f. GM FOR HIRE PAGE
   ========================================================================== */

.prp-gm-s2-layout    { display: grid; grid-template-columns: 1.2fr 1fr; gap: 64px; align-items: center; }
.prp-gm-photo-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; margin-bottom: 56px; }
.prp-gm-photo        { aspect-ratio: 3/4; border-radius: var(--prp-radius-md); overflow: hidden; box-shadow: var(--prp-shadow-xl); }
.prp-gm-photo img    { display: block; width: 100%; height: 100%; object-fit: cover; margin: 0; }
.prp-gm-body         { font-family: var(--prp-font-body); font-size: 16px; line-height: 1.85; color: var(--prp-text-muted); margin: 0 0 var(--prp-space-md); }
.prp-section-red  .prp-gm-body { color: rgba(255,255,255,0.55); }
.prp-section-dark .prp-gm-body { color: rgba(255,255,255,0.55); }

.prp-manifesto { border-top: 1px solid rgba(255,255,255,0.08); }
.prp-section-light .prp-manifesto { border-top-color: rgba(0,0,0,0.1); }
.prp-manifesto-row { display: grid; grid-template-columns: 2fr 3fr; gap: 32px; padding: 22px 0; border-bottom: 1px solid rgba(255,255,255,0.08); align-items: baseline; }
.prp-manifesto-row:last-child { border-bottom: none; }
.prp-section-light .prp-manifesto-row { border-bottom-color: rgba(0,0,0,0.08); }
.prp-m-claim   { font-family: var(--prp-font-heading); font-size: 18px; font-weight: 700; color: var(--prp-text-light); line-height: 1.4; }
.prp-m-support { font-family: var(--prp-font-body); font-size: 15px; color: rgba(255,255,255,0.45); line-height: 1.75; }
.prp-section-light .prp-m-claim   { color: var(--prp-text); }
.prp-section-light .prp-m-support { color: var(--prp-text-muted); }

.prp-gm-checklist    { list-style: none; padding: 0; margin: var(--prp-space-lg) 0 var(--prp-space-xl); }
.prp-gm-checklist li { font-family: var(--prp-font-body); font-size: 15px; color: rgba(245,237,224,0.65); padding: 11px 0; border-bottom: 1px solid rgba(245,237,224,0.07); display: flex; align-items: flex-start; gap: 12px; line-height: 1.6; }
.prp-gm-checklist li:last-child { border-bottom: none; }
.prp-gm-checklist li::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--color-accent); flex-shrink: 0; margin-top: 7px; }
.prp-gm-checklist-title { display: block; font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: var(--prp-text-light); margin-bottom: 4px; }

.prp-where-card        { background: color-mix(in srgb, var(--color-accent) 6%, transparent); border: 1px solid color-mix(in srgb, var(--color-accent) 18%, transparent); border-radius: var(--prp-radius-md); padding: 20px 22px; margin-bottom: 12px; }
.prp-where-label       { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: color-mix(in srgb, var(--color-accent) 60%, transparent); display: block; margin-bottom: 6px; }
.prp-where-title       { font-family: var(--prp-font-heading); font-size: 16px; font-weight: 700; color: var(--prp-text-light); display: block; margin-bottom: 6px; }
.prp-where-body        { font-family: var(--prp-font-body); font-size: 15px; color: rgba(245,237,224,0.4); line-height: 1.65; margin: 0; }
.prp-section-red .prp-where-card  { background: color-mix(in srgb, var(--prp-deeper) 70%, transparent); border-color: rgba(255,255,255,0.12); margin-bottom: 16px; }
.prp-section-red .prp-where-label { color: rgba(255,255,255,0.4); }
.prp-section-red .prp-where-title { color: var(--prp-text-light); }
.prp-section-red .prp-where-body  { color: rgba(255,255,255,0.5); }
.prp-where-card-online { border-left: 2px solid rgba(255,255,255,0.35); }
.prp-where-cities-list { list-style: none; padding: 0; columns: 2; column-gap: var(--prp-space-md); margin-top: var(--prp-space-sm); }
.prp-where-cities-list li { font-family: var(--prp-font-body); font-size: 13px; color: rgba(255,255,255,0.55); padding: 3px 0; display: flex; align-items: center; gap: 8px; line-height: 1.4; break-inside: avoid; }
.prp-where-cities-list li::before { content: ''; width: 4px; height: 4px; border-radius: 50%; background: rgba(255,255,255,0.4); flex-shrink: 0; }

.prp-gm-price-grid   { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; background: var(--prp-border); border-radius: var(--prp-radius-md); overflow: hidden; margin-top: var(--prp-space-xl); margin-bottom: var(--prp-space-xl); }
.prp-gm-price-panel  { background: var(--prp-surface); padding: 36px 32px; display: flex; flex-direction: column; }
.prp-gm-price-panel .prp-btn-group { margin-top: auto; padding-top: var(--prp-space-lg); }
.prp-gm-price-type   { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--color-accent); display: block; margin-bottom: 10px; }
.prp-gm-price-name   { font-family: var(--prp-font-heading); font-size: 24px; font-weight: 700; color: var(--prp-text); line-height: 1.2; margin: 0 0 8px; }
.prp-gm-price-desc   { font-family: var(--prp-font-body); font-size: 15px; color: var(--prp-text-muted); line-height: 1.65; margin: 0 0 var(--prp-space-lg); }
.prp-gm-price-amount { font-family: var(--prp-font-heading); font-size: 48px; font-weight: 900; color: var(--prp-text); line-height: 1; }
.prp-gm-price-amount sup { font-size: 24px; vertical-align: super; }
.prp-gm-price-note   { font-family: var(--prp-font-body); font-size: 13px; color: var(--prp-text-muted); margin: 4px 0 var(--prp-space-lg); }
.prp-gm-price-divider { height: 1px; background: var(--prp-border); margin-bottom: var(--prp-space-md); }
.prp-gm-price-row    { display: flex; justify-content: space-between; align-items: baseline; padding: 7px 0; border-bottom: 1px solid var(--prp-border); font-family: var(--prp-font-body); font-size: 13px; }
.prp-gm-price-row:last-of-type { border-bottom: none; }
.prp-gm-price-key    { color: var(--prp-text-muted); }
.prp-gm-price-val    { font-weight: 700; color: var(--prp-text); }

.prp-gm-voices-intro { font-family: var(--prp-font-body); font-size: 15px; color: rgba(255,255,255,0.55); line-height: 1.85; max-width: 560px; margin: 0 auto var(--prp-space-xl); }
.prp-gm-top-review   { padding: var(--prp-space-xl) var(--prp-space-xl) var(--prp-space-xl) var(--prp-space-lg); border-left: 3px solid var(--color-accent); background: color-mix(in srgb, var(--color-accent) 8%, transparent); border-radius: 0 var(--prp-radius-sm) var(--prp-radius-sm) 0; text-align: left; max-width: 680px; margin: 0 auto; position: relative; z-index: 1; }
.prp-gm-top-review-label  { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.25); display: block; margin-bottom: 10px; }
.prp-gm-top-review-title  { font-family: var(--prp-font-body); font-size: clamp(16px, 2vw, 22px); font-weight: 700; color: var(--color-accent); text-decoration: none; display: block; margin-bottom: 8px; transition: var(--prp-transition); }
.prp-gm-top-review-title:hover { color: var(--prp-text-light); text-shadow: 0 0 24px color-mix(in srgb, var(--color-accent) 70%, transparent); }
.prp-gm-top-review-author { font-family: var(--prp-font-body); font-size: 13px; color: rgba(255,255,255,0.35); margin: 0; }

.prp-dm-screen      { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: color-mix(in srgb, var(--color-accent) 20%, transparent); border: 1px solid color-mix(in srgb, var(--color-accent) 25%, transparent); border-radius: var(--prp-radius-sm); overflow: hidden; margin-bottom: var(--prp-space-xl); position: relative; z-index: 1; }
.prp-dm-panel       { background: var(--prp-deeper); padding: var(--prp-space-lg) var(--prp-space-lg) var(--prp-space-xl); border-top: 2px solid var(--color-accent); }
.prp-dm-panel-label { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: color-mix(in srgb, var(--color-accent) 70%, transparent); display: block; margin-bottom: 10px; }
.prp-dm-panel-title { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: var(--prp-text-light); display: block; margin-bottom: 10px; line-height: 1.3; }
.prp-dm-panel-body  { font-family: var(--prp-font-body); font-size: 15px; color: rgba(245,237,224,0.5); line-height: 1.75; margin: 0; }

/* d20 encounter table — NOTE: Intentional non-brand hex colours for parchment aesthetic. */
.prp-d20-wrap  { background: #f5ede0; border-radius: var(--prp-radius-sm); overflow: hidden; box-shadow: 0 16px 48px rgba(0,0,0,0.55), inset 0 0 0 1px rgba(90,60,30,0.2); margin-bottom: 28px; position: relative; z-index: 1; }
.prp-d20-table { width: 100%; border-collapse: collapse; }
.prp-d20-table thead tr { border-bottom: none; }
.prp-d20-table th { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.9); padding: 12px 16px; text-align: left; background: var(--color-accent) !important; }
.prp-d20-table th:first-child { width: 72px; text-align: center; }
.prp-d20-table td { padding: 16px; border-bottom: 1px solid rgba(90,60,30,0.12) !important; font-family: var(--prp-font-body); font-size: 15px; vertical-align: top; color: #3d2e22; line-height: 1.75; background: transparent !important; }
.prp-d20-table tr:nth-child(even) td { background: rgba(90,60,30,0.05) !important; }
.prp-d20-table td:first-child { text-align: center; font-family: var(--prp-font-heading); font-size: 24px; font-weight: 900; color: var(--color-accent); }
.prp-d20-result { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 4px; }
.prp-d20-table--chronicle td:first-child { font-family: var(--prp-font-body); font-size: 13px; font-weight: 700; color: var(--color-accent); text-align: left; white-space: nowrap; }
.prp-d20-footer { text-align: center; font-family: var(--prp-font-heading); font-size: 13px; font-style: italic; color: rgba(90,60,30,0.5); background: #ede0c4; border-top: 1px solid rgba(90,60,30,0.2); padding: 18px 16px; }

/* Chronicle timeline */
.prp-chronicle { border-top: 1px solid color-mix(in srgb, var(--color-accent) 20%, transparent); }
.prp-chronicle-entry { display: flex; gap: 24px; padding: 20px 0; border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 12%, transparent); }
.prp-chronicle-entry:last-child { border-bottom: none; }
.prp-chronicle-date { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; width: 96px; }
.prp-chronicle-date-label { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; color: var(--color-accent); letter-spacing: 1px; text-transform: uppercase; text-align: center; line-height: 1.5; }
.prp-chronicle-line  { width: 1px; flex: 1; background: color-mix(in srgb, var(--color-accent) 25%, transparent); margin-top: 8px; }
.prp-chronicle-body  { flex: 1; }
.prp-chronicle-title { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: var(--prp-text); display: block; margin-bottom: 8px; line-height: 1.3; }
.prp-chronicle-text  { font-family: var(--prp-font-serif); font-size: 15px; color: var(--prp-text-muted); line-height: 1.8; margin: 0; }
.prp-chronicle-footer { font-family: var(--prp-font-heading); font-size: 10px; font-style: italic; color: var(--prp-text-muted); text-align: center; padding: 16px 0 0; border-top: 1px solid color-mix(in srgb, var(--color-accent) 15%, transparent); margin-top: 8px; }


/* ==========================================================================
   15g. SHARED PARCHMENT COMPONENTS
   Replaces duplicate prp-mh-scroll/prp-mc-scroll, prp-mh-pillars/prp-mc-values,
   and prp-mh-skills-grid/prp-mc-types. Old classes kept below (sections 15i/15j)
   until those pages are updated.
   NOTE: Intentional non-brand hex colours for parchment aesthetic.
   ========================================================================== */

.prp-parchment-scroll        { background: #f5ede0; border-radius: 4px; padding: 24px 26px; box-shadow: 0 8px 28px rgba(0,0,0,0.15), inset 0 0 0 1px rgba(90,60,30,0.18); }
.prp-parchment-scroll-rule   { width: 40px; height: 2px; background: var(--color-accent); border-radius: 1px; margin-bottom: 15px; opacity: 0.7; }
.prp-parchment-scroll-label  { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(90,60,30,0.45); display: block; margin-bottom: 10px; }
.prp-parchment-scroll-title  { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 12px; line-height: 1.3; }
.prp-parchment-scroll-body   { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.8; margin: 0 0 10px; }
.prp-parchment-scroll-body:last-of-type { margin-bottom: 0; }
.prp-parchment-scroll-footer { margin-top: 15px; padding-top: 12px; border-top: 1px solid rgba(90,60,30,0.15); font-family: var(--prp-font-heading); font-size: 10px; font-style: italic; color: rgba(90,60,30,0.4); }

.prp-pillar-grid  { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--prp-space-md); margin-top: var(--prp-space-xl); }
.prp-pillar       { border-left: 3px solid var(--color-accent); padding: 15px 16px; background: color-mix(in srgb, var(--color-accent) 3%, transparent); }
.prp-pillar-label { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--color-accent); display: block; margin-bottom: 6px; }
.prp-pillar-title { font-family: var(--prp-font-heading); font-size: 18px; font-weight: 700; color: var(--prp-text); display: block; margin-bottom: 8px; line-height: 1.3; }
.prp-pillar-body  { font-family: var(--prp-font-body); font-size: 15px; color: var(--prp-text-muted); line-height: 1.75; margin: 0; }

.prp-parchment-grid      { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-top: 28px; }
.prp-parchment-cell      { background: #f5ede0; border-radius: 4px; padding: 16px 16px 18px; box-shadow: 3px 4px 16px rgba(0,0,0,0.5), inset 0 0 0 1px rgba(90,60,30,0.15); display: flex; flex-direction: column; }
.prp-parchment-cell-name { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 6px; line-height: 1.3; }
.prp-parchment-cell-desc { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.7; margin: 0; flex: 1; }


/* ==========================================================================
   15h. FOREVER DM PAGE
   NOTE: Intentional non-brand hex colours for parchment aesthetic.
   ========================================================================== */

.prp-dm-triptych { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0; margin-top: 28px; box-shadow: 0 12px 36px rgba(0,0,0,0.18); border-radius: 4px; overflow: hidden; }
.prp-dm-fold     { background: #f5ede0; position: relative; }
.prp-dm-fold + .prp-dm-fold::before { content: ''; position: absolute; top: 0; left: -4px; width: 8px; height: 100%; background: linear-gradient(to right, rgba(43,31,22,0.28), rgba(43,31,22,0.06) 40%, rgba(43,31,22,0.06) 60%, rgba(43,31,22,0.22)); z-index: 2; pointer-events: none; }
.prp-dm-fold-header       { background: var(--color-accent); padding: 10px 16px; display: flex; align-items: center; justify-content: space-between; }
.prp-dm-fold-header-title { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(255,255,255,0.85); }
.prp-dm-fold-header-num   { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; color: rgba(255,255,255,0.35); letter-spacing: 2px; }
.prp-dm-fold-body  { padding: 20px 18px 26px; }
.prp-dm-fold-rule  { width: 32px; height: 2px; background: var(--color-accent); border-radius: 1px; margin-bottom: 12px; opacity: 0.6; }
.prp-dm-fold-title { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 8px; line-height: 1.3; }
.prp-dm-fold-body p { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.75; margin: 0; }

.prp-library-shelf { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 10px; margin-top: 28px; padding-bottom: 4px; }
.prp-library-shelf::after { content: ''; display: block; height: 10px; background: linear-gradient(to bottom, rgba(43,31,22,0.35), rgba(43,31,22,0.08)); border-radius: 0 0 4px 4px; margin-top: 2px; box-shadow: 0 6px 16px rgba(0,0,0,0.5); }
.prp-book        { display: flex; background: #f5ede0; border-radius: 3px; overflow: hidden; box-shadow: 3px 4px 16px rgba(0,0,0,0.5), inset 0 0 0 1px rgba(90,60,30,0.15); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.prp-book:hover  { transform: translateY(-3px); box-shadow: 3px 8px 24px rgba(0,0,0,0.6), inset 0 0 0 1px rgba(90,60,30,0.15); }
.prp-book-spine  { width: 44px; flex-shrink: 0; background: var(--color-accent); display: flex; align-items: center; justify-content: center; padding: 15px 0; position: relative; }
.prp-book-spine::after { content: ''; position: absolute; right: 0; top: 0; bottom: 0; width: 4px; background: rgba(0,0,0,0.2); }
.prp-book-spine-label { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.75); writing-mode: vertical-rl; text-orientation: mixed; transform: rotate(180deg); }
.prp-book-content { padding: 16px 20px 10px; flex: 1; }
.prp-book-tag     { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(90,60,30,0.45); display: block; margin-bottom: 6px; }
.prp-book-title   { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 7px; line-height: 1.3; }
.prp-book-desc    { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.75; margin: 0; }
.prp-book-footer  { display: flex; align-items: flex-end; justify-content: flex-end; padding: 0 20px 15px; flex-shrink: 0; }
.prp-book-chapter { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; color: rgba(90,60,30,0.3); letter-spacing: 1px; }


/* ==========================================================================
   15i. MENTAL HEALTH PAGE
   DEPRECATED — replace with prp-parchment-scroll, prp-pillar-grid,
   prp-parchment-grid (Section 15g) when this page is updated.
   ========================================================================== */

.prp-mh-caveat       { font-family: var(--prp-font-serif); font-size: 15px; font-style: italic; color: rgba(255,255,255,0.3); border-left: 2px solid rgba(179,27,27,0.4); padding-left: 15px; margin: 0; line-height: 1.75; max-width: 460px; }
.prp-mh-scroll       { background: #f5ede0; border-radius: 4px; padding: 24px 26px; box-shadow: 0 8px 28px rgba(0,0,0,0.15), inset 0 0 0 1px rgba(90,60,30,0.18); }
.prp-mh-scroll-rule  { width: 40px; height: 2px; background: var(--color-accent); border-radius: 1px; margin-bottom: 15px; opacity: 0.7; }
.prp-mh-scroll-label { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(90,60,30,0.45); display: block; margin-bottom: 10px; }
.prp-mh-scroll-title { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 12px; line-height: 1.3; }
.prp-mh-scroll-body  { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.8; margin: 0 0 10px; }
.prp-mh-scroll-body:last-of-type { margin-bottom: 0; }
.prp-mh-scroll-footer { margin-top: 15px; padding-top: 12px; border-top: 1px solid rgba(90,60,30,0.15); font-family: var(--prp-font-heading); font-size: 10px; font-style: italic; color: rgba(90,60,30,0.4); }
.prp-mh-pillars      { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--prp-space-md); margin-top: var(--prp-space-xl); }
.prp-mh-pillar       { border-left: 3px solid var(--color-accent); padding: 15px 16px; background: color-mix(in srgb, var(--color-accent) 3%, transparent); }
.prp-mh-pillar-label { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--color-accent); display: block; margin-bottom: 6px; }
.prp-mh-pillar-title { font-family: var(--prp-font-heading); font-size: 18px; font-weight: 700; color: var(--prp-text); display: block; margin-bottom: 8px; line-height: 1.3; }
.prp-mh-pillar-body  { font-family: var(--prp-font-body); font-size: 15px; color: var(--prp-text-muted); line-height: 1.75; margin: 0; }
.prp-mh-skills-grid  { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-top: 28px; }
.prp-mh-skill        { background: #f5ede0; border-radius: 4px; padding: 16px 16px 18px; box-shadow: 3px 4px 16px rgba(0,0,0,0.5), inset 0 0 0 1px rgba(90,60,30,0.15); display: flex; flex-direction: column; }
.prp-mh-skill-context { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: rgba(90,60,30,0.4); display: block; margin-bottom: 6px; }
.prp-mh-skill-name    { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 6px; line-height: 1.3; }
.prp-mh-skill-desc    { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.7; margin: 0; flex: 1; }
.prp-mh-skill-bridge  { display: flex; align-items: center; gap: 6px; margin-top: 10px; padding-top: 8px; border-top: 1px dashed rgba(90,60,30,0.2); }
.prp-mh-skill-arrow   { font-family: var(--prp-font-body); font-size: 13px; font-weight: 700; color: var(--color-accent); }
.prp-mh-skill-real    { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; color: var(--color-accent); letter-spacing: 0.5px; }


/* ==========================================================================
   15j. MEMBER CONTENT PAGE
   DEPRECATED — replace with prp-parchment-scroll, prp-pillar-grid,
   prp-parchment-grid (Section 15g) when this page is updated.
   ========================================================================== */

.prp-mc-scroll        { background: #f5ede0; border-radius: 4px; padding: 24px 26px; box-shadow: 0 8px 28px rgba(0,0,0,0.15), inset 0 0 0 1px rgba(90,60,30,0.18); }
.prp-mc-scroll-rule   { width: 40px; height: 2px; background: var(--color-accent); border-radius: 1px; margin-bottom: 15px; opacity: 0.7; }
.prp-mc-scroll-label  { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(90,60,30,0.45); display: block; margin-bottom: 10px; }
.prp-mc-scroll-title  { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 12px; line-height: 1.3; }
.prp-mc-scroll-body   { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.8; margin: 0 0 10px; }
.prp-mc-scroll-body:last-of-type { margin-bottom: 0; }
.prp-mc-scroll-footer { margin-top: 15px; padding-top: 12px; border-top: 1px solid rgba(90,60,30,0.15); font-family: var(--prp-font-heading); font-size: 10px; font-style: italic; color: rgba(90,60,30,0.4); }
.prp-mc-values      { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--prp-space-md); margin-top: var(--prp-space-xl); }
.prp-mc-value       { border-left: 3px solid var(--color-accent); padding: 15px 16px; background: color-mix(in srgb, var(--color-accent) 3%, transparent); }
.prp-mc-value-label { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--color-accent); display: block; margin-bottom: 6px; }
.prp-mc-value-title { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: var(--prp-text); display: block; margin-bottom: 6px; line-height: 1.3; }
.prp-mc-value-body  { font-family: var(--prp-font-body); font-size: 13px; color: var(--prp-text-muted); line-height: 1.7; margin: 0; }
.prp-mc-types       { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-top: 28px; }
.prp-mc-type        { background: #f5ede0; border-radius: 4px; padding: 18px 16px 20px; box-shadow: 3px 4px 16px rgba(0,0,0,0.5), inset 0 0 0 1px rgba(90,60,30,0.15); }
.prp-mc-type-num    { font-family: var(--prp-font-heading); font-size: 28px; font-weight: 900; color: rgba(179,27,27,0.2); line-height: 1; display: block; margin-bottom: 6px; }
.prp-mc-type-name   { font-family: var(--prp-font-heading); font-size: 15px; font-weight: 700; color: #2b1f16; display: block; margin-bottom: 6px; line-height: 1.2; }
.prp-mc-type-desc   { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; line-height: 1.7; margin: 0; }


/* ==========================================================================
   15k. EMPORIUM PAGE
   NOTE: prp-emp-* are page-specific. Non-brand hex values throughout are
   documented exceptions for wood, brass, and candlelight materials.
   ========================================================================== */

.prp-emp-sign-chains { display: flex; justify-content: space-between; width: 150px; }
.prp-emp-sign-chain  { width: 1px; height: 15px; background: linear-gradient(to bottom, rgba(201,162,39,0.7), rgba(201,162,39,0.3)); }
.prp-emp-signboard   { background: linear-gradient(to bottom, #3d2510, #1e0e04); border: 2px solid #8a6a10; border-radius: 3px; padding: 6px 20px; box-shadow: 0 3px 10px rgba(0,0,0,0.7), inset 0 1px 0 rgba(255,255,255,0.06); margin-bottom: 2px; text-align: center; }
.prp-emp-signboard-title { display: block; font-family: var(--prp-font-heading); font-size: 13px; font-weight: 700; color: #fcd580; letter-spacing: 3px; text-transform: uppercase; text-shadow: 0 0 12px rgba(240,165,32,0.5); }
.prp-emp-signboard-sub   { display: block; font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: rgba(201,162,39,0.45); margin-top: 2px; }

.prp-emp-shopwindow  { width: 240px; background: #1e0e04; border: 8px solid #3d2510; border-top-width: 12px; border-bottom-width: 15px; border-radius: 4px; box-shadow: 0 0 0 2px #8a6a10, 0 8px 32px rgba(0,0,0,0.9), inset 0 0 20px rgba(0,0,0,0.8); padding: 6px; position: relative; }
.prp-emp-crossbar-h  { position: absolute; left: 0; right: 0; top: 50%; height: 8px; background: #3d2510; transform: translateY(-50%); z-index: 2; }
.prp-emp-crossbar-v  { position: absolute; top: 0; bottom: 0; left: 50%; width: 8px; background: #3d2510; transform: translateX(-50%); z-index: 2; }
.prp-emp-panes       { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; position: relative; z-index: 1; }
.prp-emp-pane        { height: 70px; border-radius: 2px; position: relative; overflow: hidden; box-shadow: inset 0 0 8px rgba(0,0,0,0.8); }
.prp-emp-pane-a      { background: linear-gradient(135deg, #0d0d14, #181825); }
.prp-emp-pane-b      { background: linear-gradient(135deg, #0d0d14, #181825); }
.prp-emp-pane-c      { background: linear-gradient(135deg, #0d1008, #141a0a); }
.prp-emp-pane-d      { background: linear-gradient(135deg, #100808, #1a0a0a); }
.prp-emp-pane-a::after { content: ''; position: absolute; bottom: 8px; left: 50%; transform: translateX(-50%); width: 30px; height: 30px; border-radius: 50%; background: radial-gradient(circle, rgba(240,165,32,0.35) 0%, transparent 70%); pointer-events: none; }
.prp-emp-pane-b::after { content: ''; position: absolute; bottom: 12px; left: 50%; transform: translateX(-50%); width: 20px; height: 20px; border-radius: 50%; background: radial-gradient(circle, rgba(240,165,32,0.22) 0%, transparent 70%); pointer-events: none; }
.prp-emp-pane-c::after { content: ''; position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); width: 24px; height: 24px; border-radius: 50%; background: radial-gradient(circle, rgba(60,180,60,0.22) 0%, transparent 70%); pointer-events: none; }
.prp-emp-pane-d::after { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 60% 40%, rgba(179,27,27,0.15) 0%, transparent 65%); pointer-events: none; }
.prp-emp-pane-sil    { position: absolute; bottom: 8px; left: 50%; transform: translateX(-50%); z-index: 1; display: block; }

.prp-emp-cabinet        { background: linear-gradient(to bottom, #6b3d1a, #3d2510); border-radius: 6px; padding: 15px; margin-bottom: var(--prp-space-xl); box-shadow: 0 6px 16px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.08), 0 0 0 2px #1e0e04; }
.prp-emp-cabinet-header { background: linear-gradient(to bottom, #1e0e04, #3d2510); border-radius: 4px 4px 0 0; padding: 8px 16px; margin: -15px -15px 12px; display: flex; align-items: center; justify-content: center; border-bottom: 2px solid #8a6a10; }
.prp-emp-nameplate      { background: linear-gradient(to bottom, #fcd580, #c9a227); border-radius: 2px; padding: 3px 16px; box-shadow: 0 1px 4px rgba(0,0,0,0.5); }
.prp-emp-nameplate span { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: #1e0e04; }
.prp-emp-drawer-grid    { display: grid; grid-template-columns: repeat(8, 1fr); gap: 6px; }
.prp-emp-drawer         { background: linear-gradient(to bottom, #ede0c4, #f5ede0); border-radius: 3px; padding: 0 0 8px; overflow: hidden; display: flex; flex-direction: column; align-items: center; cursor: pointer; border: 1px solid rgba(90,60,30,0.35); box-shadow: 1px 2px 6px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.4); transition: var(--prp-transition-fast); }
.prp-emp-drawer:hover   { transform: translateY(-2px); box-shadow: 1px 4px 10px rgba(0,0,0,0.6); }
.prp-emp-drawer-bar     { width: 100%; height: 8px; margin-bottom: 8px; background: linear-gradient(to bottom, #6b3d1a, #3d2510); }
.prp-emp-drawer-handle  { width: 15px; height: 6px; border-radius: 3px; background: linear-gradient(to bottom, #fcd580, #c9a227); box-shadow: 0 1px 3px rgba(0,0,0,0.5); margin-bottom: 4px; }
.prp-emp-drawer-label   { font-family: var(--prp-font-heading); font-size: 10px; font-weight: 700; letter-spacing: 1px; text-align: center; padding: 0 4px; line-height: 1.2; color: rgba(43,31,22,0.4); }
.prp-emp-drawer-open                        { background: linear-gradient(to bottom, #fdf0d8, #ede0c4); }
.prp-emp-drawer-open .prp-emp-drawer-handle { background: linear-gradient(to bottom, #ffe88a, #f0a520); }
.prp-emp-drawer-open .prp-emp-drawer-label  { color: #2b1f16; font-weight: 700; }

.prp-emp-shelves-col    { flex: 1; min-width: 260px; display: flex; flex-direction: column; justify-content: center; gap: 0; padding: var(--prp-space-md) 0; }
.prp-emp-shelf-items    { display: flex; align-items: flex-end; gap: 8px; padding: 6px 0 0; height: 74px; overflow: hidden; }
.prp-emp-shelf-items-sm { height: 60px; }
.prp-emp-shelf          { height: 10px; border-radius: 2px; background: linear-gradient(to bottom, #6b3d1a, #3d2510); box-shadow: 0 4px 10px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.1), 0 0 0 1px #1e0e04; }
.prp-emp-item           { flex-shrink: 0; position: relative; }

.prp-emp-book       { width: 11px; border-radius: 1px 3px 3px 1px; box-shadow: 1px 2px 6px rgba(0,0,0,0.5); }
.prp-emp-book-red   { height: 38px; background: linear-gradient(to right, rgba(100,20,20,0.9),  rgba(140,30,30,0.8)); }
.prp-emp-book-blue  { height: 34px; background: linear-gradient(to right, rgba(20,40,100,0.9),  rgba(30,60,140,0.8)); }
.prp-emp-book-grn   { height: 32px; background: linear-gradient(to right, rgba(20,80,30,0.9),   rgba(30,100,40,0.8)); }
.prp-emp-book-dark  { height: 40px; background: linear-gradient(to right, rgba(30,20,10,0.9),   rgba(60,40,20,0.8)); }
.prp-emp-book-sm    { height: 26px; width: 11px; }
.prp-emp-scroll     { width: 18px; height: 28px; border-radius: 9px; background: linear-gradient(to bottom, #ede0c4, rgba(200,170,120,0.8)); box-shadow: 1px 2px 6px rgba(0,0,0,0.5), inset 0 0 0 1px rgba(90,60,30,0.3); }
.prp-emp-scroll-sm  { width: 13px; height: 20px; }
.prp-emp-box        { width: 28px; height: 22px; border-radius: 2px; background: linear-gradient(to bottom, #6b3d1a, #3d2510); box-shadow: 1px 2px 8px rgba(0,0,0,0.6), inset 0 0 0 1px rgba(255,255,255,0.05); position: relative; }
.prp-emp-box::after { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 7px; height: 5px; border-radius: 1px; background: linear-gradient(to bottom, #fcd580, #8a6a10); box-shadow: 0 0 4px rgba(201,162,39,0.4); }
.prp-emp-box-sm     { width: 20px; height: 16px; }
.prp-emp-bottle     { width: 15px; height: 32px; border-radius: 2px 2px 4px 4px; position: relative; }
.prp-emp-bottle::before { content: ''; position: absolute; top: -5px; left: 3px; width: 7px; height: 7px; background: linear-gradient(to bottom, rgba(90,60,30,0.8), rgba(60,40,20,0.8)); border-radius: 2px 2px 0 0; }
.prp-emp-bottle-blue { background: linear-gradient(to bottom, rgba(60,20,180,0.7),   rgba(40,10,120,0.5));  box-shadow: 0 0 8px rgba(60,20,180,0.4),   inset 1px 0 0 rgba(255,255,255,0.2); }
.prp-emp-bottle-red  { background: linear-gradient(to bottom, rgba(179,27,27,0.7),   rgba(100,10,10,0.5));  box-shadow: 0 0 8px rgba(179,27,27,0.4),   inset 1px 0 0 rgba(255,255,255,0.15); }
.prp-emp-bottle-grn  { background: linear-gradient(to bottom, rgba(20,120,40,0.7),   rgba(10,80,20,0.5));   box-shadow: 0 0 8px rgba(20,120,40,0.4),   inset 1px 0 0 rgba(255,255,255,0.15); }
.prp-emp-bottle-amb  { width: 11px; height: 24px; background: linear-gradient(to bottom, rgba(200,140,20,0.7), rgba(140,90,10,0.5)); box-shadow: 0 0 6px rgba(200,140,20,0.3), inset 1px 0 0 rgba(255,255,255,0.15); }
.prp-emp-bottle-amb::before { left: 2px; }
.prp-emp-bottle-ice  { width: 13px; height: 28px; background: linear-gradient(to bottom, rgba(100,180,220,0.7), rgba(60,120,160,0.5)); box-shadow: 0 0 8px rgba(100,180,220,0.3), inset 1px 0 0 rgba(255,255,255,0.2); }
.prp-emp-orb         { width: 24px; height: 24px; border-radius: 50%; background: radial-gradient(circle at 35% 30%, rgba(180,140,255,0.9), rgba(80,40,160,0.6)); box-shadow: 0 0 12px rgba(140,80,255,0.4), 0 2px 6px rgba(0,0,0,0.5); }
.prp-emp-candle      { width: 11px; height: 30px; background: linear-gradient(to bottom, #f5ede0, rgba(220,200,160,0.9)); border-radius: 1px; box-shadow: 0 2px 6px rgba(0,0,0,0.4); position: relative; }
.prp-emp-candle::before { content: ''; position: absolute; top: -7px; left: 50%; transform: translateX(-50%); width: 2px; height: 7px; background: linear-gradient(to top, rgba(180,100,20,0.8), rgba(240,165,32,0.3)); border-radius: 1px; }
.prp-emp-candle::after  { content: ''; position: absolute; top: -13px; left: 50%; transform: translateX(-50%); width: 6px; height: 9px; border-radius: 50%; background: radial-gradient(circle, rgba(255,200,60,0.7) 0%, rgba(255,120,20,0.3) 60%, transparent 100%); }
.prp-emp-candle-sm   { height: 20px; }
.prp-emp-candle-md   { height: 24px; }

.prp-emp-counter-bell { width: 28px; height: 28px; border-radius: 50% 50% 0 0; background: linear-gradient(to bottom, #fcd580, #c9a227); box-shadow: 0 0 8px rgba(201,162,39,0.4); flex-shrink: 0; position: relative; }
.prp-emp-counter-bell::after { content: ''; position: absolute; bottom: -3px; left: -4px; right: -4px; height: 4px; background: #c9a227; border-radius: 0 0 2px 2px; }
.prp-emp-counter-candles { display: flex; align-items: flex-end; gap: 3px; flex-shrink: 0; }
.prp-emp-counter-notes   { flex: 1; min-width: 240px; display: flex; flex-direction: column; justify-content: center; gap: var(--prp-space-md); }
.prp-emp-counter-notes .prp-notice:nth-child(1) { transform: rotate(-1deg); }
.prp-emp-counter-notes .prp-notice:nth-child(2) { transform: rotate(0.8deg); }
.prp-emp-gap-sm   { width: 8px;  flex-shrink: 0; }
.prp-emp-gap-md   { width: 15px; flex-shrink: 0; }
.prp-emp-gap-lg   { width: 22px; flex-shrink: 0; }
.prp-emp-gap-flex { flex: 1; }
.prp-emp-heading  { font-family: var(--prp-font-heading); font-size: clamp(26px, 3vw, 36px); font-weight: 700; line-height: 1.15; margin: 0 0 var(--prp-space-sm); color: var(--prp-text); }
.prp-section-dark .prp-emp-heading { color: var(--prp-text-light); }


/* ==========================================================================
   16. BOTTOM NAVIGATION
   ========================================================================== */

.powered-by-ihubapp { display: none; }

#bottomNavWrapper { position: fixed; bottom: 0; left: 0; right: 0; height: auto; z-index: 30; }

@media only screen and (min-width: 1280px) {
  .locked-sidenav #bottomNavWrapper { left: 320px; }
  .locked-sidenav .prp-cs-overlay   { left: 320px; }
}

.bottomNav {
  display: flex; align-items: center; justify-content: center;
  width: 100%; height: var(--ih-bottom-nav-height);
  background: var(--prp-surface);
  border-top: 2px solid var(--color-accent);
  box-shadow: 0 -2px 8px rgba(0,0,0,0.08);
  box-sizing: border-box; white-space: nowrap;
}

.prp-bottomnav-pill {
  font-family: var(--prp-font-body); font-size: 13px; font-weight: 800;
  letter-spacing: 2px; text-transform: uppercase; color: var(--prp-text);
  text-decoration: none; padding: 0 20px; height: 100%;
  display: inline-flex; align-items: center; gap: 10px;
  border: none; background: transparent; transition: var(--prp-transition-fast);
  white-space: nowrap; position: relative; flex-shrink: 0; cursor: pointer;
}
.prp-bottomnav-pill + .prp-bottomnav-pill::before {
  content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%);
  width: 1px; height: 16px; background: color-mix(in srgb, var(--color-accent) 30%, transparent);
}
.prp-bottomnav-pill::after {
  content: ''; width: 10px; height: 10px; border-radius: 50%;
  border: 1.5px solid color-mix(in srgb, var(--color-accent) 80%, transparent);
  background: color-mix(in srgb, var(--color-accent) 15%, transparent);
  flex-shrink: 0; transition: var(--prp-transition-fast); order: -1;
}
.prp-bottomnav-pill:hover         { color: var(--prp-text-light); background: var(--prp-dark); }
.prp-bottomnav-pill:hover::after  { background: var(--color-accent); border-color: var(--color-accent); box-shadow: 0 0 8px color-mix(in srgb, var(--color-accent) 90%, transparent); }
.prp-bottomnav-pill:active        { background: var(--prp-dark); color: var(--prp-text-light); }
.prp-bottomnav-pill:active::after { background: var(--color-accent); border-color: var(--color-accent); }

button.prp-bottomnav-pill { appearance: none; font-family: var(--prp-font-body); }

.prp-cs-trigger.active       { background: var(--prp-dark); color: var(--prp-text-light); }
.prp-cs-trigger.active::after { background: var(--color-accent); border-color: var(--color-accent); }

.prp-cs-overlay             { position: fixed; top: 0; left: 0; right: 0; bottom: var(--ih-bottom-nav-height); z-index: 29; display: none; }
.prp-cs-overlay.prp-cs-open { display: block; }

.prp-cs-panel {
  position: absolute; bottom: 100%; left: 0; width: 380px;
  background: var(--color-primary); border-top: 2px solid var(--color-accent);
  box-shadow: 0 -4px 24px rgba(0,0,0,0.15); max-height: 60vh; overflow-y: auto;
  display: none; flex-direction: column; scrollbar-width: thin; z-index: 31;
}
.prp-cs-panel.prp-cs-open { display: flex; }

.prp-cs-level             { display: none; flex-direction: column; flex-shrink: 0; }
.prp-cs-level.prp-cs-active { display: flex; }

.prp-cs-panel-header {
  display: flex; align-items: center; gap: 10px; padding: 12px 16px;
  border-bottom: 1px solid var(--prp-border); position: sticky; top: 0;
  background: var(--color-primary); z-index: 1; flex-shrink: 0;
}
.prp-cs-back { width: 24px; height: 24px; border-radius: 50%; background: var(--prp-deeper); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; flex-shrink: 0; appearance: none; }
.prp-cs-back::before { content: ''; width: 0; height: 0; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-right: 5px solid var(--prp-text-light); margin-right: 2px; }
.prp-cs-breadcrumb { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: var(--prp-text-muted); }

.prp-cs-item {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 16px; border-bottom: 1px solid var(--prp-border);
  cursor: pointer; transition: var(--prp-transition-fast);
  text-decoration: none; color: inherit; background: transparent;
}
.prp-cs-item:last-child { border-bottom: none; }
.prp-cs-item:not(.prp-cs-item--disabled):hover                      { background: var(--prp-dark); }
.prp-cs-item:not(.prp-cs-item--disabled):hover .prp-cs-item-label   { color: var(--prp-text-light); }
.prp-cs-item:not(.prp-cs-item--disabled):hover .prp-cs-item-sub     { color: rgba(255,255,255,0.5); }
.prp-cs-item:not(.prp-cs-item--disabled):hover .prp-cs-chevron      { border-left-color: var(--color-accent); }
.prp-cs-item:not(.prp-cs-item--disabled):hover .prp-cs-visit        { color: var(--color-accent); }
.prp-cs-item--disabled                   { cursor: default; }
.prp-cs-item--disabled:hover             { background: var(--prp-surface-alt); }
.prp-cs-item--disabled > div            { display: contents; }
.prp-cs-item--disabled .prp-cs-item-sub  { color: var(--prp-text-muted); display: inline; }
.prp-cs-item-label { font-family: var(--prp-font-body); font-size: 13px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: var(--prp-text); display: block; }
.prp-cs-item--disabled .prp-cs-item-label { color: var(--prp-text-muted); }
.prp-cs-item-sub   { font-family: var(--prp-font-body); font-size: 10px; color: var(--color-accent); margin-top: 2px; letter-spacing: 0.5px; display: block; }
.prp-cs-item--disabled .prp-cs-item-sub   { color: var(--prp-border); }
.prp-cs-chevron    { width: 0; height: 0; border-top: 5px solid transparent; border-bottom: 5px solid transparent; border-left: 6px solid var(--color-accent); flex-shrink: 0; }
.prp-cs-visit      { font-family: var(--prp-font-body); font-size: 11px; font-weight: 800; letter-spacing: 1px; color: var(--color-accent); white-space: nowrap; transition: var(--prp-transition-fast); }
.prp-cs-item:hover .prp-cs-visit { color: var(--prp-dark); }


/* ==========================================================================
   17. NEXIA DROPDOWN MENU
   ========================================================================== */

.nexia-menu    { width: 100%; display: flex; background: transparent; }
.menu-bar      { background-color: var(--color-primary); margin: var(--prp-space-sm) auto; display: flex; justify-content: center; border: 2px solid var(--prp-border); border-radius: var(--prp-radius-lg); }
.dropdown      { position: relative; display: inline-block; }
.dropdown-toggle { background-color: transparent; border: none; cursor: pointer; padding: var(--prp-space-sm); font-family: var(--prp-font-body); font-weight: 600; font-size: 16px; color: var(--prp-text); width: 125px; }

.dropdown-menu,
.nested-dropdown-menu { position: absolute; z-index: 100; display: none; list-style-type: none; margin: 0; padding: 0; background-color: var(--color-primary); border: 2px solid var(--prp-border); border-radius: var(--prp-radius-lg); min-width: 0; }
.dropdown-menu        { top: 100%; left: 0; }
.nested-dropdown-menu { left: 100%; transform: translate(0%, -38px); }

.dropdown-menu li::before,
.nested-dropdown-menu li::before { display: none !important; content: none !important; margin-left: 0 !important; }

.dropdown-menu li button,
.nested-dropdown-menu li button { display: block; background-color: var(--prp-surface); border: none; border-radius: var(--prp-radius-lg); text-align: left; padding: var(--prp-space-sm) var(--prp-space-md); width: 130px; font-family: var(--prp-font-body); cursor: pointer; transition: var(--prp-transition-fast); text-decoration: none; }

.dropdown:hover .dropdown-menu              { display: block; }
.dropdown-menu > li:hover > .nested-dropdown-menu { display: block; }
.highlight:hover a, .highlight:hover { background-color: var(--color-accent) !important; color: var(--prp-text-light) !important; font-weight: 700; border-radius: var(--prp-radius-lg); }
.link-disabled { color: #d3d3d3 !important; font-size: 13px; pointer-events: none; cursor: default; }
.link-active   { color: var(--prp-text); text-decoration: none !important; }
.last-menu     { left: -100% !important; }
a.disabled     { pointer-events: none; cursor: default; color: #808080; }


/* ==========================================================================
   18. HOME PAGE BANNER WRAPPERS
   Shared base handles all layout. Only background-image is page-specific.
   ========================================================================== */

.prp-box-wrapper {
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  height: 30vw;
  position: relative;
  text-align: center;
}

/* Page-specific background images */
.prp-homescreen-bg { background-image: url('https://ih-cdn.ihub.app/media/v1/crop/w_1920,h_1080,ow_1920,oh_1080,s_1/render/w_1536,h_864,dpr_1.25/instance/ca/posts/90/2026/02/02/prp-blob_04_58_22_5698.dat'); }
.prp-dc20-bg       { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/05/17/prp-blob_02_25_48_4997.dat'); }
.prp-emporium-bg   { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/11/07/prp-blob_07_02_03_5724.dat'); }
.prp-tabletop-bg   { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/12/07/prp-blob_05_30_57_2805.dat'); }
.prp-foreverdm-bg  { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2024/09/15/prp-blob_06_55_29_0792.dat'); }
.prp-homebrew-bg   { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/11/07/prp-blob_07_32_39_6033.dat'); }

/* EXCEPTIONS — genuine layout differences only */
/* Homescreen is the full-bleed page hero */
.prp-homescreen-bg { height: 53vw; margin-top: -35px; }
/* dc20 asset requires contain to display correctly */
.prp-dc20-bg       { background-size: contain; height: 35vw; }

.homescreen-box-link-wrapper { position: absolute; bottom: 35px; width: 100%; }
.homescreen-box-link         { width: 15%; display: inline-block; }
.homescreen-box-link img     { width: 100%; height: 100%; }
.prp-quicknav-wrap           { text-align: center; margin: var(--prp-space-xl) 0 var(--prp-space-lg); }


/* ==========================================================================
   19. TABLES (City, Pantheon)
   ========================================================================== */

.city-table-border { border: 3px solid var(--color-accent) !important; border-radius: var(--prp-radius-lg); padding: 0; margin-bottom: var(--prp-space-md); box-shadow: var(--prp-shadow-xl); text-align: left; overflow: hidden; }
.city-table        { border-collapse: collapse; width: 100%; }
.city-table th     { padding: 0; border: none; }
.city-table td     { padding: 8px 16px; border-bottom: 1px solid var(--prp-border); font-size: 15px; vertical-align: top; }
.city-table tr:last-child td { border-bottom: none; }
.table-subtitle    { background-color: var(--color-accent); color: var(--prp-text-light); font-family: var(--prp-font-heading); font-size: 24px; font-weight: 700; text-align: center; padding: var(--prp-space-xs); display: block; letter-spacing: 1px; }
.pantheon-table td  { padding: 8px 4px; }
.pantheon-intro p   { text-align: center; max-width: 800px; margin: 0 auto var(--prp-space-lg); }
h2.section-title    { border-bottom: 2px solid var(--color-accent); outline: none; margin-right: 5px; margin-bottom: var(--prp-space-lg); padding-bottom: 5px; overflow: hidden; }
.subline  { height: 0.5px; border-width: 0; background-color: var(--color-accent); }
.detail   { margin-bottom: var(--prp-space-sm); border: 1px solid black; box-shadow: 0 0 0 7px var(--color-accent), 4px 4px 20px black; border-radius: var(--prp-radius-lg); }
.nexia-container { width: 96%; margin: auto; }
#nexia-table     { width: 30%; text-align: left; margin: 0 0 20px 20px; float: right; }
.hr-container    { overflow: hidden; }
.float-div       { float: right; width: 30%; margin-left: 20px; }
.dc20-home       { display: inline-block; vertical-align: bottom; margin: 10px 2px; text-align: left; width: 425px; max-width: calc(100% - 5px); float: left; padding-left: 100px; padding-top: 50px; }


/* ==========================================================================
   19b. NEXIA CODEX
   ========================================================================== */

.nexia-month-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin: var(--prp-space-md) 0; }
.nexia-month-card { background: var(--prp-surface-alt); border-left: 3px solid var(--color-accent); border-radius: 0 var(--prp-radius-sm) var(--prp-radius-sm) 0; padding: 10px 8px; text-align: center; }
.nexia-month-name { font-family: var(--prp-font-heading); font-size: 13px; font-weight: 700; color: var(--prp-text); display: block; margin-bottom: 4px; }
.nexia-month-days { font-family: var(--prp-font-body); font-size: 10px; font-weight: 800; letter-spacing: 1px; color: var(--color-accent); display: block; }
.nexia-atlas-dark-pad { background: var(--prp-deeper); border-radius: var(--prp-radius-sm); padding: 12px; position: relative; }
.nexia-calendar-layout { display: flex; gap: 32px; align-items: flex-start; }
.nexia-calendar-left   { flex: 1; min-width: 0; }
.nexia-calendar-right  { width: 38%; flex-shrink: 0; }
.nexia-fold-row { display: flex; gap: 8px; padding: 5px 0; border-bottom: 1px dashed rgba(90,60,30,0.15); }
.nexia-fold-row:last-child { border-bottom: none; }
.nexia-fold-key { font-family: var(--prp-font-heading); font-size: 13px; font-weight: 700; color: #2b1f16; min-width: 110px; flex-shrink: 0; }
.nexia-fold-val { font-family: var(--prp-font-serif); font-size: 13px; color: #3d2e22; }
.nexia-map-frame { max-width: 68%; float: right; margin: 0 0 var(--prp-space-lg) var(--prp-space-xl); }
.nexia-clear     { clear: right; }


/* ==========================================================================
   20. DEED SCROLL
   ========================================================================== */

.deed-scroll   { max-width: 900px; margin: 0 auto; padding: 64px 56px 92px; background: linear-gradient(180deg, #efe2c2, #e7d6ae); color: #2b1f16; font-family: Garamond, Georgia, serif; border-radius: var(--prp-radius-md); position: relative; box-shadow: 0 30px 80px rgba(0,0,0,0.55), inset 0 0 0 2px rgba(90,60,30,0.18); }
.deed-title    { text-align: center; text-transform: uppercase; letter-spacing: 0.6px; margin-top: 0; }
.deed-subtitle { text-align: center; font-style: italic; margin-top: 8px; margin-bottom: var(--prp-space-lg); }
.deed-divider  { width: 72%; border: 0; border-top: 1px solid rgba(43,31,22,0.35); margin-bottom: var(--prp-space-xl); }
.deed-opening  { margin-top: 0; }
.dropcap       { font-size: 56px; font-weight: bold; line-height: 0.9; }
.earned        { text-align: center; font-weight: bold; text-transform: uppercase; letter-spacing: 0.5px; }
.closing-oath  { text-align: center; font-style: italic; }
.binding-text  { margin-top: var(--prp-space-xl); }
.no-signature  { text-align: center; font-style: italic; }
.blood-seal    { position: absolute; right: 36px; bottom: 28px; width: 82px; height: 82px; border-radius: 50%; background-color: rgba(90,26,20,0.78); display: flex; align-items: center; justify-content: center; box-shadow: 0 12px 24px rgba(0,0,0,0.35), inset 0 0 6px rgba(0,0,0,0.35), inset 0 0 12px rgba(255,220,200,0.08); }
.seal-mark     { font-size: 26px; font-weight: bold; color: rgba(255,255,255,0.18); }


/* ==========================================================================
   21. DICE ICONS (DC20)
   ========================================================================== */

.mat-icon[data-mat-icon-name="heart-outline"] {
  content: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23A60000" d="M21,16.5C21,16.88 20.79,17.21 20.47,17.38L12.57,21.82C12.41,21.94 12.21,22 12,22C11.79,22 11.59,21.94 11.43,21.82L3.53,17.38C3.21,17.21 3,16.88 3,16.5V7.5C3,7.12 3.21,6.79 3.53,6.62L11.43,2.18C11.59,2.06 11.79,2 12,2C12.21,2 12.41,2.06 12.57,2.18L20.47,6.62C20.79,6.79 21,7.12 21,7.5V16.5M12,4.15L5,8.09V15.91L12,19.85L19,15.91V8.09L12,4.15M14.93,8.27A2.57,2.57 0 0,1 17.5,10.84V13.5C17.5,14.9 16.35,16.05 14.93,16.05C13.5,16.05 12.36,14.9 12.36,13.5V10.84A2.57,2.57 0 0,1 14.93,8.27M14.92,9.71C14.34,9.71 13.86,10.18 13.86,10.77V13.53C13.86,14.12 14.34,14.6 14.92,14.6C15.5,14.6 16,14.12 16,13.53V10.77C16,10.18 15.5,9.71 14.92,9.71M11.45,14.76V15.96L6.31,15.93V14.91C6.31,14.91 9.74,11.58 9.75,10.57C9.75,9.33 8.73,9.46 8.73,9.46C8.73,9.46 7.75,9.5 7.64,10.71L6.14,10.76C6.14,10.76 6.18,8.26 8.83,8.26C11.2,8.26 11.23,10.04 11.23,10.5C11.23,12.18 8.15,14.77 8.15,14.77L11.45,14.76Z"/></svg>');
}
.mat-icon[data-mat-icon-name="heart"] {
  content: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23A60000" d="M20.47 6.62L12.57 2.18C12.41 2.06 12.21 2 12 2S11.59 2.06 11.43 2.18L3.53 6.62C3.21 6.79 3 7.12 3 7.5V16.5C3 16.88 3.21 17.21 3.53 17.38L11.43 21.82C11.59 21.94 11.79 22 12 22S12.41 21.94 12.57 21.82L20.47 17.38C20.79 17.21 21 16.88 21 16.5V7.5C21 7.12 20.79 6.79 20.47 6.62M11.45 15.96L6.31 15.93V14.91C6.31 14.91 9.74 11.58 9.75 10.57C9.75 9.33 8.73 9.46 8.73 9.46S7.75 9.5 7.64 10.71L6.14 10.76C6.14 10.76 6.18 8.26 8.83 8.26C11.2 8.26 11.23 10.04 11.23 10.5C11.23 12.18 8.15 14.77 8.15 14.77L11.45 14.76V15.96M17.5 13.5C17.5 14.9 16.35 16.05 14.93 16.05C13.5 16.05 12.36 14.9 12.36 13.5V10.84C12.36 9.42 13.5 8.27 14.93 8.27S17.5 9.42 17.5 10.84V13.5M16 10.77V13.53C16 14.12 15.5 14.6 14.92 14.6C14.34 14.6 13.86 14.12 13.86 13.53V10.77C13.86 10.18 14.34 9.71 14.92 9.71C15.5 9.71 16 10.18 16 10.77Z"/></svg>');
  width: 24px; height: 24px;
}


/* ==========================================================================
   22. IHUB PLATFORM OVERRIDES
   ========================================================================== */

.ih-content-body   { padding-top: 0 !important; }
.channel-upperhtml { padding: 0 !important; }
.no-sliders        { padding-top: 0 !important; }

home swiper,
ih-home-feed swiper { display: none !important; margin-bottom: 0; }

.mat-mdc-menu-trigger { border-radius: var(--prp-radius-lg); background-color: var(--color-primary) !important; color: var(--color-accent); }
#whatsNewFilter .mat-mdc-button-touch-target { background-color: var(--color-accent); }
#whatsNewFilter .mdc-button__label           { color: var(--prp-text-light); font-weight: 700; }

[_nghost-ng-c4172707918] .side-nav-item,
[_nghost-ng-c4172707918] .ih-my-channels .side-nav-item,
.profile-nav-list-item[_ngcontent-ng-c3671559517],
.profile-nav-list-item.menu-return[_ngcontent-ng-c3671559517] { border-radius: var(--prp-radius-lg); }

[_nghost-ng-c2889448183] .content-body.donation-body { padding: 0px !important; }
.donation-container[_ngcontent-ng-c1640959865] { margin: 0px !important; }
.post-module { width: 90% !important; max-width: 1200px !important; margin-left: auto !important; margin-right: auto !important; }
.channel-header-controls[_ngcontent-ng-c766954825] { border: none !important; }

.card-post-label.events         { display: none; }
.event-dates-container          { display: none; }
.event-status-container         { display: none; }
.event-location-row             { display: none; }
.ticket-list-header             { display: none; }
.event-thankyou-dates-container { display: none; }
.event-date                     { visibility: hidden; }

.registration-btn .mdc-button__label:after { visibility: visible; position: absolute; top: 0; left: 0; content: "BUY NOW"; }
.registration-btn .mdc-button__label       { visibility: hidden; }
.register-for-event-text:after             { visibility: visible; position: absolute; top: 0; left: 0; content: "Complete Purchase"; }
.register-for-event-text                   { visibility: hidden; }

#txtComments::placeholder { color: transparent; opacity: 0; }
#txtComments {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20" viewBox="0 0 200 20"><text x="0" y="10" font-family="roboto" font-size="12" fill="%23888">Mailing Address</text></svg>');
  background-repeat: no-repeat; background-position: 0px 15%; transition: background-image 0.3s ease;
}
#txtComments:focus,
#txtComments:not(:placeholder-shown) { background-image: none; }
#txtComments:placeholder-shown {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20" viewBox="0 0 200 20"><text x="0" y="15" font-family="inherit" font-size="18" fill="%23888">Mailing Address</text></svg>');
}

.body-content .content-max {
	max-width: 100% !important;  
}

/* ==========================================================================
   23. RESPONSIVE BREAKPOINTS
   ========================================================================== */

@media screen and (max-width: 768px) {

  h1 { font-size: 32px; }
  h2 { font-size: 26px; }

  .prp-topnav { display: grid; grid-template-columns: 1fr 1fr; padding: 8px 16px; gap: 0; }
  .prp-topnav-pill { padding: 10px 15px; font-size: 10px; letter-spacing: 1.5px; }
  .prp-topnav-pill + .prp-topnav-pill::before { display: none; }

  .prp-hero-right  { display: none !important; }
  .prp-hero-h1     { font-size: 38px !important; }

  .prp-hero-banner,
  .prp-hero-content,
  .prp-hero-left,
  .prp-topnav { flex-direction: column !important; }

  .prp-section-2col { flex-direction: column !important; }
  .prp-saving-throw { min-width: unset; width: 100%; }
  .prp-about        { flex-direction: column !important; max-width: 100vw; overflow-x: hidden; }

  .prp-cs-header,
  .prp-cs-publisher-row,
  .prp-cs-char-row { flex-wrap: wrap; min-width: 0; }

  .prp-about-col { padding: var(--prp-space-sm); }

  .prp-grid-3,
  .prp-grid-2 { grid-template-columns: 1fr; }

  .prp-service-row  { flex-direction: column; }
  .prp-card-service { min-width: unset; width: 100%; }

  .prp-campaign-content { flex-direction: column; align-items: center; text-align: center; }
  .prp-campaign-img     { flex: none; width: 100%; max-width: 100%; }

  .prp-tgrid        { flex-direction: column; }
  .prp-dex-con-grid { grid-template-columns: 1fr; }
  .prp-cha-cards    { grid-template-columns: 1fr; }
  .prp-ticket       { transform: none; }
  .prp-journal      { transform: none; }
  .prp-cha-card     { transform: none !important; }
  
  .npc-manifest-body { grid-template-columns: 1fr; }
  .npc-entry,
  .npc-entry:nth-child(even) { padding-left: 0; border-left: none; }
  .npc-entry:nth-last-child(-n+2) { border-bottom: 1px solid color-mix(in srgb, var(--color-accent) 10%, transparent); }
  .npc-entry:last-child { border-bottom: none; }

  /* Box wrappers — mobile */
  .prp-box-wrapper   { width: 100vw; height: min(75vw, 75vh); overflow: hidden; margin-top: 0; background-size: cover; }
  .prp-homescreen-bg { background-image: url('https://ih-cdn.ihub.app/media/v1/crop/w_1920,h_1080,ow_1920,oh_1080,s_1/render/w_1536,h_864,dpr_1.25/instance/ca/posts/90/2026/02/02/prp-blob_04_58_22_5698.dat'); height: min(75vw, 75vh); margin-top: 0; }
  .prp-dc20-bg       { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/10/19/prp-blob_10_30_29_6211.dat'); background-size: cover; height: 140vw; }
  .prp-tabletop-bg   { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/11/02/prp-blob_08_41_06_6587.dat'); height: 155vw; }
  .prp-foreverdm-bg  { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/11/03/prp-blob_05_10_50_2444.dat'); height: 150vw; }
  .prp-homebrew-bg   { background-image: url('https://ca-app-content.ihub.app/app-content/posts/90/2023/11/07/prp-blob_07_55_27_1766.dat'); height: 141vw; }

  .homescreen-box-link { display: block; width: 100% !important; }
  .prp-hide-desktop    { display: block; }
  .prp-hide-mobile     { display: none; }

  .nexia-menu           { z-index: 100; }
  .dropdown-toggle      { width: 90px !important; font-size: 15px !important; }
  .dropdown-menu        { left: -1%; }
  .dropdown-menu,
  .nested-dropdown-menu { z-index: 101; }
  .last-menu            { left: -100% !important; }

  .pantheon-table th:nth-child(3) .table-subtitle { font-size: 0; }
  .pantheon-table th:nth-child(3) .table-subtitle::before { content: "⚖️"; font-size: 24px; filter: brightness(0) saturate(100%) invert(100%); display: inline-block; margin-left: -4px; }

  .deed-scroll { padding: var(--prp-space-xl) var(--prp-space-lg) 72px; }
  .dc20-home   { padding-left: 0; }
  #nexia-table { width: 100%; margin-left: 0; }

  .prp-notice-board { grid-template-columns: 1fr 1fr; }
  .prp-notice       { transform: none !important; }
  .prp-cb-grid      { grid-template-columns: 1fr; }

  /* GM For Hire — mobile */
  .prp-gm-s2-layout    { grid-template-columns: 1fr; gap: var(--prp-space-xl); }
  .prp-gm-photo-layout { grid-template-columns: 1fr; }
  .prp-manifesto-row   { grid-template-columns: 1fr; gap: var(--prp-space-sm); }
  .prp-gm-price-grid   { grid-template-columns: 1fr; }
  .prp-dm-screen       { grid-template-columns: 1fr; }

  /* Forever DM — mobile */
  .prp-dm-triptych { grid-template-columns: 1fr; }
  .prp-dm-fold + .prp-dm-fold::before { display: none; }

  /* Mental Health — mobile */
  .prp-mh-pillars     { grid-template-columns: 1fr; }
  .prp-mh-skills-grid { grid-template-columns: 1fr 1fr; }
  .prp-pillar-grid    { grid-template-columns: 1fr; }
  .prp-parchment-grid { grid-template-columns: 1fr 1fr; }

  /* Member Content — mobile */
  .prp-mc-values { grid-template-columns: 1fr; }
  .prp-mc-types  { grid-template-columns: 1fr 1fr; }

  /* Meet the Party — mobile */
  .prp-party-member,
  .prp-party-member-alt { flex-direction: column; }

  /* Emporium — mobile */
  .prp-emp-drawer-grid   { grid-template-columns: repeat(4, 1fr); }
  .prp-emp-shelves-col   { padding: 0; }
  .prp-emp-counter-notes { min-width: unset; width: 100%; }

  /* Nexia calendar — mobile */
  .nexia-calendar-layout { flex-direction: column; }
  .nexia-calendar-right  { width: 100%; }

  /* Chronicle — mobile */
  .prp-chronicle-date       { width: 72px; }
  .prp-chronicle-date-label { font-size: 9px; }

  /* Bottom navigation — mobile scroll */
  .prp-cs-panel { width: 100%; right: 0; }
  .bottomNav {
    justify-content: flex-start;
    overflow-x: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .bottomNav::-webkit-scrollbar { display: none; }

  #bottomNavWrapper::before,
  #bottomNavWrapper::after {
    content: ''; position: absolute; top: 0; bottom: 0; width: 44px; z-index: 1; pointer-events: none;
  }
  #bottomNavWrapper::before { left: 0;  background: linear-gradient(to right, var(--color-primary), transparent); }
  #bottomNavWrapper::after  { right: 0; background: linear-gradient(to left, var(--color-primary), transparent); }

  .prp-bottomnav-pill { padding: 0 16px; font-size: 11px; letter-spacing: 1.5px; }
  .prp-bottomnav-pill + .prp-bottomnav-pill::before { display: none; }
}

@media screen and (max-width: 480px) {
  .nexia-month-grid   { grid-template-columns: repeat(2, 1fr); }
  .nexia-map-frame    { max-width: 100%; float: none; margin: 0 0 var(--prp-space-lg); }
  .prp-mh-skills-grid { grid-template-columns: 1fr; }
  .prp-parchment-grid { grid-template-columns: 1fr; }
  .prp-mc-types       { grid-template-columns: 1fr; }
}