/* CDU-Fraktion Eschweiler — local assets, shared application presentation. */
@font-face{font-family:Inter;src:url("Inter-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("Inter-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("Inter-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url("Inter-ExtraBold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
:root{--cdu-blue:#2d3c4b;--cdu-turquoise:#52b7c1;--cdu-gold:#ffa600}
body,input,button,select,textarea{font-family:Inter,Arial,sans-serif}
/* Preserve the application structure and its keyboard/accessibility controls. */
os-login-wrapper .main-login-wrapper{background:#f5f7f8!important}
os-login-wrapper .login-logo-bar{height:220px!important;min-height:220px;padding:24px!important;background:#2d3c4b!important;border-bottom:6px solid #52b7c1;box-sizing:border-box}
os-login-wrapper .login-logo-bar img[alt="OpenSlides-logo"]{content:url("logo-white.svg");width:360px!important;height:135px!important;max-height:none!important;max-width:85vw!important;object-fit:contain}
os-login-mask .form-wrapper{box-sizing:border-box;width:min(620px,calc(100vw - 40px))!important;margin:40px auto!important;padding:36px 40px!important;border:1px solid #e0e6ea;border-top:4px solid #52b7c1;border-radius:12px;background:#fff;box-shadow:0 8px 30px rgb(45 60 75 / 7%)}
os-login-mask .header-name h1{font-family:Inter,Arial,sans-serif!important;font-size:28px!important;font-weight:800!important;line-height:1.25;color:#2d3c4b!important;letter-spacing:-.6px}
os-login-mask .login-container{width:100%!important}
os-login-mask .login-button{height:48px!important;min-height:48px;border-radius:6px!important;background:#2d3c4b!important;color:#fff!important;font-family:Inter,Arial,sans-serif!important;font-size:15px!important;font-weight:500!important}
os-login-mask .login-button:hover{background:#1b2834!important}
os-login-mask .login-button:focus-visible{outline:3px solid #52b7c1;outline-offset:4px}
/* OX gets its palette and logo through its native dynamic-theme settings. */
#io-ox-core,#io-ox-core input,#io-ox-core button{font-family:Inter,Arial,sans-serif}
@media(max-width:600px){os-login-wrapper .login-logo-bar{height:180px!important;min-height:180px}os-login-wrapper .login-logo-bar img[alt="OpenSlides-logo"]{width:300px!important;height:112px!important}os-login-mask .form-wrapper{padding:24px!important;margin:24px auto!important}os-login-mask .header-name h1{font-size:23px!important}}

/* Official CDU serif accent; self-hosted, no external font service. */
@font-face{font-family:"IBM Plex Serif";src:url("IBMPlexSerif-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Serif";src:url("IBMPlexSerif-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}
.cdu-serif-accent{font-family:"IBM Plex Serif",Georgia,serif;font-weight:700;font-style:italic}
