:root .theme_alert{
	--color__red--100: #ff8da3;
	--color__red--200: #fe718e;
	--color__red--300: #fd566c;
	--color__red--400: #fc273f;
	--color__red--500: #d31b3d;
	--color__red--600: #aa1834;
	--color__red--800: #641432;
	--color__blue--100: #acc2dd;
	--color__blue--500: #42638c;
	--color__blue--600: #2e4869;
	--color__blue--700: #172f48;
	--color__blue--800: #031f30;
	--color__blue--900: #011523;
	--color__purple--100-10:#F7F6FF;
	--color__purple--100: #c2b4fc;
	--color__purple--200: #AE97FD;
	--color__purple--300: #9977FE;
	--color__purple--400: #8d5fff;
	--color__purple--500: #6C47CF;
	--color__purple--600: #55419e;
	--color__purple--800: #26224c;
	--color__white: #fff;
	--color__grey--100: #f7f7f7;
	--color__grey--200: #eeeeee;
	--color__grey--300: #e5e5e4;
	--color__grey--400: #d7d8d6;
	--color__grey--500: #babcbc;
	--color__grey--600: #9c9ea0;
	--color__grey--700: #717376;
	--color__grey--800: #53565a;
	--color__grey--900: #404346;
	--spacing__8: 0.5rem;
    --spacing__12: 0.75rem;
    --spacing__15: 0.938rem;
    --spacing__15--double: 1.876rem;
    --spacing__15--negative: -0.938rem;
    --spacing__18: 1.125rem;
    --spacing__24: 1.5rem;
    --spacing__32: 2rem;
    --spacing__36: 2.25rem;
    --spacing__48: 3rem;
    --spacing__60: 3.75rem;
    --spacing__72: 4.5rem;
    --spacing__87: 5.438rem;
    --spacing__96: 6rem;
    --spacing__120: 7.5rem;
	--font__bold: "secpro__bold", Tahoma, Verdana, sans-serif;
    --font__regular: "secpro__regular", Tahoma, Verdana, sans-serif;
}

header {
	background-color: var(--color__blue--800);
	color: white;
	/*height: 150px;*/
	display:block;
	box-sizing: border-box;
	border-radius: 5px;
	position:fixed;
	width:100%;
	z-index: 1000 !important;
}

/* header .header_box ist spezifischer als .container (das inline-block setzt) */
header .header_box {
	background-repeat: repeat-x;
	margin: 3px;
	max-width: 99% !important;
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	padding: 6px 4px;
}

.header-auth {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	color: #ccc;
	white-space: nowrap;
	text-align: right;
}

body {
	/*background-color: white;*/
	background-color: var(--color__grey--500);
	font-family: verdana;
	font-size: 13px;
	margin: 3px;
}

/*
 * Der Footer ist "position: fixed" und seine tatsächliche Höhe hängt vom
 * Textumbruch (Firmenname, Kontaktzeilen, Hinweistext) und vom aktuellen
 * responsive Breakpoint ab. Ein fester Pixelwert für main.padding-bottom
 * passt daher nur zufällig und führt bei längeren/umgebrochenen Inhalten
 * dazu, dass der Footer das Seitenende überdeckt.
 *
 * --app-footer-height wird von public/js/layout-metrics.js anhand der real
 * gerenderten Footer-Höhe gesetzt (inkl. Sicherheitsabstand). Der Wert hier
 * ist nur der Fallback, solange JavaScript noch nicht gelaufen ist bzw.
 * deaktiviert ist – bewusst großzügig bemessen, damit im Zweifel lieber
 * etwas zu viel als zu wenig Abstand entsteht.
 */
:root {
	--app-footer-height: 130px;
}

main {
	padding-top:151px;
	padding-bottom: var(--app-footer-height);
}
footer 
{
	position: fixed;
    left: 0px;
    bottom: 0px;
    width: 100%;
    background-color: var(--color__blue--800);
    color: var(--color__white);
    text-align: center;
    padding: 5px;
	z-index: 1000;
}
a.foot_links:link, a.foot_links:visited
{
	color: white;
}

