
/*
 * OMS additions only.
 * Sidebar layout, collapse, hover-expand, drawer, accordion, sticky header,
 * menu state and transitions are provided by the user's Metronic Demo1 build.
 */

.oms-demo1-logo{
    display:flex;
    align-items:center;
    gap:.7rem;
    min-width:220px;
    text-decoration:none;
}

.oms-demo1-logo-mark,
.oms-demo1-mini-logo,
.oms-mobile-logo{
    width:36px;
    height:36px;
    min-width:36px;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--primary);
    color:var(--primary-foreground);
    font-weight:900;
    letter-spacing:-.04em;
}

.oms-demo1-logo-copy{
    display:flex;
    flex-direction:column;
    line-height:1.15;
    white-space:nowrap;
}

.oms-demo1-logo-title{
    color:var(--foreground);
    font-size:.9rem;
    font-weight:800;
}

.oms-demo1-logo-sub{
    color:var(--muted-foreground);
    font-size:.68rem;
    margin-top:.2rem;
}

.oms-demo1-mini-logo{
    font-size:.8rem;
    text-decoration:none;
}

.oms-mobile-logo{
    width:30px;
    height:30px;
    min-width:30px;
    border-radius:8px;
    font-size:.72rem;
}

.oms-user-avatar-header{
    width:34px;
    height:34px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:color-mix(in srgb,var(--primary) 13%,var(--background));
    color:var(--primary);
    font-weight:800;
    font-size:.82rem;
}

.oms-page-title{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}
.oms-page-sub{font-size:.875rem;color:var(--muted-foreground);margin-top:.35rem}
.oms-grid-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.oms-stat{padding:1.25rem}
.oms-stat-label{font-size:.75rem;color:var(--muted-foreground);font-weight:600}
.oms-stat-value{font-size:1.65rem;font-weight:750;margin-top:.3rem}
.oms-badge-pending{background:#fff7ed;color:#c2410c}
.oms-badge-active{background:#dcfce7;color:#166534}
.oms-badge-disabled{background:#fee2e2;color:#991b1b}
.oms-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}

@media(max-width:1100px){
    .oms-grid-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
    .oms-grid-stats{grid-template-columns:1fr}
}


/* v2.1 — Demo1 logo state fix.
   Demo1's original templates use separate default/small logo nodes.
   Our text logo needs explicit visibility rules because it is not an <img>. */

#sidebar_header{
    height:70px;
    min-height:70px;
}

#sidebar_header .kt-sidebar-logo{
    display:flex;
    align-items:center;
    min-width:0;
    width:100%;
}

#sidebar_header .default-logo{
    display:flex;
}

#sidebar_header .small-logo{
    display:none;
}

/* Metronic Demo1 adds kt-sidebar-collapse to BODY via #sidebar_toggle. */
body.kt-sidebar-collapse #sidebar_header .default-logo{
    display:none !important;
}

body.kt-sidebar-collapse #sidebar_header .small-logo{
    display:flex !important;
    align-items:center;
    justify-content:center;
}

body.kt-sidebar-collapse #sidebar_header .kt-sidebar-logo{
    justify-content:center;
}

/* Prevent the custom text logo from forcing Demo1 sidebar width. */
.oms-demo1-logo{
    min-width:0;
    width:auto;
    overflow:hidden;
}

.oms-demo1-logo-copy{
    min-width:0;
}

/* The toggle is intentionally allowed to sit on the sidebar edge like Demo1. */
#sidebar_toggle{
    flex:none;
}


/* v2.2 business-page integrations */
.oms-upload-drop{
    border:2px dashed var(--border);
    border-radius:14px;
    padding:3rem 1.5rem;
    text-align:center;
    background:color-mix(in srgb,var(--muted) 25%,transparent);
    transition:border-color .15s ease,background-color .15s ease;
}
.oms-upload-drop.is-drag{
    border-color:var(--primary);
    background:color-mix(in srgb,var(--primary) 6%,transparent);
}
.oms-master-table{
    max-height:calc(100vh - 270px);
}
.oms-modal{
    position:fixed;inset:0;z-index:100;
    display:none;align-items:center;justify-content:center;
    padding:24px;background:rgba(15,23,42,.55);
}
.oms-modal.open{display:flex}
.oms-modal-panel{
    width:min(1180px,96vw);max-height:94vh;overflow:auto;
    background:var(--background);border:1px solid var(--border);
    border-radius:16px;box-shadow:0 24px 70px rgba(15,23,42,.25);
}
