.portal-view-option-hidden { display: none !important; }
th.portal-view-options-header { position: relative; padding-right: 48px !important; }
.portal-view-options-button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 32px; height: 30px; padding: 0; margin: 0 4px; border: 1px solid #b6c8bf; border-radius: 6px; background: #fff; color: #123c2d; font: 700 24px/1 Arial, sans-serif; cursor: pointer; }
th > .portal-view-options-button { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); z-index: 3; }
.portal-view-options-button:hover, .portal-view-options-button[aria-expanded="true"] { background: #e7f4dc; }
.portal-view-options-button:focus-visible, .portal-view-options-menu :focus-visible { outline: 3px solid #31764a; outline-offset: 2px; }
.portal-view-options-menu { position: fixed; z-index: 100000; box-sizing: border-box; width: min(330px, calc(100vw - 16px)); max-height: calc(100vh - 16px); overflow: auto; padding: 16px; border: 1px solid #9eb7a6; border-radius: 10px; background: #fff; color: #173e25; box-shadow: 0 8px 30px #123c2d38; text-align: left; font: 14px/1.5 "DM Sans", Arial, sans-serif; }
.portal-view-options-menu details { margin: 12px 0; border-top: 1px solid #dce5df; padding-top: 10px; }
.portal-view-options-menu summary { cursor: pointer; font-weight: 700; }
.portal-view-options-menu label { display: flex; flex-direction: row; align-items: center; gap: 10px; margin: 8px 0; padding: 3px; cursor: pointer; font-weight: 400; }
.portal-view-options-menu input[type="checkbox"] { width: 18px; min-width: 18px; height: 18px; margin: 0; accent-color: #31764a; }
.portal-view-options-menu p { font-size: 12px; color: #526459; }
.portal-view-options-menu > button { padding: 7px 10px; margin: 4px 8px 0 0; border: 1px solid #9eb7a6; border-radius: 6px; background: #f4f8f5; color: #123c2d; cursor: pointer; }
