@charset "UTF-8";
/*
 * EstateGo DMS (Paperless-ngx) — EstateGo look on top of Paperless, without changing Paperless itself.
 * nginx puts this file into every HTML page (sub_filter); Paperless updates keep it.
 * Name and logo come from PAPERLESS_APP_TITLE / PAPERLESS_APP_LOGO. Later rename (Nodex) = this file + those two.
 * Source: Apps/EstateGo/DMS/branding/estatego-brand/
 */
@font-face {
	font-family: 'Plus Jakarta Sans Variable';
	font-style: normal;
	font-display: swap;
	font-weight: 200 800;
	src: url('/estatego-brand/jakarta-ext.woff2') format('woff2-variations');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Plus Jakarta Sans Variable';
	font-style: normal;
	font-display: swap;
	font-weight: 200 800;
	src: url('/estatego-brand/jakarta.woff2') format('woff2-variations');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- colours and font everywhere (login page and app) ---------- */
:root,
body {
	--estatego-blue: #1947e3;
	--estatego-blue-2: #1e79fa;
	--estatego-ink: #0b1530;
	--pngx-primary: #1947e3 !important;
	--pngx-primary-hover: #1538b8 !important;
	--pngx-primary-active: #102c8f !important;
	--bs-link-color-rgb: 25, 71, 227;
	--bs-link-hover-color-rgb: 21, 56, 184;
	--bs-font-sans-serif: 'Plus Jakarta Sans Variable', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

body,
.btn,
.form-control,
.form-select,
.dropdown-menu,
.tooltip,
.popover {
	font-family: 'Plus Jakarta Sans Variable', system-ui, -apple-system, 'Segoe UI', sans-serif !important;
}

.btn {
	border-radius: 999px;
	font-weight: 600;
}

.btn-primary {
	--bs-btn-bg: var(--estatego-blue);
	--bs-btn-border-color: var(--estatego-blue);
	--bs-btn-hover-bg: #1538b8;
	--bs-btn-hover-border-color: #1538b8;
	--bs-btn-active-bg: #102c8f;
	--bs-btn-active-border-color: #102c8f;
	background-image: linear-gradient(120deg, #1515cc, var(--estatego-blue-2));
	border: 0;
}

/* ---------- login, sign-up, password pages (Django templates, .form-accounts): always light, EstateGo look ---------- */
body.text-center,
body:has(.form-accounts) {
	color-scheme: light;
	--bs-body-bg: #f7f8fc !important;
	--bs-body-color: #0b1530 !important;
	--bs-body-color-rgb: 11, 21, 48 !important;
	--bs-border-color: rgba(11, 21, 48, .14) !important;
	min-height: 100vh;
	color: #0b1530 !important;
	background:
		radial-gradient(900px 600px at 0% 0%, rgba(30, 121, 250, .16), transparent 60%),
		radial-gradient(800px 600px at 100% 100%, rgba(21, 21, 204, .12), transparent 60%),
		#f7f8fc !important;
}

body.text-center .form-control,
body.text-center .form-floating,
body:has(.form-accounts) .form-control,
body:has(.form-accounts) .form-floating {
	--bs-body-bg: #fff !important;
	--bs-body-color: #0b1530 !important;
}

body.text-center p,
body:has(.form-accounts) p {
	color: #475069 !important;
}

.form-accounts {
	min-width: min(360px, 92vw);
	max-width: 400px;
	padding: 36px 32px 30px;
	border-radius: 28px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 1px 2px rgba(11, 21, 48, .05), 0 24px 60px -20px rgba(11, 21, 48, .25);
	backdrop-filter: blur(8px);
}

/* no „by Paperless-ngx“ under the logo — EstateGo DMS is the name */
.form-accounts .byline,
.form-accounts .byline + *,
.form-accounts .d-flex:has(> .byline) {
	display: none !important;
}

.form-accounts img.logo {
	display: block;
	width: 112px !important;
	height: auto;
	margin: 0 auto 22px !important;
}

/* the Paperless word mark (without own logo) and the own logo image */
.form-accounts svg.logo .text {
	fill: #0b1530 !important;
}

.form-accounts img.logo,
.form-accounts .logo {
	max-width: 112px;
	max-height: 112px;
	border-radius: 24px;
}

.form-accounts .form-floating > .form-control {
	border-radius: 14px !important;
	margin-bottom: 10px;
}

.form-accounts .btn-lg {
	min-height: 52px;
	box-shadow: 0 12px 26px -10px rgba(25, 71, 227, .6);
}

/* „EstateGo Login“ (single sign-on via Keycloak) — below the card, as a clear second way */
body.text-center .btn-secondary,
body:has(.form-accounts) .btn-secondary {
	--bs-btn-bg: #fff;
	--bs-btn-color: #0b1530;
	--bs-btn-border-color: rgba(11, 21, 48, .15);
	--bs-btn-hover-bg: #eef2fb;
	--bs-btn-hover-color: #0b1530;
	--bs-btn-hover-border-color: rgba(11, 21, 48, .25);
	min-height: 48px;
	color: var(--estatego-blue) !important;
	background: #fff !important;
	border: 1.5px solid rgba(25, 71, 227, .35) !important;
	box-shadow: 0 8px 20px -12px rgba(11, 21, 48, .3);
}

body.text-center .btn-secondary:hover,
body:has(.form-accounts) .btn-secondary:hover {
	background: #eef2fb !important;
}

/* ---------- app (Angular): top bar takes the EstateGo blue through --pngx-primary (like the EstateGo header) ---------- */
.sidebar .nav-link.active,
.sidebar .nav-link:hover {
	color: var(--estatego-blue) !important;
}

.card,
.modal-content {
	border-radius: 18px;
}

/* ---------- loading screen after login (Django index.html): EstateGo DMS instead of the Paperless logo ---------- */
.app-loader svg.logo,
.app-loader h6,
.app-loader .warning a {
	display: none !important;
}

.app-loader::before {
	content: '';
	display: block;
	width: 96px;
	height: 96px;
	margin: 0 auto 18px;
	border-radius: 22px;
	background: url('/estatego-brand/estatego-dms-logo.png') center / cover no-repeat;
	animation: estatego-pulse 1.6s ease-in-out infinite;
}

.app-loader::after {
	content: 'EstateGo DMS wird geladen \2026';
	display: block;
	font-family: 'Plus Jakarta Sans Variable', system-ui, sans-serif;
	font-size: 15px;
	font-weight: 600;
	color: var(--bs-secondary-color, #475069);
}

@keyframes estatego-pulse {
	0%, 100% { opacity: .55; transform: scale(.97); }
	50% { opacity: 1; transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
	.app-loader::before {
		animation: none;
	}
}

/* ---------- no way out to the Paperless project (Patrick 13.10.: „die ganzen Links zeigen auf ihre Webseiten“) ---------- */
/* every link to the project's documentation, GitHub and releases — side bar, user menu, „Read more“, help texts */
a[href*="paperless-ngx.com"],
a[href*="github.com/paperless-ngx"],
a[href*="paperless-ngx.com"] + i-bs {
	display: none !important;
}

/* the side bar entries that only held such a link (documentation, version → GitHub, update check) */
li.nav-item:has(> a[href*="paperless-ngx.com"]),
li.nav-item:has(a[href*="github.com/paperless-ngx"]),
.version-check {
	display: none !important;
}

/* „by Paperless-ngx“ under the name in the top bar */
.navbar-brand .byline {
	display: none !important;
}

/* dashboard welcome box („Paperless-ngx is running! … community“, Paperless mark) */
pngx-welcome-widget,
.welcome-widget,
pngx-brand-mark.welcome-watermark {
	display: none !important;
}

/* own logo in the top bar: rounded like the app icon */
.navbar-brand img.brand-logo {
	height: 2.1rem;
	width: auto;
	border-radius: 9px;
}

/* ---------- im EstateGo-Rahmen: ohne eigene Kopfleiste (dms-rahmen.js setzt html.in-estatego) ----------
   Suche, Glocke und Benutzermenü hat EstateGo direkt darüber (EstateGo-Suche findet DMS-Dokumente, die Glocke
   meldet Ablagen und Fristen). Einstellungen bleiben in der Seitenleiste. Auf schmalen Bildschirmen bleibt die
   Leiste, sonst fehlte der Knopf für das Menü. */
@media (min-width: 768px) {
	html.in-estatego nav.navbar.fixed-top {
		display: none !important;
	}

	html.in-estatego .sidebar {
		padding-top: 0 !important;
	}

	html.in-estatego main {
		padding-top: 16px !important;
	}
}
