/*
    Document   : override
    Created on : <date>
    Author     : <author>
    Description:
        This is where any of your application specific styles should be included
*/
/* .demo-oracle-icon {
    width:137px;
    height:18px
}

.demo-oracle-icon:before {
    content:url("images/oracle_logo.svg")
}

html:not([dir="rtl"]) .demo-oracle-icon {
    padding-right:4px
}

html[dir="rtl"] .demo-oracle-icon {
    padding-left:4px
}

.demo-oracle-icon:before {
    display:inline
}

.demo-appheader-avatar {
    width:24px;
    height:24px
}

.demo-appheader-avatar:before {
    content:url("images/avatar_24px.png")
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi), (min-resolution: 1.5dppx) {
    .demo-appheader-avatar:before {
        content:url("images/avatar_24px_2x.png");
        -webkit-transform:translate(-25%, -25%) scale(0.5);
        transform:translate(-25%, -25%) scale(0.5)
    }
} */

:root {
  --oj-private-tree-view-global-load-indicator-default: none;
  --gt-menu-button-offset: 48px;
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

#appContainer,
#appContainer .appMainContent {
  display: flex;
  flex-wrap: wrap;
  flex: 1 0 100%;
  position: relative;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

#appContainer {
  height: 100vh;
}

.app-shell {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 100%;
}

body {
  background-color: white;
  max-height: 100vh;
  overflow: hidden;
}


[class^="TabBarItemBaseTheme_baseTheme"] [class^="FlexStyles_baseStyles"] {
  gap: 0 !important;
  padding: 0 0.25rem;
}

#page-layout {
  flex-grow: 1;
  min-height: 100%;
  width: 100%;
  /* width: 60%; */
  /* max-width: 60%; */
  padding: 0 1rem 1rem;
}

.toolbar-button {
  border: 1px solid rgba(22, 21, 19, 0.5);
  background-color: inherit;
  border-radius: 4px;
  font-size: 1.25rem;
  padding: 0.25rem;
  height: 36px;
  width: 36px;
  cursor: pointer;
}

.gt-search-type-toolbar-data-pool-fields {
  padding: 0.5rem;
  display: flex;
  gap: 0.5rem;
  flex-direction: column;
}

/* Drawer host covers viewport; panel has its own scrollbar (Inset Layout) */

.gt-drawer-panel {
  box-sizing: border-box;
  height: 100%;
  overflow: auto;
  /* independent scroll */
  background: #fff;
  border-right: 1px solid #e1e1e1;
  padding: 48px 10px 16px;
}

/* oj-navigation-list text wrapping + category header styling */
.gt-drawer-navlist .oj-navigationlist-item-label {
  white-space: normal;
  line-height: 1.25;
}

oj-drawer-popup.gt-drawer-layout,
oj-drawer-popup.gt-drawer-layout .oj-drawer-full-height {
  max-width: 320px;
  width: 320px;
}

/* Align navlist item content vertically */
.oj-navigationlist-item-element {
  display: flex;
  align-items: center;
}

/* Fallback/utility styles for required indicator alignment used by form field components */
.required-indicator-container {
  display: flex;
  justify-content: flex-end;
  margin-top: 6px;
}

.required-indicator {
  color: #777676;
  font-size: 12px;
}

/* Ensure popup sizing applies even when oj-popup is reparented to body */
oj-popup.gt-form-details-popup-host .gt-form-details-popup {
  padding: 18px 22px 16px;
  width: 520px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

oj-popup.gt-form-details-popup-host .gt-form-details-title {
  font-weight: 600;
  font-size: 1.05rem;
}

oj-popup.gt-form-details-popup-host .gt-form-details-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 0.95rem;
  color: #2b2b2b;
}

oj-popup.gt-form-details-popup-host .gt-form-details-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 6px;
}

oj-popup.gt-form-details-popup-host {
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18);
  max-width: 90vw;
}