p.inboxed {
	border: 1px solid black;
	padding-left: 5px;
}

.container {
display: inline-block;
width:95%;
}

.logo { margin: 0; line-height: 0; }

.tag { 
	position: absolute;
	right: 15px;
	top: 51px;
}

.tagfoot { 
	#position: absolute;
	#right: 15px;
	#top: 38px;
	display:block;
	float:right;
}
.datenschutz {
	display:block;
	float:left;
	font-size: smaller;
}

.ui.checkbox.read-only {
	/*background-color: #d4d4d5 !important;*/
	filter: sepia(100%) brightness(80%) hue-rotate(170deg) saturate(70%);
}

fieldset.form_box_small {
	width: 311px;
}

.ui.dropdown {
    border-radius: .28571429rem !important; /* Standard Semantic/Fomantic Wert */
}

.ui.filter_bar_checkbox {
	margin-top: 1em !important;
}
.ui.filter_checkbox {
	margin-top: 1em !important;
}
.form_box fieldset {
	padding: 1em;
    font-size: 12px;
    font-family: Verdana,sans-serif;
    border: 1px solid #000000;
	display: block;
    -webkit-margin-start: 2px;
    -webkit-margin-end: 2px;
    -webkit-padding-before: 0.35em;
    -webkit-padding-start: 0.75em;
    -webkit-padding-end: 0.75em;
    -webkit-padding-after: 0.625em;
    min-width: -webkit-min-content;
	margin-bottom:10px;
}

.blinkbox {
	background: yellow;
}

.form_box legend {
    padding: 0.2em 0.5em;
    border: 1px solid #000000;
    color: #000000;
    font-size: 90%;
    text-align: left;
}
.form_box label {
    float: left;
    width: 125px;
    margin-right: 5px;
    padding-top: 8px;
    text-align: left;
    font-weight: bold;
    color: #000000;
	
}
#dienstleisterTable tbody tr.disabled {
  pointer-events: none;
  opacity: .6;
}

.legenddis{
	color: rgb(170, 170, 170) !important;
}
.radio_label {
	width: 240px !important;
}

.form_mod input[disabled], 
.form_mod input[readonly] {
	cursor: not-allowed;
}

.form_box input[disabled], 
.form_box input[readonly] {
    color: -internal-light-dark(rgb(84, 84, 84), rgb(170, 170, 170));
    font-family: Arial,Helvetica;
    font-size: 12px;
    border: 1px solid rgba(118, 118, 118, 0.3);
    padding: 4px;
    background-color:  -internal-light-dark(rgba(239, 239, 239, 0.3), rgba(59, 59, 59, 0.3));
    line-height: 18px;
    vertical-align: middle;
	cursor: not-allowed;
}

.form_box input {
    color: #000000;
    font-family: Arial,Helvetica;
    font-size: 12px;
    border: 1px solid #000000;
    padding: 4px;
    background-color: #F0F4FF;
    line-height: 18px;
    vertical-align: middle;
	cursor: default;
	
}
.form_box textarea[read-only] {
	cursor: not-allowed;
}
.form_box textarea {
    color: #000000;
    font-family: Arial,Helvetica;
    font-size: 12px;
    border: 1px solid #000000;
    padding: 4px;
    background-color: #F0F4FF;
    width: 171px;
    height: 38px;
	margin-bottom: 3px;
}

.form_box fieldset {
	padding: 1em;
    font-size: 12px;
    font-family: Verdana,sans-serif;
    border: 1px solid #000000;
	display: block;
    -webkit-margin-start: 2px;
    -webkit-margin-end: 2px;
    -webkit-padding-before: 0.35em;
    -webkit-padding-start: 0.75em;
    -webkit-padding-end: 0.75em;
    -webkit-padding-after: 0.625em;
    min-width: -webkit-min-content;
	margin-bottom:10px;
}
.blinkbox {
	background: yellow;
}
 .circle-with-txt {
    position: relative;
    color: white;
    font-size: 12px;
    font-weight: bold;
    width: 40px;
    height: 40px;
  }
  .txt {
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 16px;
  }

