/* MASTER-DESIGN v1.4 – Application shell adapter
   Produktneutraler App-Layer. Farben/Bilder liefert das lokale Produkt-Theme. */
:root{
  --mdh-app-primary:#0f766e;
  --mdh-app-primary-strong:#0b5f59;
  --mdh-app-accent:#14b8a6;
  --mdh-app-surface:#ffffff;
  --mdh-app-surface-soft:#f6faf9;
  --mdh-app-text:#172033;
  --mdh-app-muted:#64748b;
  --mdh-app-border:#dbe7e5;
  --mdh-app-sidebar:#172631;
  --mdh-app-sidebar-2:#0d1d29;
  --mdh-app-radius:12px;
}
html,body{max-width:100%;overflow-x:hidden}
body.opa-app-screen,body.opa-login-screen{color:var(--mdh-app-text)}
body.opa-app-screen .main-area{position:relative;isolation:auto;background:linear-gradient(rgba(247,250,250,.94),rgba(247,250,250,.94)),var(--mdh-app-dashboard-bg,none) center/cover fixed no-repeat,var(--opa-bg,#f5f7fb)}
body.opa-app-screen .main-area::before,body.opa-app-screen .main-area::after{content:none!important;display:none!important}
body.opa-app-screen .sidebar{position:relative;z-index:30}
body.opa-app-screen .topbar{position:relative;z-index:10}
body.opa-app-screen .container{position:relative}
body.opa-app-screen .card,body.opa-app-screen .tile,body.opa-app-screen .summary-card{border-color:var(--mdh-app-border);box-shadow:0 7px 24px rgba(15,23,42,.06)}
body.opa-app-screen button:not(.opa-menu-toggle):not(.sidebar-toggle):not(.link-button),body.opa-app-screen .button{background:var(--mdh-app-primary);color:#fff}
body.opa-app-screen button:not(.opa-menu-toggle):not(.sidebar-toggle):not(.link-button):hover,body.opa-app-screen .button:hover{background:var(--mdh-app-primary-strong)}
body.opa-app-screen .button-secondary,body.opa-app-screen .button.secondary{background:#fff;color:var(--mdh-app-primary-strong);border-color:var(--mdh-app-border)}
body.opa-app-screen a{accent-color:var(--mdh-app-primary)}
body.opa-app-screen input:focus,body.opa-app-screen textarea:focus,body.opa-app-screen select:focus{outline:2px solid color-mix(in srgb,var(--mdh-app-accent) 35%,transparent);border-color:var(--mdh-app-primary)}
.sidebar{background:linear-gradient(180deg,var(--mdh-app-sidebar),var(--mdh-app-sidebar-2));border-right:1px solid rgba(255,255,255,.05)}
.sidebar-brand-logo{height:auto;max-height:58px;width:190px;max-width:100%;object-fit:contain;object-position:left center}
.sidebar-section{border-color:rgba(255,255,255,.08)}
.sidebar a:hover,.sidebar a.active{background:color-mix(in srgb,var(--mdh-app-primary) 28%,transparent);color:#fff}
.sidebar-license.status-normal{background:color-mix(in srgb,var(--mdh-app-accent) 16%,#0f2a29);color:#dffcf7;border-color:color-mix(in srgb,var(--mdh-app-accent) 40%,transparent)}
.topbar{box-shadow:0 1px 0 rgba(15,23,42,.04)}
.opa-product-mark{display:block;max-width:190px;max-height:50px;width:auto;height:auto;object-fit:contain}
body.opa-login-screen{min-height:100vh;background:var(--mdh-app-login-bg,linear-gradient(135deg,#102033,#1f2937)) center/cover fixed no-repeat}
body.opa-login-screen .topbar{background:rgba(23,38,49,.94);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px)}
body.opa-login-screen .container{max-width:520px;margin:0 auto;padding:clamp(28px,7vh,76px) 16px}
body.opa-login-screen .card{background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.55);box-shadow:0 24px 65px rgba(5,17,27,.28);backdrop-filter:blur(12px)}
body.opa-login-screen button{background:var(--mdh-app-primary);color:#fff}
@media(max-width:700px){
  .sidebar-brand-logo{width:176px;max-height:52px}
  body.opa-app-screen .main-area{background-attachment:scroll,scroll,scroll}
  body.opa-login-screen .container{padding:24px 10px}
  .opa-product-mark{max-width:170px;max-height:46px}
}
