/* #region DOM */ *::placeholder { text-align:center; } * { user-select:none; cursor: var(--theme-cursor-default) 1 1, auto; } .selectable { user-select: text !important; cursor: var(--theme-cursor-pointer) 0 16, pointer; } input, input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="date"], textarea, select { border-width:2px; border-style:solid; font-size: var(--fontSize); font-family: var(--fontFamily); border-radius:10px; padding:10px 12px; outline:none; transition:all var(--times-transition-colors) ease; width:auto; } input.width\:100px { width:100px; } input.width\:90px { width:90px; } input.width\:75px { width:75px; } input.width\:50px { width:50px; } input.width\:25px { width:25px; } *::placeholder, input[id="sAMAccountName"] { font-style:italic; font-weight:100; letter-spacing:3px; } html, button { font-size: var(--fontSize); font-family: var(--fontFamily); } button.monolyth, button.bluebutton, button.greenbutton, button.yellowbutton, button.redbutton { display:inline-block; padding:8px 10px; margin:0.2rem 1.6rem; font-weight:600; text-align:center; text-decoration:none; color:rgb(255, 255, 255); border:none; border-radius:8px; box-shadow:0 4px 6px rgba(0,0,0,0.1); transition:all var(--times-transition-colors) ease; } button.monolyth { background-color:transparent; } button:not(:disabled).monolyth:hover { opacity:0.9; } button.bluebutton { color:var(--theme-button-blue-default-color); background:var(--theme-button-blue-default-backcolor); } button.greenbutton { color:var(--theme-button-green-default-color); background:var(--theme-button-green-default-backcolor); } button.yellowbutton { color:var(--theme-button-yellow-default-color); background:var(--theme-button-yellow-default-backcolor); } button.redbutton { color:var(--theme-button-red-default-color); background:var(--theme-button-red-default-backcolor); } button:disabled { color:var(--theme-button-disabled-color); background:var(--theme-button-disabled-backcolor); } button:not(:disabled).redbutton:hover { background:var(--theme-button-red-hover-color); background:var(--theme-button-red-hover-backcolor); } button:not(:disabled).greenbutton:hover { background:var(--theme-button-green-hover-color); background:var(--theme-button-green-hover-backcolor); } button:not(:disabled).bluebutton:hover { background:var(--theme-button-blue-hover-color); background:var(--theme-button-blue-hover-backcolor); } button:not(:disabled).yellowbutton:hover { background:var(--theme-button-yellow-hover-color); background:var(--theme-button-yellow-hover-backcolor); } /* #endregion */ /* #region Container */ .container.static { width:calc(100% - 20px); margin:10px auto; display:flex; gap:12px; min-height:0; overflow:auto; max-height:100%; flex-direction: column;} /* .card.static { display:flex; flex-direction:column;flex: 0 0 auto; } */ .card.static.row { overflow:hidden; display:flex; flex-direction:row; flex-wrap: wrap;} .card.static { overflow:hidden; display:flex; flex-direction:column; } .container { width:calc(100% - 20px); margin:10px auto; display:grid; grid-template-columns:100%; gap:12px; min-height:0; overflow:auto; max-height:100%; } .container:not(.static) * { box-sizing:border-box; } .card { border-width:1px; border-style:solid; border-radius:8px; padding:20px; } .grid { display:grid; gap:16px; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr)); } /* #endregion */ /* #region Copy icon */ .copy-icon { transition:opacity var(--times-transition-opaticty); cursor:var(--theme-cursor-pointer) -16 16, pointer; opacity:0.7; } .copy-icon:hover { opacity:1; } /* #endregion */ /* #region Tooltip */ .global-tooltip { position:fixed; padding:6px 8px; border-width:1px; border-style:solid; border-radius:10px; max-width:50vw; white-space:normal; z-index:999; pointer-events:none; opacity:0; transform:translateY(-30px); transition:opacity var(--times-transition-opaticty) ease; } .global-tooltip.visible { opacity:1; } /* #endregion*/ /* #region Scrollbar */ ::-webkit-scrollbar { width:12px; height:12px; } ::-webkit-scrollbar-track { border-radius:0px; } ::-webkit-scrollbar-thumb { border-radius:6px; border-width:2px; border-style:solid; } /* #endregion */ /* #region Messagebox */ #message-container { position: fixed; top: 1rem; right: 1px; display: flex; flex-direction: column; gap: 0.5rem; z-index: 1000; max-height: 80vh; padding-left: 15px; overflow-y: auto; overflow-x: visible; scrollbar-width: none; -ms-overflow-style: none; } #message-container::-webkit-scrollbar { display: none; } .message { border-radius: 8px; margin: 8px 8px 8px 0; padding: 10px 14px; width: auto; max-width: 45vw; animation: slideIn 0.4s ease-out; transition: transform var(--times-transition-transform) ease; word-break: break-word; overflow-wrap: anywhere; } .message:hover { transform:scale(1.02); } .message-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:6px; } .message-title { flex:1; font-weight:600; } .countdown { margin-right:8px; white-space:nowrap; } .pin-div { margin-left:8px; cursor:var(--theme-cursor-pointer) -16 16, pointer; user-select:none; transition:transform 0.2s ease, color 0.2s ease; } .pin-div:hover { transform:scale(1.2); } .pin-div.pinned { transform:scale(1.1); } @keyframes slideIn { 0% { opacity:0; transform:translateX(100%); } 60% { opacity:1; transform:translateX(-10px); } 80% { opacity:1; transform:translateX(5px); } 100% { opacity:1; transform:translateX(-10px); } } @keyframes slideOut { 0% { opacity:1; transform:translateX(0); } 100% { opacity:1; transform:translateX(100%); } } /* #endregion */ /* #region Toggle switch */ /* */ .cb-switch { --w: var(--responsive-switch-width); --h: var(--responsive-switch-height); display: inline-flex; align-items: center; flex-shrink: 0; gap: 8px; } /* Input verstecken */ .cb-switch input { position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none; } /* TRACK */ .switch-track { width: var(--w); height: var(--h); border-radius: 999px; padding: 3px; border: 1px solid; box-sizing: border-box; display: flex; align-items: center; position: relative; flex-shrink: 0; transition: background var(--times-transition-colors) ease, border-color var(--times-transition-colors) ease; } /* THUMB */ .switch-thumb { position: absolute; top: 50%; left: 3px; width: calc(var(--h) - 6px); height: calc(var(--h) - 6px); background: var(--theme-switch-thumb); border-radius: 50%; box-shadow: 0 2px 6px rgba(0,0,0,.15); transform: translateY(-50%); transition: left var(--times-transition-transform) cubic-bezier(.2,.9,.2,1), background var(--times-transition-colors) ease; } /* CHECKED STATE */ .cb-switch input:checked + .switch-track { background: var(--theme-switch-active); } .cb-switch input:checked + .switch-track .switch-thumb { left: calc(var(--w) - var(--h) + 3px); } /* HOVER */ .cb-switch input:not(:disabled):hover + .switch-track { border-color: var(--theme-switch-hover); } /* FOCUS */ .cb-switch input:focus-visible + .switch-track { box-shadow: 0 0 0 6px rgba(6, 193, 103, 0.12); } /* DISABLED */ .cb-switch input:disabled + .switch-track { background-color: dimgray; opacity: 0.6; } .cb-switch input:disabled + .switch-track .switch-thumb { background-color: rgb(54, 50, 50); } /* optional label spacing */ .cb-switch label { cursor: pointer; } /* .cb-switch { --w:45px; --h:27px; display:inline-flex; align-items:center; } .cb-switch input { position:absolute; opacity:0; width:0; height:0; pointer-events:none; } .switch-track { width:var(--w); height:var(--h); border-radius:999px; padding:3px; border-width:1px; border-style:solid; box-sizing:border-box; display:inline-flex; align-items:center; transition:background .18s ease, transform .12s ease, border-color .25s ease; } .switch-thumb { min-width:calc(var(--h) - 2 * 3px); width:calc(var(--h) - 2 * 3px); height:calc(var(--h) - 2 * 3px); background:var(--theme-switch-thumb); border-radius:50%; box-shadow:0 2px 6px rgba(0,0,0,.15); transform:translateX(-1px); transition:transform .25s cubic-bezier(.2,.9,.2,1), background .18s ease } .cb-switch input:disabled + .switch-track { background-color: dimgray;} .cb-switch input:disabled + .switch-track .switch-thumb { background-color: rgb(54, 50, 50); } .cb-switch input:not(:disabled):checked + .switch-track { background:var(--theme-switch-active); } .cb-switch input:not(:disabled):hover + .switch-track { border-color:var(--theme-switch-hover); } .cb-switch input:focus-visible + .switch-track { box-shadow:0 0 0 6px rgba(6,193,103,0.12); } .cb-switch input:checked + .switch-track .switch-thumb { transform:translateX(calc(var(--w) - var(--h))); } .cb-switch label { width: calc(100% - var(--w)); } */ /* #endregion */ /* #region CheckBox */ /* */ .cb { display:inline-flex; align-items:center; gap:10px; user-select:none; transform:translateY(2px); } .cb input { position:absolute; opacity:0; width:0; height:0; pointer-events:none; } .cb-box { width:20px; height:20px; border-radius:6px; background:var(--theme-checkbox-backcolor); border-width:2px; border-style:solid; display:inline-grid; place-items:center; transition:transform var(--times-transition-transform) ease, border-color var(--times-transition-colors) ease, background var(--times-transition-colors) ease; } .cb-box::after { content:""; width:12px; height:8px; transform:scale(0) translateY(-2px); background-repeat:no-repeat; background-position:center; background-size:contain; background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 4L4 7l7-7' stroke='%23fff' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); transition:transform var(--times-transition-transform) cubic-bezier(.2,.9,.2,1); } .cb input:checked + .cb-box { transform:translateY(-1px); } .cb input:checked + .cb-box::after { transform:scale(1) translate(-1px, 1px); } table .cb input:checked + .cb-box::after { transform:scale(1) translate(1px, 1px); } .cb input:focus-visible + .cb-box { outline:none; } /* #endregion */ /* #region Required */ .is-required-empty { border-width:2px; border-style:solid; } /* #endregion */ /* #region Tabs */ .tabs { display: flex; margin-bottom: 10px; border-bottom-width: 2px; border-bottom-style: solid; } .tab { padding: 10px 20px; border: 1px solid transparent; border-top-left-radius: 5px; border-top-right-radius: 5px; margin-right: 5px; transition: background .25s, color .25s, border-color .25s; } .tab-content { border-width: 1px; border-style: solid; border-radius: 5px; padding: 15px; } .item { margin-bottom: 5px; } /* #endregion */ /* #region Feebox */ .feedbox-overlay { position:fixed; top:0; left:0; width:100vw; height:100vh; display:flex; align-items:center; justify-content:center; z-index:999; } .feedbox { border-radius:8px; max-width:50vw; width:100%; padding:20px; animation:feedboxFadeIn 0.2s ease-out; max-height:80vh; display:flex; flex-direction:column; overflow:hidden; } .feedbox h3 { margin:0 0 10px 0; } .feedbox-message { margin-bottom:20px; line-height:1.4; flex:1; overflow-y: auto; /* font-size:1rem; */ } .feedbox-actions { display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; flex-shrink:0; } @keyframes feedboxFadeIn { from { transform:translateY(-20px); opacity:0; } to { transform:translateY(0); opacity:1; } } .feedbox-btn { padding:6px 14px; /* font-size:0.95rem; */ border-radius:4px; border:1px solid #ccc; background:#f5f5f5; transition: color var(--times-transition-colors) ease, background var(--times-transition-colors) ease, border-color var(--times-transition-colors) ease; } .feedbox-btn:hover { background:#e5e5e5; } .feedbox-btn.primary { background:#4a90e2; color:#fff; border-color:#4a90e2; } .feedbox-btn.primary:hover { background:#357ABD; } .feedbox-btn.danger { background:#e94e3c; color:#fff; border-color:#e94e3c; } .feedbox-btn.danger:hover { background:#c0392b; } .feedbox-input { width:100%; padding:6px 8px; /* font-size:0.95rem; */ margin-top:8px; margin-bottom:12px; border:1px solid #ccc; border-radius:4px; box-sizing:border-box; } .feedbox-btn:focus, .feedbox-input:focus { outline:2px solid #4a90e2; outline-offset:2px; } /* Responsive Small Screens */ @media (max-width:400px) { .feedbox { padding:15px; } .feedbox-actions { flex-direction:column-reverse; gap:8px; } .feedbox-btn { width:100%; } } /* #endregion */ .select-wrapper { position: relative; width: 250px; } .select-wrapper select { width: 100%; padding: 12px 40px 12px 14px; font-size: 16px; border: 2px solid #ddd; border-radius: 10px; background-color: #fff; color: #333; appearance: none; /* entfernt Standard-Styling */ -webkit-appearance: none; -moz-appearance: none; cursor: pointer; transition: all 0.2s ease; } /* Hover / Focus */ .select-wrapper select:hover { border-color: #999; } .select-wrapper select:focus { outline: none; border-color: #4a90e2; box-shadow: 0 0 0 3px rgba(74,144,226,0.2); } /* Custom Pfeil */ .select-wrapper::after { content: "▾"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); pointer-events: none; font-size: 14px; color: #666; } .error-field { padding:12px 16px; border-radius:10px; border-width:1px; border-style:solid; } .success-field { border-width: 1px; border-style: solid; padding:12px 16px; border-radius:10px; } label { color:var(--muted); display:block; margin-bottom:6px; } /* #region Dropzone */ .dropzone { max-width:360px; padding:12px; box-shadow:0 6px 18px rgba(0,0,0,.08); background:var(--theme-dropzone-default-backcolor); border:1px dashed #aaa; border-radius:8px; padding:10px; /* font-size:13px; */ text-align:center; margin-bottom:8px; color:var(--theme-dropzone-default-color); } .dropzone.active { border-color:var(--theme-dropzone-active-border-color); color:var(--theme-dropzone-active-color); background:var(--theme-dropzone-active-backcolor); } .dropzone-area ul { list-style:none; padding:0; margin:0; max-height:120px; overflow-y:auto; } .dropzone-area li { display:flex; justify-content:space-between; align-items:center; /* font-size:13px; */ padding:4px 0; border-bottom:1px solid #eee; } button.removeButton { border:none; background:none; color:#d11a2a; cursor:var(--theme-cursor-pointer) -16 16, pointer; /* font-size:14px; */ } input[type="file"] { display:none; } tr.drop-hover { outline:3px dashed var(--theme-dropzone-active-border-color); /* outline:2px dashed var(--primary-color, #4a90e2); background:rgba(74, 144, 226, 0.08); */ } tr.no-drop-hover { outline:3px dashed red; cursor:no-drop !important; /* outline:2px dashed var(--primary-color, #4a90e2); background:rgba(74, 144, 226, 0.08); */ } /* #endregion */ /* #region Multiselect textbox */ .mst-wrapper { position:relative; display:block; border-radius:4px; padding:4px 8px; background:var(--theme-window-backcolor); cursor:text; width:300px; /* optional, je nach gewünschter Breite */ } /* Eingabefeld oben */ .mst-input { width:100%; border:none; outline:none; /* font-size:14px; */ padding:4px 0; } /* Container für Chips unterhalb des Inputs */ .mst-chips-container { display:flex; flex-wrap:wrap; /* Chips umbrechen */ gap:4px; margin-top:4px; } /* Einzelner Chip */ .mst-chip { display:inline-flex; align-items:center; background-color:#007bff; color:#fff; border-radius:8px; padding:8px 8px; /* font-size:13px; */ } /* Entfernen-Button im Chip */ .mst-chip-remove { margin-left:4px; cursor:var(--theme-cursor-pointer) -16 16, pointer; font-weight:bold; } /* Dropdown-Liste */ .mst-dropdown { position:absolute; top:100%; left:0; right:0; max-height:200px; overflow-y:auto; border:1px solid #ccc; background:inherit; z-index:1000; } .mst-item { padding:6px 8px; cursor:var(--theme-cursor-pointer) -16 16, pointer; } .mst-item:hover { background-color:var(--theme-accent-hover-backcolor); } .mst-item.new { font-style:italic; color:#555; } /* #endregion */ .tutorial-highlight { transition: all 0.3s ease; }