.table-scroll-wrapper {
    max-height: 100%;
    overflow-y: auto;
    overflow-x: auto;
}

/* Tabellenkopf fixieren */
.table-scroll-wrapper thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #fff;
}

/* optional schöner */
.table-scroll-wrapper table {
    margin-top: 0;
}


@keyframes flashBlink  {
 0%, 100%   { background-color: transparent; }
  50%        { background-color: #ebbe06; }
}

.flash-row {
  animation: flashBlink 1s ease-in-out;
  animation-iteration-count: 3;
}

/*
 * #DivHead ist der gemeinsame Content-Wrapper ALLER Seiten
 * (resources/views/layouts/toolshub.blade.php). Früher stand hier
 * "height: 75vh; overflow-y: auto;", was aber nur für die
 * Dienstleister-Tabellenübersicht gedacht war: Auf jeder anderen Seite mit
 * main.form-Editor, langen Formularen etc. wurde der Inhalt dadurch in eine
 * intern scrollende Box mit fester 75vh-Höhe eingesperrt – ohne auffälligen
 * Scroll-Hinweis. Das sah aus, als würde der (fixierte) Footer das Seitenende
 * verdecken, tatsächlich war der Rest des Inhalts nur unterhalb des
 * 75vh-Ausschnitts "abgeschnitten" und nur durch internes Scrollen im Kasten
 * erreichbar. #DivHead bekommt daher bewusst KEIN height/overflow mehr,
 * damit jede Seite normal in ihrer natürlichen Höhe fließt und die Seite
 * selbst (statt eines inneren Kastens) scrollt.
 *
 * Die "scrollende App-Shell"-Optik (Filterleiste bleibt oben sichtbar,
 * Tabelle scrollt intern) bleibt erhalten, ist jetzt aber gezielt auf
 * #dienstleister_page beschränkt.
 */
#dienstleister_page {
    display: flex;
    flex-direction: column;
    height: 75vh;       /* Fensterhöhe – nur für diese Tabellenübersicht */
    min-height: 0;       /* wichtig bei flex + overflow */
    overflow-y: auto;
}

/* Grid mit Filterleiste: bleibt oben, Höhe nach Inhalt */
#dienstleister_page > .ui.center.aligned.celled.grid {
    flex: 0 0 auto;
}

/* Wrapper um die Tabelle: nimmt den Rest und scrollt */
.table-scroll-wrapper {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

/* Sticky Kopfzeile der Tabelle */
.table-scroll-wrapper table thead th {
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 2;
}

/* Optional: zweite Header-Zeile (Dienstleistungen) etwas hervorheben */
.dienstleistung-header th {
    background: #555 !important;
    color: #fff !important;
}


/* ── partnerModal: feste Höhe 85 vh, Header/Footer bleiben beim Scrollen sichtbar ───
   Fomantic setzt beim Öffnen ein Inline-Style "display: ... !important" auf das
   Modal-Element selbst (per transition.js ermittelter Anzeigetyp, hier "grid") –
   das "display" selbst kann daher nicht per externem Stylesheet übersteuert
   werden (Inline-!important schlägt External-!important). Deshalb scrollt hier
   das gesamte Modal als ein Block; Header und Actions werden per
   position:sticky oben/unten fixiert. So bleibt der Inhalt bei zu niedrigem
   Browserfenster vollständig erreichbar/scrollbar, statt am unteren Rand des
   Modals unsichtbar abgeschnitten zu werden.

   Fund: Weil "display:grid" erzwungen wird, aber kein grid-template-rows
   definiert ist, blähen sich die drei impliziten Zeilen (Header/Content/
   Actions) bei kurzen Tabs (z. B. Schlüsseldepot) per CSS-Grid-Standard
   ("align-content:normal" verhält sich bei Grid wie "stretch") künstlich auf
   die volle feste Höhe auf – der Inhalt "schwebt" dadurch mittig statt oben.
   align-content/align-items sind vom Inline-"display" NICHT betroffen und
   lassen sich daher regulär überschreiben, um jede Zeile auf ihre natürliche
   Höhe zu begrenzen und alles oben zu verankern. */
#partnerModal.ui.modal {
    width: 1080px !important;
    max-width: 98vw !important;
    height: 85vh !important;
    max-height: 85vh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    align-content: start !important;
    align-items: start !important;
}

