Enhance dark mode support and improve mobile layout with theme-aware styles and optimizations
This commit is contained in:
+48
-17
@@ -21,6 +21,28 @@
|
|||||||
--ui-radius: 12px;
|
--ui-radius: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--ui-bg: #0f172a;
|
||||||
|
--ui-bg-accent: #1e293b;
|
||||||
|
--ui-surface: #1e293b;
|
||||||
|
--ui-surface-soft: #25314a;
|
||||||
|
--ui-border: #334155;
|
||||||
|
--ui-text: #f1f5f9;
|
||||||
|
--ui-text-muted: #94a3b8;
|
||||||
|
--ui-title: #ffffff;
|
||||||
|
--ui-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.4);
|
||||||
|
--ui-shadow-md: 0 10px 24px rgba(0, 0, 0, 0.5);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Make inputs visible in dark mode */
|
||||||
|
input, select, textarea {
|
||||||
|
background-color: var(--ui-surface-soft) !important;
|
||||||
|
color: var(--ui-text) !important;
|
||||||
|
border-color: var(--ui-border) !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
font-family: "Manrope", "Segoe UI", "Noto Sans", sans-serif;
|
font-family: "Manrope", "Segoe UI", "Noto Sans", sans-serif;
|
||||||
color: var(--ui-text);
|
color: var(--ui-text);
|
||||||
@@ -92,7 +114,7 @@ span {
|
|||||||
.card-header,
|
.card-header,
|
||||||
.modal-header,
|
.modal-header,
|
||||||
thead th {
|
thead th {
|
||||||
background: linear-gradient(180deg, #f7fafd, #edf3f8) !important;
|
background: var(--ui-surface-soft) !important;
|
||||||
border-bottom: 1px solid var(--ui-border) !important;
|
border-bottom: 1px solid var(--ui-border) !important;
|
||||||
color: var(--ui-title) !important;
|
color: var(--ui-title) !important;
|
||||||
}
|
}
|
||||||
@@ -107,10 +129,10 @@ input[type="email"],
|
|||||||
input[type="date"],
|
input[type="date"],
|
||||||
select {
|
select {
|
||||||
border-radius: 10px !important;
|
border-radius: 10px !important;
|
||||||
border: 1px solid #cad5e0 !important;
|
border: 1px solid var(--ui-border) !important;
|
||||||
min-height: 40px;
|
min-height: 40px;
|
||||||
color: var(--ui-text) !important;
|
color: var(--ui-text) !important;
|
||||||
background-color: #fff !important;
|
background-color: var(--ui-surface) !important;
|
||||||
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -131,11 +153,13 @@ select:focus {
|
|||||||
.table th,
|
.table th,
|
||||||
.table td {
|
.table td {
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
border-color: #dee6ee !important;
|
border-color: var(--ui-border) !important;
|
||||||
|
background-color: var(--ui-surface) !important;
|
||||||
|
color: var(--ui-text) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.table-striped > tbody > tr:nth-of-type(odd) {
|
.table-striped > tbody > tr:nth-of-type(odd) {
|
||||||
background-color: #f8fbff;
|
background-color: var(--ui-surface-soft) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.alert {
|
.alert {
|
||||||
@@ -144,8 +168,10 @@ select:focus {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navbar {
|
.navbar {
|
||||||
border-bottom: 1px solid #273341;
|
border-bottom: 1px solid var(--ui-border);
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
|
-webkit-backdrop-filter: blur(10px);
|
||||||
|
backdrop-filter: blur(10px);
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand {
|
.navbar-brand {
|
||||||
@@ -164,17 +190,9 @@ select:focus {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Edit and generate buttons with black text for better visibility */
|
/* Edit and generate buttons with theme-aware text for better visibility */
|
||||||
.edit-button {
|
.edit-button, .duplicate-button, .generate-qr-button {
|
||||||
color: black !important; /* Override any existing color */
|
color: var(--ui-text) !important; /* Override any existing color */
|
||||||
}
|
|
||||||
|
|
||||||
.duplicate-button {
|
|
||||||
color: black !important; /* Override any existing color */
|
|
||||||
}
|
|
||||||
|
|
||||||
.generate-qr-button {
|
|
||||||
color: black !important; /* Override any existing color */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ausleihen {
|
.ausleihen {
|
||||||
@@ -806,3 +824,16 @@ body.table-view .item-card .actions {
|
|||||||
font-size: 0.84rem !important;
|
font-size: 0.84rem !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* iOS and Mobile optimization fixes */
|
||||||
|
html, body {
|
||||||
|
-webkit-text-size-adjust: 100%;
|
||||||
|
-webkit-tap-highlight-color: transparent;
|
||||||
|
}
|
||||||
|
.scrollable-container, .items-container {
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
}
|
||||||
|
@supports (padding-bottom: env(safe-area-inset-bottom)) {
|
||||||
|
.fixed-bottom, .modal-footer {
|
||||||
|
padding-bottom: env(safe-area-inset-bottom);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
+43
-13
@@ -10,10 +10,12 @@
|
|||||||
<html lang="de" data-module="{{ CURRENT_MODULE }}">
|
<html lang="de" data-module="{{ CURRENT_MODULE }}">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes, viewport-fit=cover">
|
||||||
<meta name="mobile-web-app-capable" content="yes">
|
<meta name="mobile-web-app-capable" content="yes">
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
||||||
|
<meta name="theme-color" content="#2c3e50" media="(prefers-color-scheme: light)">
|
||||||
|
<meta name="theme-color" content="#1a252f" media="(prefers-color-scheme: dark)">
|
||||||
<meta name="csrf-token" content="{{ csrf_token }}">
|
<meta name="csrf-token" content="{{ csrf_token }}">
|
||||||
<title>{% block title %}Inventarsystem{% endblock %}</title>
|
<title>{% block title %}Inventarsystem{% endblock %}</title>
|
||||||
{% block head %}
|
{% block head %}
|
||||||
@@ -102,6 +104,9 @@
|
|||||||
--module-accent-color: #3498db;
|
--module-accent-color: #3498db;
|
||||||
--module-accent-light: rgba(52, 152, 219, 0.1);
|
--module-accent-light: rgba(52, 152, 219, 0.1);
|
||||||
--module-brand-icon: "📦";
|
--module-brand-icon: "📦";
|
||||||
|
--page-bg-gradient: linear-gradient(180deg, #f2f5f8, #e7edf4);
|
||||||
|
--page-bg-overlay1: rgba(86, 145, 200, 0.08);
|
||||||
|
--page-bg-overlay2: rgba(52, 98, 150, 0.09);
|
||||||
}
|
}
|
||||||
|
|
||||||
html[data-module="library"] {
|
html[data-module="library"] {
|
||||||
@@ -112,17 +117,35 @@
|
|||||||
--module-brand-icon: "📚";
|
--module-brand-icon: "📚";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--module-primary-color: #1a252f;
|
||||||
|
--module-primary-light: #2c3e50;
|
||||||
|
--module-accent-color: #2980b9;
|
||||||
|
--module-brand-icon: "📦";
|
||||||
|
--page-bg-gradient: linear-gradient(180deg, #0f172a, #1e293b);
|
||||||
|
--page-bg-overlay1: rgba(56, 189, 248, 0.05);
|
||||||
|
--page-bg-overlay2: rgba(59, 130, 246, 0.06);
|
||||||
|
}
|
||||||
|
html[data-module="library"] {
|
||||||
|
--module-primary-color: #4a354d;
|
||||||
|
--module-primary-light: #614666;
|
||||||
|
--module-accent-color: #8e44ad;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Global styles */
|
/* Global styles */
|
||||||
body {
|
body {
|
||||||
font-family: "Manrope", "Segoe UI", "Noto Sans", sans-serif;
|
font-family: "Manrope", "Segoe UI", "Noto Sans", sans-serif;
|
||||||
background:
|
background:
|
||||||
radial-gradient(1200px 500px at 10% -10%, rgba(86, 145, 200, 0.08), transparent 55%),
|
radial-gradient(1200px 500px at 10% -10%, var(--page-bg-overlay1), transparent 55%),
|
||||||
radial-gradient(900px 420px at 95% 0%, rgba(52, 98, 150, 0.09), transparent 52%),
|
radial-gradient(900px 420px at 95% 0%, var(--page-bg-overlay2), transparent 52%),
|
||||||
linear-gradient(180deg, #f2f5f8, #e7edf4);
|
var(--page-bg-gradient);
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
padding-bottom: 30px;
|
padding-bottom: auto; /* Fallback for dynamic calculation */
|
||||||
color: #1f2d3d;
|
padding-bottom: env(safe-area-inset-bottom, 30px);
|
||||||
|
color: var(--ui-text, #1f2d3d);
|
||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
@@ -135,11 +158,13 @@
|
|||||||
background-color: var(--module-primary-color) !important;
|
background-color: var(--module-primary-color) !important;
|
||||||
position: sticky;
|
position: sticky;
|
||||||
top: 0;
|
top: 0;
|
||||||
|
padding-top: env(safe-area-inset-top, 0); /* iOS Safe Area */
|
||||||
z-index: 1900;
|
z-index: 1900;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar .container-fluid {
|
.navbar .container-fluid {
|
||||||
gap: 10px;
|
gap: 10px;
|
||||||
|
padding-bottom: env(safe-area-inset-bottom, 0); /* Fallback */
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand {
|
.navbar-brand {
|
||||||
@@ -351,18 +376,19 @@
|
|||||||
|
|
||||||
/* Dropdown menus - consistent with system design */
|
/* Dropdown menus - consistent with system design */
|
||||||
.dropdown-menu {
|
.dropdown-menu {
|
||||||
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
|
box-shadow: var(--ui-shadow-md);
|
||||||
border: 1px solid #dee2e6;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
padding: 8px 0;
|
padding: 8px 0;
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
|
background-color: var(--ui-surface);
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropdown-item {
|
.dropdown-item {
|
||||||
padding: 10px 16px;
|
padding: 10px 16px;
|
||||||
font-size: 0.9rem;
|
font-size: 0.9rem;
|
||||||
color: #495057;
|
color: var(--ui-text);
|
||||||
transition: all 0.2s ease;
|
transition: all 0.2s ease;
|
||||||
border: none;
|
border: none;
|
||||||
background: none;
|
background: none;
|
||||||
@@ -370,8 +396,8 @@
|
|||||||
|
|
||||||
.dropdown-item:hover,
|
.dropdown-item:hover,
|
||||||
.dropdown-item:focus {
|
.dropdown-item:focus {
|
||||||
background-color: #f8f9fa;
|
background-color: var(--ui-surface-soft);
|
||||||
color: #007bff;
|
color: var(--module-accent-color);
|
||||||
transform: translateX(2px);
|
transform: translateX(2px);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -434,12 +460,16 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.nav-item.dropdown .dropdown-toggle {
|
.nav-item.dropdown .dropdown-toggle {
|
||||||
padding: 8px 12px;
|
padding: 12px 12px;
|
||||||
|
min-height: 48px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-toggler {
|
.navbar-toggler {
|
||||||
padding: 0.5rem 0.65rem;
|
padding: 0.6rem 0.8rem;
|
||||||
border-width: 2px;
|
border-width: 2px;
|
||||||
|
min-height: 48px;
|
||||||
|
min-width: 48px;
|
||||||
|
margin-top: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.function-search-wrap {
|
.function-search-wrap {
|
||||||
|
|||||||
+22
-22
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
/* Calendar styles for detailed view */
|
/* Calendar styles for detailed view */
|
||||||
.calendar-wrapper {
|
.calendar-wrapper {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
border: 1px solid #dbe3ee;
|
border: 1px solid #dbe3ee;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
height: 34px;
|
height: 34px;
|
||||||
border: 1px solid #dbe3ee;
|
border: 1px solid #dbe3ee;
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
color: #334155;
|
color: #334155;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
@@ -109,7 +109,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.cal-cell.selected.has-booking::after {
|
.cal-cell.selected.has-booking::after {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
}
|
}
|
||||||
|
|
||||||
.calendar-day-details {
|
.calendar-day-details {
|
||||||
@@ -138,7 +138,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.cal-booking-item {
|
.cal-booking-item {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
border: 1px solid #dbe3ee;
|
border: 1px solid #dbe3ee;
|
||||||
border-left: 3px solid #2563eb;
|
border-left: 3px solid #2563eb;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
@@ -296,7 +296,7 @@
|
|||||||
#code-search {
|
#code-search {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1469,7 +1469,7 @@
|
|||||||
const badgeText = entry.type === 'repair' ? 'Repariert' : 'Schaden';
|
const badgeText = entry.type === 'repair' ? 'Repariert' : 'Schaden';
|
||||||
const metaLine = entry.meta ? `<div style="font-size:0.84rem;color:#4b5563;">${escapeHtml(entry.meta)}</div>` : '';
|
const metaLine = entry.meta ? `<div style="font-size:0.84rem;color:#4b5563;">${escapeHtml(entry.meta)}</div>` : '';
|
||||||
return `
|
return `
|
||||||
<div style="border:1px solid #dbe3ee;border-radius:8px;padding:10px;background:#fff;display:grid;gap:6px;">
|
<div style="border:1px solid var(--ui-border);border-radius:8px;padding:10px;background:var(--ui-surface);display:grid;gap:6px;">
|
||||||
<div style="display:flex;flex-wrap:wrap;gap:8px;align-items:center;">
|
<div style="display:flex;flex-wrap:wrap;gap:8px;align-items:center;">
|
||||||
<span style="display:inline-block;padding:2px 8px;border-radius:999px;font-size:0.75rem;font-weight:700;${badgeStyle}">${badgeText}</span>
|
<span style="display:inline-block;padding:2px 8px;border-radius:999px;font-size:0.75rem;font-weight:700;${badgeStyle}">${badgeText}</span>
|
||||||
<span style="font-size:0.84rem;color:#475569;">${entry.dateLabel}</span>
|
<span style="font-size:0.84rem;color:#475569;">${entry.dateLabel}</span>
|
||||||
@@ -2808,7 +2808,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
||||||
@@ -2833,8 +2833,8 @@
|
|||||||
.filter-group {
|
.filter-group {
|
||||||
position: relative;
|
position: relative;
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
}
|
}
|
||||||
@@ -2868,7 +2868,7 @@
|
|||||||
max-height: 300px;
|
max-height: 300px;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
|
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
|
||||||
z-index: 100;
|
z-index: 100;
|
||||||
@@ -2957,7 +2957,7 @@
|
|||||||
#code-search {
|
#code-search {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3086,8 +3086,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.item-card {
|
.item-card {
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
@@ -3194,7 +3194,7 @@
|
|||||||
.form-group textarea {
|
.form-group textarea {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
@@ -3941,7 +3941,7 @@
|
|||||||
|
|
||||||
/* Calendar Styles - Optimized & Mobile Friendly */
|
/* Calendar Styles - Optimized & Mobile Friendly */
|
||||||
.calendar-wrapper {
|
.calendar-wrapper {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
border: 1px solid #e5e7eb;
|
border: 1px solid #e5e7eb;
|
||||||
@@ -3954,7 +3954,7 @@
|
|||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
border-bottom: 1px solid #f3f4f6;
|
border-bottom: 1px solid #f3f4f6;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3979,7 +3979,7 @@
|
|||||||
.calendar-grid {
|
.calendar-grid {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: repeat(7, 1fr);
|
grid-template-columns: repeat(7, 1fr);
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
gap: 5px;
|
gap: 5px;
|
||||||
}
|
}
|
||||||
@@ -4041,7 +4041,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.cal-cell.selected.has-booking::after {
|
.cal-cell.selected.has-booking::after {
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
}
|
}
|
||||||
|
|
||||||
.calendar-day-details {
|
.calendar-day-details {
|
||||||
@@ -4069,7 +4069,7 @@
|
|||||||
|
|
||||||
.cal-booking-item {
|
.cal-booking-item {
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
border: 1px solid #e5e7eb;
|
border: 1px solid #e5e7eb;
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
margin-bottom: 8px;
|
margin-bottom: 8px;
|
||||||
@@ -4436,7 +4436,7 @@ function openItemQuick(id){
|
|||||||
}
|
}
|
||||||
|
|
||||||
.filter-group {
|
.filter-group {
|
||||||
background: #ffffff;
|
background: var(--ui-surface);
|
||||||
border: 1px solid #cfd8e3;
|
border: 1px solid #cfd8e3;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
padding: 12px;
|
padding: 12px;
|
||||||
@@ -4484,7 +4484,7 @@ function openItemQuick(id){
|
|||||||
}
|
}
|
||||||
|
|
||||||
.clear-filter {
|
.clear-filter {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
color: #495868;
|
color: #495868;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4493,7 +4493,7 @@ function openItemQuick(id){
|
|||||||
border: 1px solid #cfd8e3;
|
border: 1px solid #cfd8e3;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
box-shadow: 0 8px 20px rgba(20, 35, 60, 0.12);
|
box-shadow: 0 8px 20px rgba(20, 35, 60, 0.12);
|
||||||
background: #ffffff;
|
background: var(--ui-surface);
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -55,7 +55,7 @@
|
|||||||
max-width: 980px;
|
max-width: 980px;
|
||||||
margin: 0 auto 18px;
|
margin: 0 auto 18px;
|
||||||
border: 1px solid #dbe3ee;
|
border: 1px solid #dbe3ee;
|
||||||
background: #ffffff;
|
background: var(--ui-surface);
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
padding: 14px;
|
padding: 14px;
|
||||||
box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
|
box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
|
||||||
@@ -138,8 +138,8 @@
|
|||||||
.filter-group {
|
.filter-group {
|
||||||
position: relative;
|
position: relative;
|
||||||
min-width: 200px;
|
min-width: 200px;
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
}
|
}
|
||||||
@@ -173,7 +173,7 @@
|
|||||||
max-height: 300px;
|
max-height: 300px;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
|
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
|
||||||
z-index: 100;
|
z-index: 100;
|
||||||
@@ -262,7 +262,7 @@
|
|||||||
#code-search {
|
#code-search {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -391,8 +391,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.item-card {
|
.item-card {
|
||||||
background-color: #fff;
|
background-color: var(--ui-surface);
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
@@ -632,7 +632,7 @@
|
|||||||
.form-group textarea {
|
.form-group textarea {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
@@ -703,7 +703,7 @@
|
|||||||
.filter-inputs {
|
.filter-inputs {
|
||||||
margin: 20px 0;
|
margin: 20px 0;
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
background-color: #f8f9fa;
|
background-color: #f8f9fa;
|
||||||
}
|
}
|
||||||
@@ -723,7 +723,7 @@
|
|||||||
.filter-dropdown-select {
|
.filter-dropdown-select {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
border: 1px solid #ddd;
|
border: 1px solid var(--ui-border);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
}
|
}
|
||||||
@@ -2006,7 +2006,7 @@
|
|||||||
}
|
}
|
||||||
/* Calendar styles for detailed view */
|
/* Calendar styles for detailed view */
|
||||||
.calendar-wrapper {
|
.calendar-wrapper {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
border: 1px solid #dbe3ee;
|
border: 1px solid #dbe3ee;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
@@ -2028,7 +2028,7 @@
|
|||||||
height: 34px;
|
height: 34px;
|
||||||
border: 1px solid #dbe3ee;
|
border: 1px solid #dbe3ee;
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
color: #334155;
|
color: #334155;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
@@ -2109,7 +2109,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.cal-cell.selected.has-booking::after {
|
.cal-cell.selected.has-booking::after {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
}
|
}
|
||||||
|
|
||||||
.calendar-day-details {
|
.calendar-day-details {
|
||||||
@@ -2138,7 +2138,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.cal-booking-item {
|
.cal-booking-item {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
border: 1px solid #dbe3ee;
|
border: 1px solid #dbe3ee;
|
||||||
border-left: 3px solid #2563eb;
|
border-left: 3px solid #2563eb;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
@@ -4361,7 +4361,7 @@ document.addEventListener('DOMContentLoaded', ()=>{
|
|||||||
const badgeText = entry.type === 'repair' ? 'Repariert' : 'Schaden';
|
const badgeText = entry.type === 'repair' ? 'Repariert' : 'Schaden';
|
||||||
const metaLine = entry.meta ? `<div style="font-size:0.84rem;color:#4b5563;">${escapeHtml(entry.meta)}</div>` : '';
|
const metaLine = entry.meta ? `<div style="font-size:0.84rem;color:#4b5563;">${escapeHtml(entry.meta)}</div>` : '';
|
||||||
return `
|
return `
|
||||||
<div style="border:1px solid #dbe3ee;border-radius:8px;padding:10px;background:#fff;display:grid;gap:6px;">
|
<div style="border:1px solid var(--ui-border);border-radius:8px;padding:10px;background:var(--ui-surface);display:grid;gap:6px;">
|
||||||
<div style="display:flex;flex-wrap:wrap;gap:8px;align-items:center;">
|
<div style="display:flex;flex-wrap:wrap;gap:8px;align-items:center;">
|
||||||
<span style="display:inline-block;padding:2px 8px;border-radius:999px;font-size:0.75rem;font-weight:700;${badgeStyle}">${badgeText}</span>
|
<span style="display:inline-block;padding:2px 8px;border-radius:999px;font-size:0.75rem;font-weight:700;${badgeStyle}">${badgeText}</span>
|
||||||
<span style="font-size:0.84rem;color:#475569;">${entry.dateLabel}</span>
|
<span style="font-size:0.84rem;color:#475569;">${entry.dateLabel}</span>
|
||||||
@@ -5500,7 +5500,7 @@ document.addEventListener('DOMContentLoaded', ()=>{
|
|||||||
}
|
}
|
||||||
|
|
||||||
.filter-group {
|
.filter-group {
|
||||||
background: #ffffff;
|
background: var(--ui-surface);
|
||||||
border: 1px solid #cfd8e3;
|
border: 1px solid #cfd8e3;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
padding: 12px;
|
padding: 12px;
|
||||||
@@ -5548,7 +5548,7 @@ document.addEventListener('DOMContentLoaded', ()=>{
|
|||||||
}
|
}
|
||||||
|
|
||||||
.clear-filter {
|
.clear-filter {
|
||||||
background: #fff;
|
background: var(--ui-surface);
|
||||||
color: #495868;
|
color: #495868;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5557,7 +5557,7 @@ document.addEventListener('DOMContentLoaded', ()=>{
|
|||||||
border: 1px solid #cfd8e3;
|
border: 1px solid #cfd8e3;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
box-shadow: 0 8px 20px rgba(20, 35, 60, 0.12);
|
box-shadow: 0 8px 20px rgba(20, 35, 60, 0.12);
|
||||||
background: #ffffff;
|
background: var(--ui-surface);
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user