#partnerModal > .header {
    position: sticky;
    top: 0;
    z-index: 3;
}

#partnerModal > .actions {
    position: sticky;
    bottom: 0;
    z-index: 3;
}

/* Tabellen-Wrapper in Tabellen-Tabs: eigener Scrollbereich mit fixierter Kopfzeile */
#partnerModal .table-scroll-wrapper,
#partnerModal .scroll-content {
    max-height: 50vh;
    overflow-y: auto;
    overflow-x: auto;
}

#partnerModal .table-scroll-wrapper thead th,
#partnerModal .scroll-content thead th {
    position: sticky;
    top: 0;
    z-index: 5;
    background: #fff;
}

#partnerModal .ui.table {
    margin-top: 0;
    border-collapse: separate;
}

/* ── preislisteVersionModal: Gebühren-Tabelle erhält eigenen Scrollbereich ───
   Bei vielen bereits hinterlegten Gebühren-Positionen wuchs die Tabelle
   bislang unbegrenzt nach unten, sodass das gesamte Modal (Allgemein-Felder +
   Tabelle + "Hinzufügen"-Zeile) gescrollt werden musste. Analog zum
   #partnerModal-Muster oben bekommt die Tabelle daher eine feste maximale
   Höhe mit eigenem Scroll und fixierter Kopfzeile, während die
   Allgemein-Felder und die Zeile zum Hinzufügen einer Gebühr immer sichtbar
   bleiben. */
#preislisteVersionModal .table-scroll-wrapper {
    max-height: 260px;
    overflow-y: auto;
    overflow-x: auto;
}

#preislisteVersionModal .table-scroll-wrapper thead th {
    position: sticky;
    top: 0;
    z-index: 5;
    background: #fff;
}

/* Kompaktere Zeilen in der Gebühren-Tabelle, damit trotz der begrenzten
   Höhe mehrere Positionen ohne Scrollen sichtbar sind. */
#preislisteVersionModal #preislistePositionenTable td,
#preislisteVersionModal #preislistePositionenTable th {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    font-size: 0.92em;
}

/* initGebuehrDropdownOhneClipping() (partnernetzwerk-preisliste.js) setzt
   diese Klasse auf #preislisteVersionModal, solange das Gebühr-Dropdown-
   Menü offen ist, und hebt damit das Clipping der beiden Vorfahren auf, die
   ein absolut positioniertes Menü sonst an ihrer eigenen Box-Grenze
   abschneiden ("overflow" - unabhängig von z-index, siehe dortiger
   Kommentar). Höhere Spezifität als die Basis-Regeln oben (zusätzliche
   Klasse auf #preislisteVersionModal), daher ohne !important wirksam. */
#preislisteVersionModal.dropdown-menu-offen > .content,
#preislisteVersionModal.dropdown-menu-offen > .content > .ui.tab.segment[data-tab="version-gebuehren"] {
    overflow: visible;
}

/* Etwas kompakter als Fomantics Standardhöhe für Such-/Auswahl-Dropdowns
   (16.02857143rem ≈ 256px) - ca. 15% kürzer, damit die Liste im Modal nicht
   zu dominant wirkt. */
#preislisteposition_gebuehr_drp.dropdown .menu {
    max-height: 218px;
}

/* preislisteAnsichtModal: reine Lese-Ansicht - Gebühren-Tabelle bekommt
   denselben eigenen Scrollbereich mit fixierter Kopfzeile wie im
   Bearbeiten-Modal, da hier ebenfalls beliebig viele Positionen auftreten
   können. */
#preislisteAnsichtModal .table-scroll-wrapper {
    max-height: 320px;
    overflow-y: auto;
    overflow-x: auto;
}

#preislisteAnsichtModal .table-scroll-wrapper thead th {
    position: sticky;
    top: 0;
    z-index: 5;
    background: #fff;
}

/* ── preislisteVersionModal: feste Höhe, Inhalt immer oben ausgerichtet ───
   Statt sich je nach Tab/Anzahl Gebühren unterschiedlich hoch aufzubauen,
   bekommt das Modal eine feste Gesamthöhe. Kopf, Tab-Menü und Speichern/
   Schließen-Footer behalten ihre natürliche Höhe, der aktive Tab-Inhalt
   füllt den verbleibenden Platz und scrollt bei Bedarf selbst (min-height:0
   ist nötig, damit Flex-Kinder tatsächlich scrollen statt zu wachsen). Der
   Inhalt bleibt dabei stets am oberen Rand statt vertikal zentriert.

   WICHTIG: Regel auf ".visible" beschränkt (Klasse, die Fomantic beim
   tatsächlichen Öffnen setzt, siehe modal.js "show"/"hide"-Callbacks).
   Ohne diese Einschränkung galt "display:flex" per ID-Selektor IMMER,
   auch im Ruhezustand - ID-Selektoren schlagen Fomantics eigene Klassen-
   Regel ".ui.modal{display:none}", wodurch das Modal dauerhaft sichtbar
   blieb statt nur bei echtem Öffnen (Bug, gemeldet als "wird ständig
   angezeigt"). */
#preislisteVersionModal.visible {
    height: 628px;
    display: flex;
    flex-direction: column;
}

#preislisteVersionModal > .header,
#preislisteVersionModal > .actions {
    flex: 0 0 auto;
}

#preislisteVersionModal > .content {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#preislisteVersionModal > .content > #preislisteVersionTabs {
    flex: 0 0 auto;
}

#preislisteVersionModal > .content > .ui.tab.segment {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

.dienstleistungen-list {
    border: 1px solid rgba(34,36,38,.15);
    border-radius: .28571429rem;
    max-height: 420px;
    overflow-y: auto;
}


.dienstleistung-row {
    display: grid !important;
    grid-template-columns: 40px 240px 1fr;
    align-items: center;
    gap: 10px;
    padding: 8px 10px !important;
}

.dienstleistung-name {
    font-weight: bold;
}

.dienstleistung-note input {
    width: 100%;
}

/* Adresse-Spalte: Abstand zwischen den Feldern */
.partner-adresse-row .ten.wide.field > .field,
.partner-adresse-row .ten.wide.field > .fields {
    margin-bottom: 0.75em !important;
}

/* Adresse + Konten: senkrechte Trennlinie zwischen den fields-Spalten */
.partner-konten-col {
    border-left: 1px solid rgba(34,36,38,.15) !important;
    padding-left: 1.5rem !important;
}


tr.table_week{
	text-align:center;
}

table.help_table {
	border-collapse: collapse;
}

table.help_table th,table.help_table td {
	border: 1px solid black;
	padding:4px;
}

#dienstleisterTable thead tr.dienstleistung-header th {
    background: #444 !important;
    color: #fff !important;
}

.subanzahl_box {
	width: 40px;
}

.dropdown-proto  {
	width: 290px;
	margin-bottom: 10px;
}
.dropdown-weg {
	width: 290px;
	margin-bottom: 10px;

}
.dropdown-kunde {
	width: 290px;
	margin-bottom: 10px;

}

.button_menue {
	background-color: #fff;
	border: 2px solid grey;
	display: inline-block;
    position: relative;
    max-width: 200px;
    padding: 4px 10px;
    margin-bottom: 0;
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 700;
    -webkit-font-smoothing: antialiased;
    color: #000;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border-radius: 12px;
    box-sizing: border-box;
}
.button_menue_select {
	background-color: #55419E;
	border: 2px solid grey;
	display: inline-block;
    position: relative;
    max-width: 200px;
    padding: 4px 10px;
    margin-bottom: 0;
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 700;
    -webkit-font-smoothing: antialiased;
    color: #fff;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border-radius: 12px;
    box-sizing: border-box;
}
.button_menue:disabled {
	background-color: #c1c1c1;
	border: 2px solid #c4c4c4;
	color: #707070;
	cursor: not-allowed;
}


.button_register {
	background-color: #fff;
	border: 2px solid grey;
	display: inline-block;
    position: relative;
    max-width: 200px;
    padding: 10px 10px;
    margin-bottom: 0;
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 700;
    -webkit-font-smoothing: antialiased;
    color: #000;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border-radius: 25px;
    box-sizing: border-box;
}
.button_login {
	background-color: #55419E;
	border: 2px solid grey;
	display: inline-block;
    position: relative;
    max-width: 200px;
    padding: 10px 10px;
    margin-bottom: 0;
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 700;
    -webkit-font-smoothing: antialiased;
    color: white !important;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border-radius: 25px;
    box-sizing: border-box;
}
.buttonround {
	background-color: #C2B4FC;
	border: 2px solid grey;
    display: inline-block;
    padding: 3px 7px;
    vertical-align: middle;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
	border-radius: 25px;
}
.buttonround:disabled {
	background-color: #c1c1c1;
	border: 2px solid #c4c4c4;
	color: #707070;
	cursor: not-allowed;
}
.reload {
  font-family: Lucida Sans Unicode;
  
}

.buttonroundinaktive {
	background-color: grey;
	border: 2px solid grey;
    display: inline-block;
    padding: 3px 7px;
    vertical-align: middle;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
	border-radius: 25px;
	cursor: not-allowed;
}

div.filter_button {
	background-color:#cdcdcd;
	display: inline-block;
	padding:2px;
	padding-right:9px;
	padding-bottom:4px;
	border-radius:6px;
	margin-bottom:2px;
}

.w3-table-all tr:nth-child(odd){background-color:#fff}.w3-table-all tr:nth-child(even){background-color:#f1f1f1}
.w3-table td,.w3-table th,.w3-table-all td,.w3-table-all th{padding:8px 8px;display:table-cell;text-align:left;vertical-align:top}
.w3-bordered tr,.w3-table-all tr{border-bottom:1px solid #ddd}.w3-striped tbody tr:nth-child(even){background-color:#f1f1f1}
.w3-table th:first-child,.w3-table td:first-child,.w3-table-all th:first-child,.w3-table-all td:first-child{padding-left:16px}
.w3-hoverable tbody tr:hover,.w3-ul.w3-hoverable li:hover{background-color:#ccc}.w3-centered tr th,.w3-centered tr td{text-align:center}
.w3-table td,.w3-table th,.w3-table-all td,.w3-table-all th{padding:8px 8px;display:table-cell;text-align:left;vertical-align:top}
.w3-table th:first-child,.w3-table td:first-child,.w3-table-all th:first-child,.w3-table-all td:first-child{padding-left:16px}

#confirmBox
{
    display: none;
    background-color: #eee;
    border-radius: 5px;
    border: 1px solid #aaa;
    position: fixed;
    width: 300px;
    left: 350px;
    margin-left: -150px;
    padding: 6px 8px 8px;
    box-sizing: border-box;
    text-align: center;
	top: 55%;
	z-index: 2;
}
#confirmBox button {
    background-color: #ccc;
    display: inline-block;
    border-radius: 3px;
    border: 1px solid #aaa;
    padding: 2px;
    text-align: center;
    width: 80px;
    cursor: pointer;
}
#confirmBox button:hover
{
    background-color: #ddd;
}
#confirmBox .message
{
    text-align: left;
    margin-bottom: 8px;
	font-weight:bold;
}

div .box { 
	background:#FFFFFF;
	padding-bottom:10px;
	margin-top: 10px;
	border: 2px solid grey;
	border-radius: 5px;
	z-index: 5;
	}
	

header .container {
	position: relative;
}
footer .container {
	position: relative;
}

div .box-left {margin-right: 10px;}

.box-3 {
	width:190px;
	float:left;
	position: relative;
	border: 1px solid black;
	margin-bottom:3px;
	}

.input_left input{
	width:20;
	margin-bottom: 10px;
	margin-top: 8px;
	margin-left: 0px;
}
.input_right input{
	width: 171px;
    margin-bottom: 4px;

}

div.meldetabelle { 
      display: table; 
      border-collapse:collapse; 
    }
    div.meldezeile { 
      display:table-row; 
    }
    div.meldezelle { 
      display:table-cell; 
      border:thin solid grey; 
      padding:5px; 
    }
div.meldezelle input {
	line-height:13px;

}

div.info a:link, a:visited {
	color:black;
	font-weight: bold;
}
.helpbox {
	position: absolute;
	background: rgba(212, 212, 212, 0.95);
	z-index: 5000;
	border: 5px solid #55419E;
	border-radius: 5px;

}
.checklistbox {
	position: absolute;
	background: rgba(212, 212, 212, 0.95);
	z-index: 5000;
	border: 5px solid #55419E;
	border-radius: 5px;

}
input.knopf ,button.knopf{
	color: buttontext;
    background-color: buttonface;
    box-sizing: border-box;
    padding: 2px 6px 3px;
    border-width: 2px;
    border-style: outset;
    border-color: buttonface;
    border-image: initial;
	width: 135px;
}

.tabelle_cart {
	border: 0px solid black;
	width:100%;
}

.m-signature-pad--body canvas {
            position: relative;
            left: 0;
            top: 0;
            width: 100%;
            height: 250px;
            border: 1px solid #CCCCCC;
        }    
.signature-img{
	border: 4px solid #000000;
}

.order_navigation{
	/*float: left;*/
}

/*Auftragsfreigabe*/
.freigabe_auftragsinfo_input{
	margin:5px;
}
.datenfelder_label{
	width:125px;
	font-weight:bold;
	text-align:left;
}
.datenfelder{
	border:solid 1px grey;
	background-color:#e8ecee;
	width:200px;	
}

th.rotate {
			height: 150px; /* Höhe anpassen, um genügend Platz für den gedrehten Text zu bieten */
			width: 20px;
			vertical-align: bottom !important;
}
th.rotate div {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
}



/*-------------------------------------------------------------------------------*/
@media (max-width: 799px) {
body {
	/*width:490px;*/

}
.container {
	/*max-width: 349px; */
	min-width: 338px;
    padding-left: 5px;
    padding-right: 5px;
	padding-top: 5px;
	}

.preisecontainer {
	max-width: 349px; 
	min-width: 338px;
    padding-left: 5px;
    padding-right: 5px;
	padding-top: 5px;
 }
header {
	/*max-width: 368px;*/
	min-width: 368px;
}
footer {
	/*max-width: 368px;*/
	min-width: 368px;
}

.box-sbs {
	width:95%;
	float:left;
	position: relative;
	}
.box_big {
	width:95%;
	max-width: 465px; 
	min-width: 465px;
}
.helpbox {
	width:380px;
	left: 0px;
	margin-left: 15px;
}

fieldset.form_box_large {
	width: 311px;
}
.meldeinput {
	width:92px;
}
.videoinput {
	width:80px;
}
#ap_copy{
	margin-bottom:20px;
}
footer .contact {
	width:265px;
	font-size:12px;
	float:left;
	display:block;
}

footer .tag {
	display:none;
}
.tagfoot { 
	display:none;
}


}

@media (min-width: 800px) {
body {
	/*width:1000px;*/
}
 .container  { 
	/*max-width: 766px; */
	min-width: 338px;
    padding-left: 5px;
    padding-right: 5px;
	padding-top: 5px;
	}
.preisecontainer {
	max-width: 435px; 
	min-width: 407px;
    padding-left: 15px;
    padding-right: 15px;
	padding-top: 5px;
	float: left;
	margin-top: 25px !important;
	min-height: 570px;
 }
 .pdf_create_container {
	max-width: 700px;
	min-width: 700px;
    padding-left: 15px;
    padding-right: 15px;
	padding-top: 5px;
	float: left;
	margin-top: 25px !important;
 }
.kostencontainer{
	max-width: 291px; 
	min-width: 280px;
	min-height:100px;
	width:100%;
    padding-left: 5px;
    padding-right: 5px;
	padding-top: 5px;
	float: right;
	position: relative;
	top:0px;
	margin-top: 25px !important;
	margin-left: 5px;
}
.tabelle_cart_anzahl {
	width: 24px;
}

.tabelle_cart_anzahl:disabled {
	background-color: #e6e6e6;
	color: #7e1c1c;
	cursor: not-allowed;
}

 header { 
	/*max-width: 775px;*/
	min-width: 550px;
	}
 footer { 
	/*max-width: 775px;*/
	min-width: 550px;
	}

.box-sbs {
	width:49%;
	float:left;
	position: relative;
	}
.box-big {
	width:99%;
	max-width: 800px; 
	min-width: 734px;
}
.helpbox {
	width:650px;
	left: 0px;
	margin-left: 50px;
}
.checklistbox {
	width:772px;
	left: 0px;
	margin-left: 50px;
}
div .leistungzeile {
	width:99%;
	height:30px;
	}
div .preise {
	//width:100%;
	
	}
fieldset .preise {
	width: 93%;
}

.tabelleleistung {
	width: 390px;
}
	
fieldset.form_box_large {
	width: 654px;
}
.meldeinput {
	width:226px;
}
.videoinput {
	width:121px;
}
footer .contact {
	width:265px;
	font-size:12px;
	float:left;
}



}

@media (min-width: 1100px) {

.helpbox {
	width:500px;
	left: 740px;
	margin-left: 30px;
	margin-right: 30px;
}
body {
	/*width:1100px;*/
}
 .container  { 
	/*max-width: 1000px; */
	min-width: 800px;
    padding-left: 5px;
    padding-right: 5px;
	padding-top: 5px;
	}
.preisecontainer {
	max-width: 540px; 
	min-width: 500px;
    padding-left: 15px;
    padding-right: 15px;
	padding-top: 5px;
	float: left;
	margin-top: 25px !important;
	min-height: 570px;
 }
 .pdf_create_container {
	max-width: 700px;
	min-width: 700px;
    padding-left: 15px;
    padding-right: 15px;
	padding-top: 5px;
	float: left;
	margin-top: 25px !important;
	
 }
.kostencontainer{
	max-width: 390px; 
	min-width: 390px;
	min-height:100px;
	width:100%;
    padding-left: 5px;
    padding-right: 5px;
	padding-top: 5px;
	float: right;
	position: relative;
	top:0px;
	margin-top: 25px !important;
	margin-left: 5px;
}
.kostencontainer_leistungtext{
	width: 206px;
}
.tabelle_cart_anzahl {
	width: 24px;
}

.tabelle_cart_anzahl:disabled {
	background-color: #e6e6e6;
	color: #7e1c1c;
	cursor: not-allowed;
}

 header { 
	/*max-width: 1000px;*/
	min-width: 800px;
	}
 footer { 
	/*max-width: 1000px;*/
	min-width: 800px;
	}

.box-sbs {
	width:49%;
	float:left;
	position: relative;
	}
.box-big {
	width:99%;
	max-width: 800px; 
	min-width: 734px;
}
.helpbox {
	width:650px;
	left: 0px;
	margin-left: 50px;
}
.checklistbox {
	width:772px;
	left: 0px;
	margin-left: 50px;
}
div .leistungzeile {
	width:99%;
	height:30px;
	}
div .preise {
	//width:100%;
	
	}
fieldset .preise {
	width: 93%;
}

.tabelleleistung {
	width: 480px;
}
	
fieldset.form_box_large {
	width: 654px;
}
.meldeinput {
	width:226px;
}
.videoinput {
	width:121px;
}
footer .contact {
	width:265px;
	font-size:12px;
	float:left;
}


}

