@import url("theme.css");
@import url("glx.css");
@import url("glxtree.css");
@import url("list.css");
@import url("sql.css");
@import url("reportdesign.css");
@import url("iconpicker.css");
@import url("guide.css");
/* Access-like look for converted forms. Override in the app's own app.css. */
:root {
    --app-primary: #2b579a;
    --app-primary-hover: color-mix(in srgb, var(--app-primary), black 15%);
    --app-focus: color-mix(in srgb, var(--app-primary), white 72%);
    --app-success: #16804a;
    --app-success-hover: color-mix(in srgb, var(--app-success), black 15%);
    --app-danger: #b02a37;
    --app-danger-hover: color-mix(in srgb, var(--app-danger), black 15%);
    --bs-primary: var(--app-primary);
    --bs-success: var(--app-success);
    --bs-danger: var(--app-danger);
    --acc-font: "Calibri", "Segoe UI", sans-serif;
    --acc-font-size: 11pt;
    --acc-bg: #f3f3f3;
    --acc-section: #ffffff;
    --acc-border: #a5a5a5;
    --acc-accent: var(--app-primary);
    --acc-hl: color-mix(in srgb, var(--app-primary), white 80%);
    --acc-current: #a5cff1;
    --acc-text: #1f1f1f;
}

.btn-primary {
    --bs-btn-bg: var(--app-primary);
    --bs-btn-border-color: var(--app-primary);
    --bs-btn-hover-bg: var(--app-primary-hover);
    --bs-btn-hover-border-color: var(--app-primary-hover);
    --bs-btn-active-bg: var(--app-primary-hover);
    --bs-btn-active-border-color: var(--app-primary-hover);
}

.btn-outline-primary {
    --bs-btn-color: var(--app-primary);
    --bs-btn-border-color: var(--app-primary);
    --bs-btn-hover-bg: var(--app-primary);
    --bs-btn-hover-border-color: var(--app-primary);
    --bs-btn-active-bg: var(--app-primary);
    --bs-btn-active-border-color: var(--app-primary);
}

.btn-success {
    --bs-btn-bg: var(--app-success);
    --bs-btn-border-color: var(--app-success);
    --bs-btn-hover-bg: var(--app-success-hover);
    --bs-btn-hover-border-color: var(--app-success-hover);
    --bs-btn-active-bg: var(--app-success-hover);
    --bs-btn-active-border-color: var(--app-success-hover);
}

.btn-outline-success {
    --bs-btn-color: var(--app-success);
    --bs-btn-border-color: var(--app-success);
    --bs-btn-hover-bg: var(--app-success);
    --bs-btn-hover-border-color: var(--app-success);
    --bs-btn-active-bg: var(--app-success);
    --bs-btn-active-border-color: var(--app-success);
}

.btn-danger {
    --bs-btn-bg: var(--app-danger);
    --bs-btn-border-color: var(--app-danger);
    --bs-btn-hover-bg: var(--app-danger-hover);
    --bs-btn-hover-border-color: var(--app-danger-hover);
    --bs-btn-active-bg: var(--app-danger-hover);
    --bs-btn-active-border-color: var(--app-danger-hover);
}

.btn-outline-danger {
    --bs-btn-color: var(--app-danger);
    --bs-btn-border-color: var(--app-danger);
    --bs-btn-hover-bg: var(--app-danger);
    --bs-btn-hover-border-color: var(--app-danger);
    --bs-btn-active-bg: var(--app-danger);
    --bs-btn-active-border-color: var(--app-danger);
}

.btn:focus, .btn:focus-visible { box-shadow: 0 0 0 .25rem var(--app-focus); }

html, body { margin: 0; height: 100%; font-family: var(--acc-font); font-size: var(--acc-font-size); color: var(--acc-text); background: var(--acc-bg); }
* { box-sizing: border-box; }

/* ---------- shell */
.acc-shell { display: flex; flex-direction: column; height: 100vh; overflow: hidden; }
.acc-ribbon { flex: none; background: #f7f8fa; border-bottom: 1px solid var(--acc-border); }
.acc-ribbon-tabs { display: flex; height: 30px; padding: 0 8px; gap: 4px; background: #fff; }
.acc-ribbon-tab { min-width: 76px; padding: 4px 12px; border: 0; border-bottom: 2px solid transparent; background: none; cursor: pointer; font: inherit; }
.acc-ribbon-tab:hover { background: #eef4fa; }
.acc-ribbon-tab.acc-selected { color: var(--acc-accent); border-bottom-color: var(--acc-accent); font-weight: 700; }
.acc-ribbon-panel { display: flex; align-items: stretch; gap: 6px; min-height: 68px; padding: 6px 10px; background: #f7f8fa; }
.acc-ribbon-panel label { display: flex; flex-direction: column; justify-content: center; gap: 2px; font-size: 8pt; }
.acc-ribbon-panel input, .acc-ribbon-panel select { min-width: 150px; padding: 3px 5px; font: 9pt var(--acc-font); border: 1px solid var(--acc-border); }
.acc-ribbon-panel > button { align-self: center; cursor: pointer; }
.acc-ribbon-command { display: flex; min-width: 110px; flex-direction: column; align-items: center; justify-content: center; gap: 2px; padding: 5px 10px; font: inherit; }
.acc-ribbon-command:hover:not(:disabled) { border-color: var(--acc-border); background: #fff; color: #1b2a3a; }
.acc-ribbon-command:hover:not(:disabled) small { color: #666; }
.acc-ribbon-command:disabled { opacity: .45; }
.acc-ribbon-command small { color: #666; font-size: 8pt; }
/* Shrani postavitev + "Samodejno" (design view saves every change, or only on Ctrl+S); ● = unsaved changes */
.acc-ribbon-save { display: flex; flex-direction: column; align-items: stretch; justify-content: center; gap: 2px; }
.acc-ribbon-save .acc-ribbon-command { padding: 3px 10px; }
.acc-ribbon-command.acc-unsaved b { color: #b8560b; }
.acc-ribbon-panel label.acc-ribbon-check { flex-direction: row; align-items: center; justify-content: center; gap: 4px; color: #555; cursor: pointer; white-space: nowrap; }
.acc-ribbon-panel label.acc-ribbon-check input { min-width: 0; margin: 0; }
/* accToast: pale note at the bottom centre, gone after ~2 s */
.acc-toast {
    position: fixed; left: 50%; bottom: 48px; z-index: 3000; transform: translate(-50%, 8px);
    padding: 8px 18px; border: 1px solid #b9d9c0; border-radius: 6px; background: rgba(236, 248, 239, .94); color: #24613a;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .12); font-size: 10pt; pointer-events: none; opacity: 0;
    transition: opacity .35s ease, transform .35s ease;
}
.acc-toast.acc-toast-show { opacity: 1; transform: translate(-50%, 0); }
.acc-ribbon-group { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 2px 8px; border-left: 1px solid #d6d6d6; border-right: 1px solid #d6d6d6; }
.acc-ribbon-group > small { color: #666; font-size: 8pt; }
.acc-ribbon-group-buttons { display: grid; grid-template-columns: repeat(6, 30px); gap: 2px; }
.acc-ribbon-group-buttons.acc-ribbon-group-2 { grid-template-columns: repeat(4, auto); }
.acc-ribbon-group-2 .acc-ribbon-small { padding: 0 6px; font-size: 9pt; white-space: nowrap; }
.acc-ribbon-small { --bs-btn-padding-x: 0; --bs-btn-padding-y: 0; height: 22px; font-size: 10pt; line-height: 1; }
.acc-ribbon-message { align-self: center; max-width: 520px; color: #a4262c; font-size: 9pt; }
.acc-switch { position: relative; display: inline-block; }
.acc-switch-menu { position: absolute; top: 100%; left: 0; z-index: 100000; min-width: 260px; max-height: 60vh; overflow: auto; background: #fff; border: 1px solid #b5b5b5; box-shadow: 0 4px 12px rgba(0,0,0,.25); padding: 3px 0; }
.acc-switch-menu button { display: flex; align-items: baseline; gap: 6px; width: 100%; padding: 4px 10px; border: 0; background: transparent; text-align: left; font-size: 9.5pt; }
.acc-switch-menu button span { display: inline-block; width: 12px; }
.acc-switch-menu button small { color: #777; }
.acc-switch-menu button:hover { background: #e6eef8; }
.acc-switch-menu .acc-switch-active { font-weight: 600; }
.acc-newtable-menu { min-width: 440px; }
.acc-newtable-menu button { flex-direction: column; align-items: flex-start; gap: 0; padding: 5px 12px; }
.acc-newtable-menu button:disabled { opacity: .5; }
.acc-workspace { display: flex; flex: 1; min-height: 0; }
.acc-sidebar { width: 250px; flex: none; display: flex; flex-direction: column; background: #fff; border-right: 1px solid var(--acc-border); }
.acc-search { margin: 8px; padding: 4px 6px; border: 1px solid var(--acc-border); font: inherit; }
.acc-sidebar-head { margin: 10px 8px 2px; padding-bottom: 2px; border-bottom: 1px solid var(--acc-border); color: var(--acc-accent); font-weight: 700; font-size: 9pt; text-transform: uppercase; letter-spacing: .04em; }
.acc-sidebar ul { list-style: none; margin: 0; padding: 0; overflow: auto; flex: 1; }
.acc-sidebar li { padding: 4px 12px; cursor: pointer; display: flex; flex-direction: column; border-bottom: 1px solid #f0f0f0; }
.acc-sidebar li:hover { background: var(--acc-hl); }
.acc-sidebar li small { color: #777; font-size: 8pt; }
/* navigation pane like Access's (AccNavPane): title with category/filter, folding groups, icon per object kind */
.acc-navpane { position: relative; min-height: 0; }
.acc-nav-top { display: flex; align-items: center; gap: 4px; padding: 6px 6px 0 8px; }
.acc-nav-title { flex: 1; min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 6px; padding: 3px 6px;
    border: 1px solid transparent; border-radius: 4px; background: transparent; color: var(--acc-accent); font-weight: 700; font-size: 10pt; text-align: left; }
.acc-nav-title > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-nav-title:hover, .acc-nav-refresh:hover:not(:disabled) { border-color: #c3cad3; background: var(--acc-hl); }
.acc-nav-caret { color: #c0392b; font-size: 9pt; }
.acc-nav-refresh { width: 26px; height: 26px; padding: 0; border: 1px solid transparent; border-radius: 4px; background: transparent; color: #555; }
.acc-nav-list { flex: 1; min-height: 0; overflow: auto; }
.acc-sidebar .acc-nav-list ul { flex: none; overflow: visible; }
.acc-nav-group { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; gap: 6px; padding: 3px 8px 3px 10px; cursor: pointer;
    background: #eef1f5; border-bottom: 1px solid var(--acc-border); color: #3b4a5c; font-weight: 700; font-size: 9pt; user-select: none; }
.acc-nav-group:hover { background: #e2e7ee; }
.acc-nav-group-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-nav-group small { color: #8a96a3; font-weight: 400; }
.acc-nav-chev { color: #6b7280; font-size: 8pt; }
.acc-sidebar li.acc-nav-item { flex-direction: row; align-items: center; gap: 7px; padding: 3px 10px; }
.acc-nav-list:focus { outline: none; }
.acc-nav-item { user-select: none; }
.acc-sidebar li.acc-nav-item.selected { background: #cfe3f7; }
.acc-sidebar li.acc-nav-item.selected:hover { background: #bcd7f2; }
.acc-nav-list:focus .acc-nav-item.focus { outline: 1px dotted #2f6fb3; outline-offset: -2px; }
.acc-nav-sqlquery { color: #1f6f8b; }
.acc-nav-text { display: flex; flex-direction: column; min-width: 0; }
.acc-nav-text > span, .acc-nav-text > small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-nav-icon { flex: none; width: 18px; text-align: center; font-size: 11pt; line-height: 1; }
.acc-nav-table { color: #2f6fb3; }
.acc-nav-localtable { color: #138a72; }
.acc-nav-view { color: #7b4fb0; }
.acc-nav-query { color: #3c8d2f; }
.acc-nav-form { color: #c26a12; }
.acc-nav-report { color: #b0303a; }
.acc-nav-module { color: #6b5b95; font-size: 8pt; font-weight: 700; }
.acc-nav-loading { padding: 8px 12px; color: #777; font-size: 8pt; font-style: italic; }
.acc-nav-note { margin: 6px 8px; padding: 6px 10px; border-radius: 6px; background: #e8f0fe; color: #1a3d7c; font-size: 8pt; cursor: pointer; flex: none; }
.acc-nav-menu { min-width: 220px; }
.acc-nav-menu-head { padding: 4px 10px; background: #dfe4ea; color: #3b4a5c; font-weight: 700; font-size: 8.5pt; }
.acc-nav-menu-groups { max-height: 50vh; overflow: auto; }
.acc-main { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.acc-mdi-area { position: relative; flex: 1; min-width: 0; min-height: 0; overflow: hidden; background: #dce2e8; isolation: isolate; } /* the windows' z-index stays inside the area (minimized ones are high) */
.acc-mdi-empty { position: absolute; inset: 0; display: grid; place-items: center; color: #68727d; }
.acc-mdi-window { position: absolute; display: flex; flex-direction: column; min-width: 320px; min-height: 220px; max-width: 100%; max-height: 100%; resize: both; overflow: hidden; background: #fff; border: 1px solid #8593a2; box-shadow: 0 4px 14px rgba(0,0,0,.24); }
.acc-mdi-window.acc-mdi-active { border-color: var(--acc-accent); box-shadow: 0 6px 20px rgba(0,0,0,.32); }
.acc-mdi-window.acc-mdi-maximized { inset: 0 !important; width: auto !important; height: auto !important; max-width: none; max-height: none; resize: none; }
.acc-mdi-titlebar { display: flex; flex: none; align-items: center; justify-content: space-between; min-height: 30px; padding: 2px 5px 2px 10px; color: #fff; background: #61758a; cursor: move; user-select: none; }
.acc-mdi-active .acc-mdi-titlebar { background: var(--acc-accent); }
.acc-mdi-titlebar small { margin-left: 6px; opacity: .8; font-size: 8pt; }
.acc-mdi-titlebar button { min-width: 26px; border: 0; color: #fff; background: transparent; cursor: pointer; font-size: 12pt; }
.acc-mdi-titlebar button:hover { background: rgba(255,255,255,.2); }
.acc-mdi-content { display: flex; flex: 1; min-width: 0; min-height: 0; overflow: auto; }
.acc-mdi-content > * { display: flex; flex: 1; min-width: 0; min-height: 0; }
.acc-mdi-window.acc-mdi-minimized { min-width: 0; min-height: 0; height: auto !important; resize: none; overflow: hidden; }
.acc-mdi-minimized .acc-mdi-content, .acc-mdi-minimized .acc-mdi-titlebar button, .acc-mdi-minimized .acc-mdi-idbox { display: none; }
.acc-mdi-minimized .acc-mdi-titlebar { cursor: pointer; min-height: 28px; }
.acc-mdi-title { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.acc-mdi-idbox { display: inline-flex; flex: none; margin: 0; }
.acc-mdi-idpick { width: 130px; height: 24px; padding: 0 4px; font-size: 9pt; color: #1b2a3a; background: #eef1f5; border: 1px solid #c6ced8; border-right: none; border-radius: 3px 0 0 3px; }
.acc-mdi-titlebar .acc-mdi-idbtn { display: grid; place-items: center; min-width: 24px; width: 24px; height: 24px; padding: 0; border: 1px solid #c6ced8; border-radius: 0 3px 3px 0; background: #eef1f5; color: #3a96d8; }
.acc-mdi-idbtn::after { content: ""; width: 6px; height: 6px; margin-top: -3px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
.acc-mdi-titlebar .acc-mdi-idbtn:hover { background: #3f94d5; border-color: #3f94d5; color: #fff; }
/* window buttons are pinned top right; the title and title-bar fields wrap to a new row on the left when space runs out */
.acc-mdi-titlebar { position: relative; flex-wrap: wrap; justify-content: flex-start; row-gap: 6px; column-gap: 14px; min-height: 38px; padding: 5px 150px 5px 12px; }
.acc-mdi-titlebar .acc-mdi-titlectl { margin-left: 0; column-gap: 18px; row-gap: 6px; flex-wrap: wrap; }
.acc-mdi-titlebar .acc-title-field { flex: 0 1 auto; max-width: 100%; }
.acc-mdi-titlebar .acc-title-field > .acc-combo { flex: 0 1 240px; min-width: 120px; }
.acc-mdi-minimized .acc-mdi-titlebar { padding-right: 5px; }
.acc-mdi-titlebar > div:last-child { position: absolute; top: 4px; right: 4px; display: flex; flex: none; flex-wrap: nowrap; align-items: center; gap: 2px; height: 30px; }
/* the window buttons have their own size: pinned out of the flow they no longer took the row's height (squeezed, 2026-10-20) */
.acc-mdi-titlebar > div:last-child > button { display: inline-grid; place-items: center; width: 34px; min-width: 34px; height: 30px; padding: 0; line-height: 1; border-radius: 4px; }
.acc-mdi-minimized .acc-mdi-titlebar > div:last-child > button { display: none; }
.acc-mdi-titlebar .acc-mdi-title { flex: 0 1 auto; min-width: 90px; }
.acc-mdi-idlist { position: fixed; z-index: 5000; max-height: 280px; overflow: auto; background: #eef1f5; border: 1px solid #8593a2; box-shadow: 0 4px 12px rgba(0,0,0,.25); color: #1b2a3a; }
.acc-mdi-idlist div { padding: 2px 8px; font-size: 9pt; cursor: default; white-space: nowrap; }
.acc-mdi-idlist div:hover, .acc-mdi-idlist div.acc-hl { background: #3f94d5; color: #fff; }
.acc-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.25); display: flex; align-items: center; justify-content: center; z-index: 1000; }
.acc-dialog { background: #fff; border: 1px solid var(--acc-border); box-shadow: 0 6px 30px rgba(0,0,0,.3); max-width: 95vw; max-height: 92vh; display: flex; flex-direction: column; }
.acc-dialog-title { display: flex; justify-content: space-between; align-items: center; padding: 6px 10px; background: var(--acc-accent); color: #fff; }
.acc-dialog-title button { border: none; background: none; color: #fff; font-size: 14pt; cursor: pointer; }

/* ---------- form frame */
.acc-form { display: flex; flex-direction: column; flex: 1; min-height: 0; min-width: 0; position: relative; outline: none; }
.acc-source-menu { position: fixed; z-index: 2900; display: flex; flex-direction: column; padding: 3px; background: #fff; border: 1px solid var(--acc-border); box-shadow: 0 3px 12px rgba(0,0,0,.25); }
.acc-source-menu button { min-width: 170px; padding: 5px 10px; text-align: left; border: 0; background: #fff; cursor: pointer; font: 9pt var(--acc-font); }
.acc-source-menu button:hover { background: var(--acc-hl); }
.acc-layout-editing [data-acc-name] { cursor: move !important; }
.acc-layout-selected { outline: 2px solid #0078d4 !important; outline-offset: 1px; }
.acc-layout-selection { position: fixed; z-index: 2200; border: 1px solid #0078d4; pointer-events: none; }
.acc-layout-handle { position: fixed; z-index: 2201; width: 9px; height: 9px; padding: 0; border: 1px solid #005a9e; background: #fff; pointer-events: auto; }
.acc-layout-handle-n, .acc-layout-handle-s { cursor: ns-resize; }
.acc-layout-handle-e, .acc-layout-handle-w { cursor: ew-resize; }
.acc-layout-handle-ne, .acc-layout-handle-sw { cursor: nesw-resize; }
.acc-layout-handle-nw, .acc-layout-handle-se { cursor: nwse-resize; }
.acc-layout-guide { position: fixed; z-index: 2199; background: #e81123; pointer-events: none; }
.acc-layout-badge { position: fixed; z-index: 2300; padding: 2px 7px; border-radius: 4px; background: rgba(31, 41, 55, .88); color: #fff;
    font: 8.5pt "Segoe UI", sans-serif; white-space: nowrap; pointer-events: none; font-variant-numeric: tabular-nums; }
.acc-layout-painting, .acc-layout-painting * { cursor: copy !important; }
.acc-propsheet-search { width: calc(100% - 12px); margin: 2px 6px 4px; padding: 1px 6px; font-size: 9pt; border: 1px solid #c3cad3; border-radius: 3px; }
.acc-propsheet-color { display: flex; align-items: center; gap: 3px; min-width: 0; }
/* swatch of the chosen theme colour (var(--acc-barva-…)); a chequer shows "privzeto" / transparent */
.acc-color-swatch {
    flex: none; width: 18px; height: 18px; border: 1px solid #a5a5a5; border-radius: 3px;
    background-image: linear-gradient(45deg, #ddd 25%, transparent 25% 75%, #ddd 75%), linear-gradient(45deg, #ddd 25%, #fff 25% 75%, #ddd 75%);
    background-size: 8px 8px; background-position: 0 0, 4px 4px;
}
.acc-propsheet-color select { flex: 1; min-width: 0; }
.acc-propsheet-color .acc-propsheet-btn { flex: none; padding: 0 4px; }
.acc-cf-row .acc-propsheet-color { flex: 1; min-width: 0; }
/* new / edited theme colour of the program's own (AccTheme.Custom.cs) */
.acc-color-editor { margin: 4px; padding: 8px; border: 1px solid #c3cad3; border-left: 4px solid var(--acc-accent); border-radius: 6px; background: #f8fafc; font-size: 9pt; }
.acc-color-editor-title { font-weight: 600; margin-bottom: 6px; }
.acc-color-editor label { display: flex; align-items: center; gap: 6px; margin: 3px 0; }
.acc-color-editor label input:not([type=color]) { flex: 1; min-width: 0; }
.acc-color-editor input[type=color] { width: 34px; height: 22px; padding: 0 1px; border: 1px solid #c3cad3; border-radius: 3px; }
.acc-color-editor-preview { display: flex; gap: 6px; margin: 6px 0 4px; }
.acc-color-editor-preview span { flex: 1; padding: 3px 6px; border: 1px solid #a5a5a5; border-radius: 4px; text-align: center; }
.acc-color-editor-hint { color: #5f6b7a; font-size: 8pt; }
.acc-color-editor-error { color: #b00020; margin-top: 4px; }
.acc-color-editor-buttons { display: flex; gap: 6px; justify-content: flex-end; margin-top: 6px; }
.acc-color-editor-buttons .acc-color-editor-delete { margin-right: auto; }
/* deleting an own colour: where it is used and what replaces it (AccThemeUsage) */
.acc-color-delete { margin-top: 6px; padding-top: 6px; border-top: 1px dashed #c3cad3; }
.acc-color-delete-title { font-weight: 600; color: #b00020; margin-bottom: 4px; }
.acc-color-usage { max-height: 140px; overflow: auto; margin: 3px 0 4px; padding-left: 18px; font-size: 8pt; }
.acc-color-delete label select { flex: 1; min-width: 0; }
/* "⚙ Upravljaj barve": every own colour with its light / dark swatch and how often it is used */
.acc-color-manager-row { display: flex; align-items: center; gap: 4px; padding: 2px 0; border-bottom: 1px solid #e5e7eb; }
.acc-color-manager-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-color-manager-uses { flex: none; color: #5f6b7a; font-size: 8pt; }
.acc-color-manager-row .acc-propsheet-btn { flex: none; padding: 0 4px; }
/* control picker of the property sheet: a search box with a list (AccPropertySheet.PickMatches) */
.acc-propsheet-pick { position: relative; display: flex; margin: 4px 6px; border: 1px solid #c3cad3; border-radius: 3px; background: #fff; }
.acc-propsheet-pick-input { flex: 1; min-width: 0; padding: 1px 4px; font-size: 9pt; border: 0; background: transparent; outline: none; }
.acc-propsheet-pick:focus-within { border-color: var(--acc-accent); box-shadow: 0 0 0 2px var(--app-focus); }
.acc-propsheet-pick-btn { flex: none; width: 20px; padding: 0; border: 0; border-left: 1px solid #e1e4ea; background: transparent; color: #44546a; font-size: 9px; cursor: pointer; }
.acc-propsheet-pick-list {
    position: absolute; top: 100%; left: -1px; right: -1px; z-index: 30; max-height: 300px; overflow: auto; margin-top: 2px;
    background: #fff; border: 1px solid #c3cad3; border-radius: 3px; box-shadow: 0 4px 12px rgba(0, 0, 0, .18); font-size: 9pt;
}
.acc-propsheet-pick-item { display: flex; justify-content: space-between; gap: 8px; padding: 2px 6px; cursor: pointer; white-space: nowrap; }
.acc-propsheet-pick-item span { overflow: hidden; text-overflow: ellipsis; }
.acc-propsheet-pick-item small { flex: none; color: #6b7280; }
.acc-propsheet-pick-item.current { font-weight: 600; }
.acc-propsheet-pick-item:hover, .acc-propsheet-pick-item.active { background: var(--acc-hl); }
.acc-propsheet-pick-none { padding: 4px 6px; color: #6b7280; font-style: italic; }
/* Record Source of the form: search box, list (Data.SourceKinds) by kind, … = query builder */
.acc-ps-source { flex: 1; min-width: 0; display: flex; align-items: stretch; background: #fffef2; }
.acc-propsheet-row .acc-ps-source-input { flex: 1; min-width: 0; }
.acc-ps-source-btn { flex: none; width: 20px; padding: 0; border: 0; border-left: 1px solid #e1e4ea; background: transparent; color: #44546a; font-size: 10px; cursor: pointer; }
.acc-ps-source-btn:hover { background: #e9eef6; }
.acc-ps-source-list { max-height: 280px; overflow: auto; margin: 0 0 4px; border: 1px solid #c3cad3; border-top: 0; background: #fff; font-size: 9pt;
    box-shadow: 0 3px 8px rgba(0, 0, 0, .12); }
.acc-ps-source-group { position: sticky; top: 0; z-index: 1; padding: 2px 6px; background: #eef2f7; color: #44546a; font-size: 8pt; font-weight: 700; text-transform: uppercase; }
.acc-ps-kind { padding: 0 4px; border-radius: 3px; font-size: 7.5pt; }
.acc-ps-kind-table { background: #e3edf9; color: #1d4f91 !important; }
.acc-ps-kind-view { background: #e6f4ea; color: #1e6b34 !important; }
.acc-ps-kind-query { background: #f3e8fd; color: #6b2fa3 !important; }
.acc-ps-kind-pt { background: #fdecef; color: #9b1c3a !important; }
.acc-ps-kind-local { background: #fff4d6; color: #8a5a00 !important; }
.acc-ps-kind-sql, .acc-ps-kind-orig { background: #eceff3; color: #475569 !important; }
.acc-layout-guide-x { width: 1px; top: 0; bottom: 0; }
.acc-layout-guide-y { height: 1px; left: 0; right: 0; }
.acc-dialog .acc-form { min-height: 120px; }
.acc-section { position: relative; flex: none; background: var(--acc-section); width: 100%; }
.acc-detail { flex: 1; min-height: 0; overflow: auto; display: flex; flex-direction: column; }
.acc-detail > .acc-section { flex: 1 0 auto; }
.acc-continuous { display: flex; flex: 1; flex-direction: column; min-width: 0; min-height: 0; }
.acc-continuous-list { flex: 1; min-height: 0; overflow: auto; }
.acc-continuous-pages { display: flex; flex: none; align-items: center; justify-content: center; gap: 10px; padding: 3px 6px; border-top: 1px solid var(--acc-border); background: #f0f0f0; font-size: 9pt; }
.acc-continuous-pages button { --bs-btn-padding-x: 5px; --bs-btn-padding-y: 0; --bs-btn-border-radius: 0; min-width: 28px; line-height: 1.4; }
.acc-continuous-pages input { width: 48px; padding: 0 3px; text-align: center; font: inherit; }
.acc-row { border-bottom: 1px solid #e0e0e0; }
.acc-row.acc-current > .acc-section { background: var(--acc-current); }
.acc-split-top { flex: 0 0 40%; min-height: 0; display: flex; border-bottom: 3px double var(--acc-border); }
.acc-error { padding: 8px 12px; background: #fde7e9; color: #a4262c; border-bottom: 1px solid #f1bbbc; }
.acc-error pre { white-space: pre-wrap; margin: 4px 0 0; font-family: Consolas, monospace; font-size: 9pt; }
.acc-layout-status { position: absolute; right: 8px; bottom: 8px; z-index: 30; padding: 3px 8px; background: #e8f3e8; border: 1px solid #a9c9a9; color: #285828; font-size: 9pt; pointer-events: none; }
/* ---------- MsgBox of the web shell (BrowserDialogs, accMessage): cards at the top centre, newest last */
.acc-webmsg-host {
    position: fixed; inset: 0; z-index: 2000; display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 10px; padding: 20px; background: rgba(20, 30, 50, .25);
}
.acc-webmsg {
    width: min(460px, 100%); padding: 14px 16px 12px; background: #fff; border: 1px solid #c9d3e3; border-left: 5px solid var(--app-primary, #2b579a);
    border-radius: 8px; box-shadow: 0 10px 30px rgba(28, 43, 70, .25); font-family: "Segoe UI", -apple-system, Roboto, Arial, sans-serif; color: #1f2d46;
}
.acc-webmsg-error { border-left-color: #c42b1c; }
.acc-webmsg-warning { border-left-color: #d68b00; }
.acc-webmsg-title { display: flex; align-items: center; gap: 8px; font-weight: 600; font-size: 11pt; margin-bottom: 6px; }
.acc-webmsg-icon { font-size: 14pt; }
.acc-webmsg-text { white-space: pre-wrap; font-size: 10pt; max-height: 50vh; overflow: auto; }
.acc-webmsg-note { margin-top: 8px; padding: 5px 8px; background: #fff6e0; border-radius: 4px; font-size: 9pt; color: #6b4e00; }
.acc-webmsg-buttons { display: flex; justify-content: flex-end; gap: 8px; margin-top: 12px; }
.acc-webmsg-buttons .btn { min-width: 80px; }
.acc-webmsg-input { margin-top: 10px; }
.acc-webmsg:focus { outline: none; }
/* ---------- loading overlay (AccLoader): over the form / subform / list / report that is loading */
.acc-loader {
    position: absolute; inset: 0; z-index: 60; display: flex; align-items: center; justify-content: center;
    container-type: size; background: rgba(244, 247, 251, .6); backdrop-filter: blur(1.5px); cursor: progress;
    opacity: 0; animation: acc-loader-in .2s ease-out .25s forwards; /* quick loads (filter, search) do not flash */
}
.acc-loader-card {
    position: relative; overflow: hidden; display: flex; align-items: center; gap: 14px; min-width: 230px; padding: 14px 22px 16px 16px;
    background: #fff; border: 1px solid color-mix(in srgb, var(--app-primary), white 78%); border-radius: 10px;
    box-shadow: 0 10px 30px rgba(28, 43, 70, .18), 0 1px 3px rgba(28, 43, 70, .12);
    font-family: "Segoe UI", -apple-system, Roboto, Arial, sans-serif; color: #1f2d46;
    animation: acc-loader-pop .25s cubic-bezier(.2, .9, .3, 1.2) .25s both;
}
.acc-loader-ring {
    flex: none; width: 32px; height: 32px; border-radius: 50%;
    background: conic-gradient(from 90deg, transparent 0 15%, color-mix(in srgb, var(--app-primary), white 55%) 45%, var(--app-primary));
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 3.5px));
    mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 3.5px));
    animation: acc-loader-spin .8s linear infinite;
}
.acc-loader-label { display: flex; flex-direction: column; gap: 1px; line-height: 1.25; }
.acc-loader-text { font-size: 10.5pt; font-weight: 600; white-space: nowrap; }
.acc-loader-time { font-size: 9pt; color: #6b7280; font-variant-numeric: tabular-nums; }
.acc-loader-bar { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: color-mix(in srgb, var(--app-primary), white 86%); }
.acc-loader-bar::before {
    content: ""; position: absolute; top: 0; bottom: 0; left: -35%; width: 35%; border-radius: 3px;
    background: linear-gradient(90deg, transparent, var(--app-primary), transparent); animation: acc-loader-slide 1.3s ease-in-out infinite;
}
/* start of the program (index.html, before Blazor draws the shell): the same card in the middle of the window, at once */
.acc-boot { position: fixed; z-index: 5000; background: #f4f7fb; opacity: 1; animation: none; cursor: progress; }
.acc-boot .acc-loader-card { animation: acc-loader-pop .25s cubic-bezier(.2, .9, .3, 1.2) both; }
@media (prefers-color-scheme: dark) {
    .acc-boot { background: #1e1f22; }
    .acc-boot .acc-loader-card { background: #2b2d31; border-color: #3a3d44; color: #e6e8eb; box-shadow: 0 10px 30px rgba(0, 0, 0, .4); }
}
/* small subforms: only the spinner and the text */
@container (max-height: 110px) or (max-width: 260px) {
    .acc-loader-card { min-width: 0; gap: 8px; padding: 5px 10px; border-radius: 6px; }
    .acc-loader-ring { width: 16px; height: 16px; }
    .acc-loader-text { font-size: 9pt; }
    .acc-loader-time, .acc-loader-bar { display: none; }
}
@keyframes acc-loader-in { to { opacity: 1; } }
@keyframes acc-loader-pop { from { transform: translateY(6px) scale(.97); opacity: 0; } }
@keyframes acc-loader-spin { to { transform: rotate(360deg); } }
@keyframes acc-loader-slide { to { left: 100%; } }
@media (prefers-reduced-motion: reduce) {
    .acc-loader-ring { animation-duration: 2.4s; }
    .acc-loader-bar::before { animation: none; left: 0; width: 100%; opacity: .5; }
}
/* hosts without a positioned box of their own */
.acc-loader-host { position: relative; flex: 1; min-height: 140px; }

/* ---------- navigation */
.acc-nav { display: flex; align-items: center; gap: 2px; padding: 2px 6px; border-top: 1px solid var(--acc-border); background: #f0f0f0; flex: none; font-size: 9pt; }
.acc-nav button { --bs-btn-padding-x: 4px; --bs-btn-padding-y: 0; --bs-btn-border-radius: 0; cursor: pointer; padding: 0 4px; font-size: 10pt; line-height: 1.4; }
.acc-nav button:hover:not(:disabled) { border-color: var(--acc-border); }
.acc-nav button:disabled { opacity: .35; cursor: default; }
.acc-nav-pos { width: 56px; min-height: 0; padding: 0 3px; text-align: center; font: inherit; border: 1px solid var(--acc-border); border-radius: 0; }
.acc-nav-sep { width: 12px; }
.acc-nav-filter { margin-left: 8px; padding: 0 6px; background: #fff4c2; border: 1px solid #e6d58f; }
/* in subforms (tables inside a form) a lower navigation bar: ~18 px instead of ~26 px */
.acc-subform .acc-nav { gap: 1px; padding: 1px 4px; font-size: 7.5pt; }
.acc-subform .acc-nav button { padding: 0 3px; font-size: 8pt; line-height: 1.15; }
.acc-subform .acc-nav-pos { width: 40px; height: 15px; line-height: 13px; font-size: 7.5pt; }
.acc-subform .acc-nav-sep { width: 6px; }
.acc-subform .acc-nav-filter { margin-left: 4px; padding: 0 4px; }

/* ---------- controls (positions come from inline styles) */
.acc-label, .acc-text, .acc-combo, .acc-list, .acc-button, .acc-check, .acc-frame, .acc-tab, .acc-subform, .acc-image, .acc-box {
    font-family: inherit; font-size: inherit;
}
.acc-label { overflow: hidden; white-space: pre-wrap; line-height: 1.2; padding: 1px 2px; }
.acc-text { border: 1px solid var(--acc-border); background: #fff; padding: 0 3px; margin: 0; color: inherit; outline: none; border-radius: 0; min-height: 0; line-height: inherit; }
.acc-text:focus { border-color: var(--acc-accent); box-shadow: 0 0 0 1px var(--acc-accent) inset; }
.acc-text.acc-date:not([readonly]):not(:disabled) {
    padding-right: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16'%3E%3Crect x='1.5' y='3' width='13' height='11.5' rx='1.5' fill='%23fff' stroke='%233a96d8' stroke-width='1.3'/%3E%3Crect x='1.5' y='3' width='13' height='3.5' fill='%233a96d8'/%3E%3Cpath d='M4.5 1v3M11.5 1v3' stroke='%233a96d8' stroke-width='1.3'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 3px center !important;
    background-size: 14px 14px !important;
}
.acc-text[readonly] { background: #f7f7f7; }
.acc-multi { resize: none; padding-top: 1px; }
.acc-left { text-align: left; } .acc-center { text-align: center; } .acc-right { text-align: right; }
.acc-combo { display: flex; }
.acc-combo > .acc-text { flex: 1; min-width: 0; width: 100%; height: 100%; }
.acc-combo-btn {
    flex: none; display: grid; place-items: center; width: 28px; border: 1px solid #3a96d8;
    border-left: none; border-radius: 0 4px 4px 0; background: #eef1f5; color: #3a96d8; padding: 0; cursor: pointer;
}
.acc-combo-btn::after {
    content: ""; width: 7px; height: 7px; margin-top: -3px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
}
.acc-combo-btn:hover:not(:disabled) { background: #3f94d5; border-color: #3f94d5; color: #fff; }
.acc-combo-btn:disabled { opacity: .55; }
.acc-dropdown { position: absolute; top: 100%; left: 0; z-index: 1000; max-height: 260px; overflow: auto; background: #fff; border: 1px solid var(--acc-border); box-shadow: 0 4px 12px rgba(0,0,0,.2); }
/* opened as a popover (browser top layer, AccComboBox): above every subform and MDI window regardless of their z-index */
.acc-dropdown[popover] { inset: auto; margin: 0; padding: 0; color: inherit; }
.acc-dropdown table, .acc-list table { border-collapse: collapse; width: 100%; }
.acc-dropdown .table, .acc-list .table { margin-bottom: 0; color: inherit; font: inherit; }
.acc-dropdown .table > :not(caption) > * > *, .acc-list .table > :not(caption) > * > * { padding: 1px 4px; color: inherit; background-color: transparent; border-bottom-color: var(--acc-grid-line, #e0e0e0); box-shadow: none; }
.acc-dropdown .table > :not(caption) > * > th { background-color: #f0f0f0; }
.acc-list .table > :not(caption) > * > th { background-color: var(--acc-grid-head, #f0f0f0); font-weight: 600; }
.acc-dropdown td, .acc-list td { padding: 1px 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: default; }
.acc-dropdown tr:hover > *, .acc-list tr:hover > * { background-color: var(--acc-grid-hover, #eef5fc); }
.acc-dropdown tr.acc-hl > * { background-color: var(--acc-hl) !important; }
.acc-dropdown tr:hover > * { background-color: var(--acc-hl) !important; }
.acc-dropdown th, .acc-list th { text-align: left; background: #f0f0f0; font-weight: 600; padding: 1px 4px; }
tr.acc-hl { background: var(--acc-hl) !important; }
.acc-list { border: 1px solid var(--acc-border); background: #fff; overflow: auto; }
.acc-button { --bs-btn-padding-x: 2px; --bs-btn-padding-y: 0; --bs-btn-border-radius: 0; --bs-btn-font-size: inherit; --bs-btn-font-weight: inherit; cursor: pointer; padding: 0 2px; display: inline-flex; align-items: center; justify-content: center; gap: 4px; overflow: hidden; line-height: normal; }
.acc-button:hover:not(:disabled) { border-color: var(--app-primary-hover); }
.acc-button:disabled { color: #999; cursor: default; }
.acc-button img { max-height: 100%; max-width: 100%; }
/* picture beside the caption (Picture Caption Arrangement; design view: Položaj slike) */
.acc-button.acc-pic-right { flex-direction: row-reverse; }
.acc-button.acc-pic-top { flex-direction: column; gap: 1px; }
.acc-button.acc-pic-bottom { flex-direction: column-reverse; gap: 1px; }
.acc-button.acc-pic-top img, .acc-button.acc-pic-bottom img { min-height: 0; max-height: calc(100% - 1.3em); }
.acc-pressed { box-shadow: inset 0 1px 3px rgba(0,0,0,.25); }
.acc-check { margin: 0; }
.form-check-input.acc-check { width: 13px; height: 13px; min-height: 0; padding: 0; border-radius: .2em; }
.form-check-input.acc-check:checked { background-color: var(--app-primary); border-color: var(--app-primary); }
.form-check-input.acc-check:focus { border-color: var(--app-primary); box-shadow: 0 0 0 .15rem var(--app-focus); }
.acc-frame { border: 1px solid var(--acc-border); pointer-events: none; }
.acc-tab { display: flex; flex-direction: column; }
.acc-tab-heads { display: flex; gap: 1px; flex: none; }
.acc-tab-head { border: 1px solid var(--acc-border); border-bottom: none; background: #ececec; padding: 2px 10px; cursor: pointer; font: inherit; }
.acc-tab-head.acc-active { background: #fff; font-weight: 700; position: relative; top: 1px; }
/* navigation control (Access navigation form): buttons that show their form in NavigationSubform */
.acc-navctl { display: flex; gap: 4px; align-items: center; padding: 4px 6px; box-sizing: border-box; background: var(--app-primary, #2f5597); }
.acc-navctl-btn { border: 1px solid transparent; border-radius: 4px; background: transparent; color: #fff; font: inherit; font-weight: 700; padding: 3px 12px; cursor: pointer; }
.acc-navctl-btn:hover { background: rgba(255, 255, 255, .18); }
.acc-navctl-btn.acc-active { background: #fff; color: var(--app-primary, #2f5597); }
.acc-tab-body { position: relative; flex: 1; border: 1px solid var(--acc-border); background: #fff; }
.acc-subform { border: 1px solid var(--acc-border); display: flex; overflow: hidden; z-index: 2; background: #fff; }
.acc-subform > .acc-form { flex: 1; }
.acc-image { object-fit: contain; }
.acc-rect { border: 1px solid var(--acc-border); pointer-events: none; }
.acc-line { border-top: 1px solid var(--acc-border); pointer-events: none; }
/* in design view rectangles and lines can be clicked (selected, moved); a line gets a few px to grab */
.acc-layout-editing .acc-rect, .acc-layout-editing .acc-line { pointer-events: auto; }
.acc-layout-editing .acc-line { min-height: 5px; }
.acc-unsupported { border: 1px dashed #c50f1f; color: #c50f1f; background: #fff5f5; font-size: 8pt; padding: 2px; overflow: hidden; }

/* ---------- datasheet */
.acc-sheet { display: flex; flex: 1; flex-direction: column; overflow: hidden; min-height: 0; background: #fff; }
.acc-sheet-toolbar { position: relative; z-index: 3; display: flex; flex: none; align-items: center; gap: 6px;
    min-height: 30px; padding: 3px 6px; border-bottom: 1px solid var(--acc-grid-head-line); background: #f7f8fa; font-size: 9pt; }
.acc-sheet-search { position: relative; display: flex; flex: none; align-items: center; gap: 3px; }
.acc-sheet-toolbar { flex-wrap: wrap; row-gap: 4px; }
.acc-sheet-tools-right { display: flex; flex: none; align-items: center; gap: 6px; } /* on the search line the growing status pushes it right; on a line of its own it starts at the left */
/* small datasheet (lower than 200 px, e.g. the subform F_Prevzem_Dfa, AccDatasheet.SheetCompact): the toolbar is behind
   ▾ (shown on hover) and opens over the table instead of taking half of it */
.acc-sheet.acc-sheet-compact { position: relative; }
.acc-sheet-compact > .acc-sheet-toolbar { display: none; }
.acc-sheet-compact.acc-tools-open > .acc-sheet-toolbar {
    display: flex; flex-wrap: wrap; position: absolute; top: 0; left: 0; right: 0; z-index: 20; padding-right: 28px;
    box-shadow: 0 3px 8px rgba(0, 0, 0, .18);
}
.acc-sheet-tools-toggle {
    position: absolute; top: 2px; right: 2px; z-index: 21; width: 20px; height: 18px; padding: 0; border: 1px solid #c3cad3;
    border-radius: 3px; background: #fff; color: #44546a; font-size: 10px; line-height: 16px; cursor: pointer; opacity: 0; transition: opacity .15s;
}
.acc-sheet-compact:hover > .acc-sheet-tools-toggle, .acc-sheet-compact:focus-within > .acc-sheet-tools-toggle,
.acc-tools-open > .acc-sheet-tools-toggle { opacity: 1; }
.acc-sheet-tools-toggle:hover { background: #e9eef6; }
.acc-sheet-search input[type="search"] { width: 190px; height: 24px; min-height: 0; padding: 2px 6px; font-size: 9pt; border-radius: 4px; }
.acc-sheet-tool-button { display: inline-flex; align-items: center; gap: 4px; height: 24px; padding: 0 8px; border: 1px solid #c9d1db;
    border-radius: 4px; background: #fff; color: #2f3b4c; font: inherit; font-size: 9pt; white-space: nowrap; cursor: pointer;
    transition: background-color .12s, border-color .12s, color .12s; }
.acc-sheet-tool-button:hover:not(:disabled) { background: #eef4fb; border-color: #9fb6d1; color: #1d3a5f; }
.acc-sheet-tool-button:active:not(:disabled) { background: #e1ebf7; }
.acc-sheet-tool-button:disabled { color: #a6aeb8; background: #f4f5f7; border-color: #dde2e8; cursor: default; }
.acc-sheet-tool-button.acc-tool-icon { width: 26px; padding: 0; justify-content: center; }
.acc-icon { flex: none; }

/* export menu (datasheet and AccList): coloured format badge, name and a short hint */
.acc-menu.acc-export-menu { display: flex; flex-direction: column; min-width: 230px; padding: 4px; border: 1px solid #d3d9e0;
    border-radius: 6px; box-shadow: 0 8px 24px rgba(15, 23, 42, .18); }
.acc-export-item { display: flex; align-items: center; gap: 10px; width: 100%; padding: 5px 10px 5px 6px; border: 0; border-radius: 4px;
    background: transparent; color: #1f2937; font: inherit; text-align: left; cursor: pointer; }
.acc-export-item:hover, .acc-export-item:focus-visible { background: #eef4fb; outline: none; }
.acc-export-badge { flex: none; min-width: 38px; padding: 0 4px; border-radius: 3px; color: #fff; text-align: center;
    font: 700 9px/18px "Segoe UI", sans-serif; letter-spacing: .04em; }
.acc-export-xlsx { background: #1d6f42; }
.acc-export-pdf { background: #c4302b; }
.acc-export-csv { background: #64748b; }
.acc-export-text { display: flex; flex-direction: column; line-height: 1.25; }
.acc-export-text { font-weight: 400; }
.acc-export-text b { font-weight: 600; }
.acc-export-text small { color: #6b7280; font-size: .85em; font-weight: 400; }
.acc-sheet-tool-status { display: flex; flex: 1; flex-wrap: wrap; gap: 8px; min-width: 0; color: var(--acc-grid-muted); font-size: 8pt; }
.acc-sheet-filter-chips { display: flex; flex: none; flex-wrap: wrap; align-items: center; gap: 5px; padding: 3px 7px;
    border-bottom: 1px solid var(--acc-grid-line); background: #fff; color: var(--acc-grid-muted); font-size: 8pt; }
.acc-sheet-filter-chip { cursor: grab; display: inline-flex; align-items: center; gap: 4px; max-width: 100%; padding: 1px 5px;
    border: 1px solid #cbd8e8; border-radius: 10px; background: #edf4fc; color: #263b55; }
.acc-sheet-filter-chip button { border: 0; padding: 0 2px; background: transparent; color: #4b6078; cursor: pointer; line-height: 1; }
.acc-sheet-filter-chips .acc-sheet-filter-join { border: 1px solid #9db3cc; border-radius: 8px; padding: 0 6px; background: #fff; color: #2a5a8c; font-size: 10px; font-weight: 700; cursor: pointer; line-height: 16px; }
.acc-sheet-fields { position: absolute; top: calc(100% + 3px); left: 190px; z-index: 9002; display: flex; flex-direction: column;
    min-width: 150px; max-height: 55vh; overflow: auto; padding: 5px 8px; border: 1px solid #b5b5b5; background: #fff;
    box-shadow: 2px 3px 8px rgba(0,0,0,.25); font-size: 9pt; }
.acc-sheet-fields label { display: flex; align-items: center; gap: 5px; padding: 2px 0; white-space: nowrap; }
.acc-sheet-fields input { margin: 0; }
.acc-sheet-grid { flex: 1; min-height: 0; overflow: auto; background: #fff; }
/* pages of a long datasheet (AccDatasheet.Pages.cs) */
.acc-sheet-pager { display: flex; flex: none; flex-wrap: wrap; align-items: center; gap: 6px; padding: 3px 6px;
    border-top: 1px solid var(--acc-grid-head-line); background: #f7f8fa; font-size: 9pt; color: #334155; }
.acc-sheet-pager input.acc-sheet-page { display: inline-block; width: 64px; height: 23px; min-height: 0; padding: 1px 4px; font-size: 9pt; text-align: center; }
.acc-sheet-pager .acc-sheet-pager-info { margin-left: 6px; color: #64748b; }
.acc-sheet-pager label { display: inline-flex; align-items: center; gap: 4px; margin-left: auto; }
.acc-sheet-pager select.acc-sheet-page-size { width: auto; height: 23px; min-height: 0; padding: 0 22px 0 5px; font-size: 9pt; }
.acc-sheet table { border-collapse: collapse; table-layout: fixed; }
.acc-sheet .acc-data-table { margin-bottom: 0; color: inherit; font: inherit; }
.acc-sheet .acc-data-table > :not(caption) > * > * { padding: 0; color: inherit; background-color: transparent; border-bottom-width: 1px; border-bottom-color: var(--acc-grid-line); box-shadow: none; }
.acc-sheet .acc-data-table > :not(caption) > * > th { background-color: var(--acc-grid-head); }
/* the totals row (Σ) is sticky at the bottom: opaque, else the records scrolled under it show through (2026-10-20) */
.acc-sheet .acc-data-table > tfoot > tr > td { background-color: #eef2f7; }
.acc-sheet .acc-data-table > tfoot > tr > td.acc-total:hover { background-color: #e1ebf7; }
.acc-sheet .acc-data-table > thead > tr > th[data-col] { padding: 4px 18px 4px 6px; }
.acc-sheet .acc-data-table > thead > tr > th.acc-sel { padding: 0; }
.acc-sheet th { position: sticky; top: 0; z-index: 2; background: #f0f0f0; border: 1px solid #d0d0d0; font-weight: 600; text-align: left; padding: 2px 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.acc-sheet td { border: 1px solid #e0e0e0; padding: 0; height: var(--acc-sheet-row-h, 22px); }
.acc-sheet .acc-sel { width: 20px; min-width: 20px; text-align: center; background: #f0f0f0; cursor: pointer; font-size: 8pt; }
.acc-sheet tr.acc-current td { background: var(--acc-current); }
.acc-sheet tr.acc-selrow td, .acc-sheet tr.acc-selrow td.acc-sel { background: var(--acc-hl); }
.acc-sheet .acc-data-table > tbody > tr:hover > * { background-color: var(--acc-grid-hover); }
.acc-sheet .acc-data-table > tbody > tr.acc-current > * { background-color: var(--acc-current); }
.acc-sheet .acc-data-table > tbody > tr.acc-selrow > * { background-color: var(--acc-hl); }
.acc-sheet:focus { outline: none; }
.acc-sheet td.acc-sel { user-select: none; }
.acc-sheet th.acc-sel { cursor: pointer; }
.acc-cell > .acc-text, .acc-cell > .acc-combo { width: 100%; height: 21px; border: none; background: transparent; }
.acc-cell > .acc-combo .acc-text { border: none; background: transparent; }
.acc-cell > .acc-check { display: block; margin: 3px auto; }
.acc-newrow td { height: 20px; color: #888; cursor: pointer; }
.acc-cell > .acc-combo { position: relative; }
/* Totals row (AccDatasheet.Totals.cs): stays at the bottom of the grid; the function is a select over the cell */
.acc-sheet-tool-button.acc-tool-on { background: #e1ebf7; border-color: #7f9fc6; color: #1d3a5f; font-weight: 700; }
.acc-sheet tfoot td { position: sticky; bottom: 0; z-index: 2; background: #eef2f7; border: 1px solid #d0d0d0; border-top: 2px solid #9fb0c4;
    height: 23px; padding: 0 4px; font-weight: 600; white-space: nowrap; }
.acc-sheet tfoot td.acc-total { position: sticky; overflow: hidden; }
.acc-sheet tfoot td.acc-total-num { text-align: right; }
.acc-total-value { position: relative; z-index: 0; pointer-events: none; padding-right: 12px; }
.acc-total-pick { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; font-size: 9pt; }
.acc-sheet tfoot td.acc-total::after { content: "▾"; position: absolute; right: 3px; top: 3px; font-size: 8pt; color: #8a97a8; pointer-events: none; }
.acc-sheet tfoot td.acc-total:hover { background: #e1ebf7; }

/* ---------- ActiveX replacements */
.acc-webbrowser { border: 1px solid var(--acc-border); background: #fff; display: flex; }
.acc-webbrowser iframe { flex: 1; border: none; width: 100%; height: 100%; }

/* drop-down inside a datasheet must not inherit the sheet's cell styles */
.acc-sheet .acc-dropdown td, .acc-sheet tr.acc-current .acc-dropdown td { background: transparent; border: none; height: auto; padding: 1px 4px; }
.acc-sheet .acc-dropdown tr.acc-hl > * { background-color: var(--acc-hl) !important; }
.acc-sheet.acc-subform-sheet .acc-dropdown tr.acc-hl > * { background-color: var(--acc-grid-selected) !important; }
.acc-sheet.acc-subform-sheet .acc-dropdown tr:hover > * { background-color: var(--acc-grid-selected) !important; }
.acc-sheet .acc-dropdown th { position: static; }
/* .acc-sheet table is table-layout: fixed; a fixed 100 % table in a drop-down without a set width filled the whole window */
.acc-sheet .acc-dropdown table { table-layout: auto; }

/* Report preview (FastReport → HTML) */
.acc-report { display: flex; flex-direction: column; flex: 1; min-width: 0; min-height: 0; }
.acc-report-bar { display: flex; gap: 6px; align-items: center; padding: 4px 8px; border-bottom: 1px solid #c8c8c8; background: #f3f3f3; }
.acc-report-bar button { --bs-btn-padding-x: 10px; --bs-btn-padding-y: 3px; }
.acc-report-status { color: #555; margin-left: 8px; }
.acc-report-body { position: relative; display: flex; flex: 1; min-height: 0; }
.acc-report-frame { flex: 1; width: 100%; border: 0; min-height: 0; background: #8a8f96; }

/* disabled/locked fields keep their own colours (Access shows them normally, e.g. header texts in white) */
.acc-text:disabled { color: inherit; opacity: 1; -webkit-text-fill-color: currentColor; }
.acc-text[style*="background:transparent"] { background: transparent; }
/* Access HoverColor of themed buttons */
.acc-button[style*="--acc-hover"]:hover:not(:disabled) { background: var(--acc-hover) !important; }
.acc-button[style*="--acc-pressed"]:active:not(:disabled) { background: var(--acc-pressed) !important; }
.acc-button[style*="--acc-pressed:#1F497D"] { --acc-pressed: var(--app-primary-hover) !important; }
.acc-button[style*="--acc-pressed:#9B3937"] { --acc-pressed: var(--app-danger-hover) !important; }
.acc-button[style*="background:#5C83B4"], .acc-button[style*="background:#69ACD9"] { background: var(--app-primary) !important; }
.acc-button[style*="border-color:#5C83B4"] { border-color: var(--app-primary) !important; }
.acc-button[style*="--acc-hover:#1F497D"], .acc-button[style*="--acc-hover:#4682B4"] { --acc-hover: var(--app-primary-hover) !important; }
.acc-button[style*="background:#C0504D"] { background: var(--app-danger) !important; }
.acc-button[style*="border-color:#9B3937"] { border-color: var(--app-danger) !important; }
.acc-button[style*="--acc-hover:#9B3937"] { --acc-hover: var(--app-danger-hover) !important; }
/* text-like (transparent, borderless) buttons, e.g. "prijavljen kot" in the footer, use the colour of neighbouring texts */
.acc-button[style*="background:transparent"][style*="border:none"]:not(:hover) { color: inherit !important; }
.acc-button[style*="background:#758C48"] { background: var(--app-success) !important; }
.acc-button[style*="--acc-hover:#758C48"] { --acc-hover: var(--app-success-hover) !important; }
/* one-line labels and display-only fields: browser text is a little wider than Access's – no wrap, no clipping */
.acc-label.acc-oneline { white-space: pre; overflow: visible; }
/* a control 0 px wide (Access: only there for the tab order, e.g. txtSamoZaradiTabOrderja) is not seen but still takes the focus */
.acc-form:not(.acc-layout-editing) [data-acc-name][style*="width:0px;"]:not([style*="-width:0px;"]) { opacity: 0; }
.acc-text.acc-display { white-space: pre; overflow: visible; display: flex; align-items: center; cursor: default; }
.acc-text.acc-display.acc-right { justify-content: flex-end; }
.acc-text.acc-display.acc-center { justify-content: center; }
/* short captions on narrow buttons stay on one line (browser text is a little wider than Access's) */
.acc-button > span { white-space: nowrap; }
/* a button tall enough for two lines wraps its caption between words, like Access (AccButton.Wraps) */
.acc-button.acc-button-wrap > span { white-space: normal; text-align: center; overflow-wrap: normal; }
.acc-button { padding: 0 2px; }

/* ---- datasheet: header (sort/filter button, resize handle), shortcut menu, filter list ---- */
.acc-sheet th { position: sticky; }
.acc-sheet th[data-col] { padding-right: 18px; }
.acc-sheet th .acc-th-sort { margin-left: 3px; font-size: 7pt; color: #555; }
.acc-sheet th .acc-th-filter { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 14px; height: 14px; padding: 0;
    border: 1px solid transparent; background: transparent; font-size: 8pt; line-height: 12px; color: #666; cursor: pointer; opacity: .55; }
.acc-sheet th:hover .acc-th-filter, .acc-sheet th.acc-filtered .acc-th-filter { opacity: 1; }
.acc-sheet th .acc-th-filter:hover { border-color: #9ab; background: #fff; }
.acc-sheet th.acc-filtered { background: #dbe8f6; }
.acc-sheet th.acc-filtered .acc-th-filter { color: #1a5fb4; font-weight: bold; }
.acc-sheet th .acc-col-resize { position: absolute; right: -3px; top: 0; bottom: 0; width: 6px; cursor: col-resize; z-index: 3; }
body.acc-col-resizing, body.acc-col-resizing * { cursor: col-resize !important; user-select: none !important; }
.acc-popup-cover { position: fixed; inset: 0; z-index: 9000; }
.acc-menu, .acc-filter { position: fixed; z-index: 9001; background: #fff; border: 1px solid #b5b5b5; box-shadow: 2px 3px 8px rgba(0,0,0,.25);
    padding: 3px 0; font-size: 9pt; min-width: 210px; }
.acc-mdi-content > .acc-popup-cover { display: block; flex: none; }
.acc-mdi-content > .acc-menu, .acc-mdi-content > .acc-filter {
    display: flex; flex: none; flex-direction: column; align-items: stretch;
}
.acc-menu-item { display: flex; align-items: center; width: 100%; height: 24px; padding: 0 12px 0 4px; border: none; background: transparent;
    text-align: left; font: inherit; cursor: default; white-space: nowrap; }
.acc-menu-item:hover:not(:disabled) { background: var(--acc-hl); }
.acc-menu-item:disabled { color: #a0a0a0; }
.acc-menu-icon { display: inline-block; width: 24px; text-align: center; color: #444; }
.acc-menu-item:disabled .acc-menu-icon { color: #c0c0c0; }
.acc-menu-keys { margin-left: auto; padding-left: 24px; color: #777; }
.acc-menu-sep { height: 1px; margin: 4px 6px 4px 28px; background: #ddd; }
.acc-filter { width: 260px; }
.acc-filter-operator { width: calc(100% - 16px); min-height: 0; margin: 4px 8px; padding: 3px 5px; font: inherit; font-size: 9pt; }
.acc-filter-search { display: block; width: calc(100% - 16px); min-height: 0; margin: 4px 8px; padding: 3px 5px; border: 1px solid #b5b5b5; border-radius: 0; font: inherit; }
.acc-filter-add { align-self: stretch; margin: 2px 8px; padding: 3px 5px; font: inherit; font-size: 9pt; }
.acc-filter-error { margin: 2px 8px; color: #b42318; font-size: 8pt; }
.acc-filter-existing { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin: 1px 8px; padding: 1px 4px; background: #eaf1fa; border-radius: 3px; font-size: 8.5pt; }
.acc-filter-existing button { border: 0; background: transparent; color: #4b6078; cursor: pointer; padding: 0 3px; }
.acc-filter-existing button:hover { color: #b42318; }
.acc-filter-list { max-height: 260px; overflow: auto; margin: 0 8px; border: 1px solid #ddd; padding: 2px 0; }
.acc-filter-list label { display: flex; align-items: center; gap: 5px; padding: 1px 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.acc-filter-list .form-check-input { flex: none; margin: 0; }
.acc-filter-list label:hover { background: var(--acc-hl); }
.acc-filter-all { font-style: italic; }
.acc-filter-wait { padding: 4px 6px; color: #777; }
.acc-filter-buttons { display: flex; justify-content: flex-end; gap: 6px; padding: 6px 8px 3px; }
.acc-filter-buttons button { min-width: 70px; }

/* =====================================================================================================
   Modern look (in the spirit of Tabulator, tabulator.info): tab controls and datasheets.
   Kept at the end so it overrides the basic Access look above; app.css can still override it.
   ===================================================================================================== */
:root {
    --acc-grid-head: #eef1f5;
    --acc-grid-head-hover: #e2e8f0;
    --acc-grid-line: #e3e7ec;
    --acc-grid-head-line: #c3cad3;
    --acc-grid-even: #f7f9fb;
    --acc-grid-hover: color-mix(in srgb, var(--app-primary), white 91%);
    --acc-grid-current: #a5cff1;
    --acc-grid-selected: color-mix(in srgb, var(--app-primary), white 82%);
    --acc-grid-muted: #6b7785;
}

/* ---- tab control */
.acc-tab-heads { gap: 2px; padding: 0 2px; border-bottom: 1px solid var(--acc-grid-head-line); }
.acc-tab-head {
    position: relative; margin-bottom: -1px; padding: 3px 14px 4px; border: 1px solid transparent; border-bottom: none;
    border-radius: 6px 6px 0 0; background: transparent; color: #4a5562; font-weight: 600; white-space: nowrap;
    transition: background-color .12s, color .12s;
}
.acc-tab-head:hover { background: var(--acc-grid-head-hover); color: var(--acc-text); }
.acc-tab-head.acc-active {
    top: 0; background: #fff; color: var(--acc-accent); border-color: var(--acc-grid-head-line);
    box-shadow: inset 0 3px 0 var(--acc-accent);
}
.acc-tab-body { border: 1px solid var(--acc-grid-head-line); border-top: none; }

/* ---- datasheet */
.acc-sheet { border-top: 1px solid var(--acc-grid-head-line); }
.acc-sheet th {
    background: var(--acc-grid-head); color: #3c4650; font-weight: 600; border: none;
    border-right: 1px solid #d5dae0; border-bottom: 2px solid var(--acc-grid-head-line); padding: 4px 18px 4px 6px; height: 26px;
}
.acc-sheet th:hover { background: var(--acc-grid-head-hover); }
.acc-sheet th.acc-sel { padding: 0; }
.acc-sheet td { border: none; border-right: 1px solid var(--acc-grid-line); border-bottom: 1px solid var(--acc-grid-line); height: 24px; }
.acc-sheet .acc-sel { background: var(--acc-grid-head); color: var(--acc-grid-muted); border-right: 1px solid #d5dae0; }
.acc-sheet tbody tr:nth-child(even) td { background: var(--acc-grid-even); }
.acc-sheet tbody tr:hover td { background: var(--acc-grid-hover); }
.acc-sheet tbody tr.acc-current td { background: var(--acc-grid-current); }
.acc-sheet tbody tr.acc-current td.acc-sel { color: #1f5f99; box-shadow: inset 3px 0 0 #3a96d8; }
.acc-sheet tbody tr.acc-selrow td, .acc-sheet tbody tr.acc-selrow td.acc-sel { background: var(--acc-grid-selected); }
.acc-sheet tbody tr.acc-selrow td.acc-sel { box-shadow: inset 3px 0 0 var(--acc-accent); color: var(--acc-accent); }
.acc-sheet tbody td.acc-sel { background: var(--acc-grid-head); }
.acc-sheet.acc-subform-sheet { --acc-grid-even: #d6dfec; --acc-grid-current: #a5cff1; --acc-grid-selected: #a5cff1; }
.acc-sheet.acc-subform-sheet .acc-data-table > tbody > tr.acc-current > * {
    --bs-table-bg-state: var(--acc-grid-current);
    background-color: var(--acc-grid-current) !important;
}
.acc-sheet.acc-subform-sheet .acc-data-table > tbody > tr.acc-selrow > * {
    --bs-table-bg-state: var(--acc-grid-selected);
    background-color: var(--acc-grid-selected) !important;
}
.acc-sheet.acc-subform-sheet .acc-data-table > tbody > tr.acc-newrow > * { background-color: #fff !important; }
.acc-cell > .acc-text, .acc-cell > .acc-combo { height: 23px; }
.acc-cell > .acc-text, .acc-cell > .acc-combo .acc-text { padding: 0 6px; }
.acc-cell > .acc-text[readonly], .acc-cell > .acc-combo .acc-text[readonly] { background: transparent; }
/* the cell being edited */
.acc-sheet td.acc-cell:focus-within { background: #fff !important; box-shadow: inset 0 0 0 2px var(--acc-accent); }
.acc-cell > .acc-text:focus, .acc-cell > .acc-combo .acc-text:focus { box-shadow: none; }
/* combo box buttons only where they are used: on the row under the mouse and in the cell being edited */
.acc-cell > .acc-combo .acc-combo-btn { visibility: hidden; width: 16px; border: none; border-radius: 0; background: transparent; color: var(--acc-grid-muted); }
.acc-cell > .acc-combo .acc-combo-btn::after { width: 6px; height: 6px; }
.acc-sheet td.acc-cell:hover > .acc-combo .acc-combo-btn, .acc-sheet td.acc-cell:focus-within .acc-combo .acc-combo-btn { visibility: visible; }
.acc-cell > .acc-combo .acc-combo-btn:hover:not(:disabled) { background: #3f94d5; color: #fff; }
.acc-sheet tr.acc-newrow td { background: #fff; color: var(--acc-grid-muted); height: 22px; }
.acc-sheet tr.acc-newrow:hover td { background: var(--acc-grid-hover); }
.acc-sheet tr.acc-newrow td.acc-sel { background: var(--acc-grid-head); font-weight: 700; }
/* the button lies over the cell's right edge, so narrow columns keep their whole width for the text */
.acc-cell > .acc-combo .acc-combo-btn { position: absolute; right: 0; top: 0; bottom: 0; background: var(--acc-grid-head); }
.acc-sheet td.acc-cell:focus-within .acc-combo-btn { background: #fff; }

/* layout editor: added controls and toolbox */
.acc-detail, .acc-sec-header, .acc-sec-footer { position: relative; }
.acc-added-layer { position: absolute; left: 0; top: 0; width: 0; height: 0; overflow: visible; }
.acc-layout-placing, .acc-layout-placing :is(.acc-detail, .acc-sec-header, .acc-sec-footer) * { cursor: crosshair !important; }
/* design view: bars with the names of the sections (Access: Glava obrazca, Podrobnosti, Noga obrazca); a form without
   a header or footer gets "+ Glava obrazca" / "+ Noga obrazca", one added there an ✕ to remove it */
.acc-sec-bar {
    display: flex; flex: none; align-items: center; gap: 6px; height: 20px; padding: 0 8px; user-select: none;
    background: #e4e8ee; border-top: 1px solid #c3cad3; border-bottom: 1px solid #c3cad3; color: #3c4650;
    font: 600 11px "Segoe UI", system-ui, sans-serif;
}
.acc-sec-bar button {
    height: 16px; padding: 0 6px; border: 1px solid transparent; border-radius: 3px; background: none; color: inherit;
    font: inherit; line-height: 1; cursor: pointer;
}
.acc-sec-bar button:hover { background: #fff; border-color: #c3cad3; }
.acc-sec-bar .acc-sec-add { padding: 0 4px; color: var(--acc-accent); font-weight: 600; }
.acc-sec-bar .acc-sec-eye { padding: 0 4px; }
.acc-sec-bar .acc-sec-eye-off { color: #b45309; font-weight: 600; }
.acc-sec-bar .acc-sec-code { margin-left: 4px; color: #5f6b7a; font-style: italic; }
/* Order in design view (one stacking context: the window or subform, access.js layer()): context menu 2900 > property
   sheet 2700 > button editor 2650 > toolbox 2600 > editor decorations (selection, handles, frames, rulers ≤ 2400) */
.acc-layout-layer { display: contents; }
.acc-toolbox, .acc-props { position: fixed; z-index: 2600; background: #f6f8fb; border: 1px solid #98a8bd; border-radius: 6px;
    box-shadow: 0 4px 14px rgba(0,0,0,.25); padding: 6px; font-size: 12px; display: flex; flex-direction: column; gap: 2px; }
.acc-toolbox { left: 12px; top: 150px; width: 170px; }
.acc-toolbox-title { display: flex; align-items: center; justify-content: space-between; cursor: move; user-select: none; touch-action: none; }
.acc-toolbox .acc-toolbox-pin { padding: 0 4px; opacity: .45; cursor: pointer; }
.acc-toolbox-pinned .acc-toolbox-pin { opacity: 1; background: #cfe3f7; }
.acc-props { left: 50%; top: 30%; transform: translateX(-50%); width: 280px; gap: 6px; z-index: 2650; }
.acc-props label { display: flex; flex-direction: column; font-size: 11px; }
.acc-toolbox-title { font-weight: bold; color: #27408B; padding: 2px 4px; border-bottom: 1px solid #d0d8e4; margin-bottom: 3px; }
.acc-toolbox-hint { font-size: 10px; color: #667; padding: 4px; }
/* design view: lasso, section handles, tab order, grid */
.acc-layout-lasso { position: fixed; z-index: 2400; border: 1px dashed var(--app-primary); background: color-mix(in srgb, var(--app-primary), transparent 90%); pointer-events: none; }
.acc-section-handle { position: fixed; z-index: 2300; height: 6px; cursor: ns-resize; background: repeating-linear-gradient(90deg, #7fa3d4 0 6px, transparent 6px 10px); opacity: .55; }
.acc-width-handle { position: fixed; z-index: 2300; width: 6px; cursor: ew-resize; background: repeating-linear-gradient(0deg, #7fa3d4 0 6px, transparent 6px 10px); opacity: .55; }
.acc-section-handle:hover, .acc-width-handle:hover { opacity: 1; }
.acc-tab-badge { position: fixed; z-index: 2350; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 9px; transform: translate(-6px, -6px);
    background: #fff; color: var(--app-primary); border: 1px solid var(--app-primary); font: 600 8pt "Segoe UI", sans-serif; line-height: 16px; text-align: center; pointer-events: none; }
.acc-tab-badge-set { background: var(--app-primary); color: #fff; }
body.acc-layout-grid .acc-layout-editing .acc-section {
    background-image: radial-gradient(circle, rgba(60, 80, 110, .28) 1px, transparent 1.2px) !important; background-size: 8px 8px !important; }
.acc-sec-header, .acc-sec-footer { flex: none; }
.acc-ribbon-toggle.active { background: color-mix(in srgb, var(--app-primary), white 82%); border-color: var(--app-primary); }
.acc-cf { padding: 4px 6px; border-top: 1px solid #d0d8e4; }
.acc-cf-title { font-weight: 600; color: #27408B; margin-bottom: 3px; }
.acc-cf-row { display: grid; grid-template-columns: 1fr 26px 26px 22px 22px; gap: 3px; align-items: center; margin-bottom: 3px; }
.acc-cf-row input[type=text] { min-width: 0; font: inherit; padding: 1px 4px; }
/* navigation control in design view (Zavihki): caption and form share the width */
.acc-cf-row.acc-nav-item { grid-template-columns: 1fr 1fr 20px 20px 20px; }
.acc-cf-row.acc-nav-item select { min-width: 0; font: inherit; }
.acc-cf-row input[type=color] { width: 26px; height: 22px; padding: 0; border: 1px solid #b8c2d0; }
.acc-cf button { border: 1px solid #b8c2d0; background: #fff; border-radius: 3px; padding: 0 6px; }
.acc-toolbox-section { font-weight: bold; color: #27408B; padding: 4px 4px 2px; border-top: 1px solid #d0d8e4; margin-top: 2px; }
.acc-toolbox-section small { font-weight: normal; color: #667; }
.acc-fieldlist { display: flex; flex-direction: column; max-height: 260px; overflow-y: auto; }
.acc-toolbox .acc-fieldlist button { display: flex; justify-content: space-between; gap: 6px; padding: 2px 6px; cursor: grab; white-space: nowrap; }
.acc-toolbox .acc-fieldlist button small { color: #889; font-size: 8pt; }
.acc-toolbox .acc-fieldlist button.active small { color: #e6f0fa; }
.acc-toolbox button, .acc-props button { text-align: left; border: 1px solid transparent; background: transparent; padding: 3px 6px; border-radius: 3px; }
.acc-toolbox button:hover, .acc-props button:hover { background: #dbe7f5; }
.acc-toolbox button.active { background: #3a96d8; color: #fff; }
.acc-form-selected { outline: 2px solid #3a96d8; outline-offset: -2px; }
.acc-ribbon-group-buttons.acc-ribbon-group-3 { grid-template-columns: repeat(4, auto); }
/* anchoring presets (ribbon menu and right click) */
.acc-anchor-menu { display: grid !important; grid-template-columns: repeat(3, 96px); gap: 4px; padding: 6px; }
.acc-anchor-menu button { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 5px 2px; border: 1px solid #d3d9e0; border-radius: 4px; background: #fff; }
.acc-anchor-menu button:hover { background: var(--acc-hl); }
.acc-anchor-menu small { font-size: 7.5pt; color: #374151; white-space: nowrap; }
/* a frame with a bar along the anchored edges */
.acc-anchor-frame { position: relative; display: block; width: 38px; height: 38px; border: 1px solid #9ca3af; background: #f9fafb; }
.acc-anchor-frame span { position: absolute; background: var(--app-primary); border-radius: 1px; }
.acc-source-menu-anchors { display: grid; grid-template-columns: repeat(3, 30px); gap: 3px; padding: 2px 10px 4px; }
.acc-source-menu .acc-source-menu-anchors button { position: relative; min-width: 0; width: 30px; height: 30px; padding: 0; border: 1px solid #d3d9e0; border-radius: 3px; }
.acc-source-menu .acc-source-menu-anchors button.active { border-color: var(--app-primary); background: var(--acc-hl); }
.acc-source-menu-anchors .acc-anchor-frame { width: 22px; height: 22px; margin: 3px; }
.acc-source-menu-row { display: flex; flex-wrap: wrap; gap: 2px; padding: 2px 8px 4px; max-width: 220px; }
.acc-source-menu .acc-source-menu-row button { min-width: 26px; width: auto; padding: 2px 4px; text-align: center; border: 1px solid #d3d9e0; border-radius: 3px; }
.acc-source-menu-label { padding: 4px 10px 0; font-size: 8pt; color: #6b7280; }
/* "Kje je shranjeno": label left, file:line right (opens VS Code there) */
.acc-source-menu button.acc-source-menu-loc { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; }
.acc-source-menu-loc small { color: #6b7280; font: 8pt Consolas, monospace; white-space: nowrap; }
.acc-source-menu-note { padding: 2px 10px; font-size: 8pt; color: #b8560b; }
.acc-source-menu-sep { height: 1px; margin: 4px 6px; background: #e5e7eb; }
/* shortcut menu items as in Access: glyph or ✓ left, label, shortcut right; flyouts (access.js positions them) */
.acc-source-menu-title { max-width: 320px; margin-bottom: 2px; padding: 3px 10px 4px; border-bottom: 1px solid #e5e7eb; font-size: 8pt; font-weight: 600; color: #374151; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.acc-source-menu .acc-smi { display: flex; align-items: center; gap: 4px; width: 100%; min-width: 200px; height: 24px; padding: 0 10px 0 2px; white-space: nowrap; }
.acc-smi-glyph { flex: none; width: 22px; text-align: center; font-style: normal; color: #4b5563; }
.acc-smi-text { flex: 1; }
.acc-smi-keys { margin-left: 20px; font-size: 8pt; color: #6b7280; }
.acc-smi-arrow { margin-left: 20px; font-weight: normal; color: #6b7280; }
.acc-smi-default .acc-smi-text { font-weight: 600; }
.acc-source-menu button:disabled { color: #a0a0a0; cursor: default; }
.acc-source-menu button:disabled:hover { background: #fff; }
.acc-source-menu button:disabled .acc-smi-glyph, .acc-source-menu button:disabled .acc-smi-keys, .acc-source-menu button:disabled .acc-smi-arrow { color: #c0c0c0; }
.acc-source-submenu { display: none; position: fixed; z-index: 2901; flex-direction: column; padding: 3px; background: #fff; border: 1px solid var(--acc-border); box-shadow: 0 3px 12px rgba(0,0,0,.25); }
.acc-smi-sub.open > .acc-source-submenu { display: flex; }
.acc-smi-sub.open > .acc-smi { background: var(--acc-hl); }
.acc-source-submenu .acc-source-menu-anchors { padding: 4px; }
/* Lastnosti (Alt+Enter, menu): the property sheet flashes */
.acc-propsheet.acc-source-menu-flash { animation: acc-source-menu-flash 1s ease-out; }
@keyframes acc-source-menu-flash { 0%, 35% { outline: 3px solid var(--app-primary); outline-offset: 1px; } 100% { outline: 3px solid transparent; outline-offset: 1px; } }
.acc-toolbox-help { margin-left: auto; border: 1px solid transparent; background: transparent; font-weight: 700; color: #6b7280; }
.acc-toolbox-help:hover { border-color: #c3cad3; background: #fff; }
.acc-fieldlist-search { width: calc(100% - 4px); margin: 2px; padding: 1px 6px; font-size: 9pt; border: 1px solid #c3cad3; border-radius: 3px; }
.acc-design-help { width: min(760px, 94vw); background: #fff; border-radius: 6px; box-shadow: 0 8px 30px rgba(0,0,0,.35); }
.acc-design-help-body { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; padding: 12px 16px; font-size: 9.5pt; }
.acc-design-help-group b { display: block; margin-bottom: 4px; color: var(--app-primary); }
.acc-design-help-group div { display: flex; gap: 8px; padding: 1px 0; }
.acc-design-help-group kbd { flex: none; min-width: 140px; padding: 0 4px; border: 1px solid #c3cad3; border-bottom-width: 2px; border-radius: 3px; background: #f9fafb; color: #111; font: 8.5pt "Segoe UI", sans-serif; }
.acc-layout-gap { position: fixed; z-index: 2199; pointer-events: none; background: #d946ef; }
.acc-layout-gap b { position: absolute; padding: 0 3px; border-radius: 3px; background: #d946ef; color: #fff; font: 8px "Segoe UI", sans-serif; white-space: nowrap; }
/* rulers (cm) in design view: room for them inside the form */
.acc-form.acc-layout-editing.acc-has-rulers { padding: 18px 0 0 20px; }
.acc-ruler { position: fixed; z-index: 2150; background: #f3f5f8; color: #6b7280; font: 8px "Segoe UI", sans-serif; overflow: hidden; cursor: pointer; user-select: none; }
.acc-ruler-h { height: 16px; border-bottom: 1px solid #c3cad3; }
.acc-ruler-v { width: 18px; border-right: 1px solid #c3cad3; }
.acc-ruler i { position: absolute; background: #9ca3af; }
.acc-ruler-h i { bottom: 0; width: 1px; }
.acc-ruler-v i { right: 0; height: 1px; }
.acc-ruler b { position: absolute; font-weight: normal; }
.acc-ruler-h b { top: 0; transform: translateX(2px); }
.acc-ruler-v b { left: 1px; }
.acc-ruler .sel { position: absolute; background: rgba(0, 120, 212, .22); }
.acc-ruler-h .sel { top: 0; bottom: 0; }
.acc-ruler-v .sel { left: 0; right: 0; }
/* mouse over a ruler: the line across the form and the controls a click would select (access.js rulerPreview) */
.acc-ruler-guide { position: fixed; z-index: 2160; background: #e8590c; pointer-events: none; }
.acc-ruler-hit { position: fixed; z-index: 2160; outline: 2px dashed #e8590c; outline-offset: 1px; background: rgba(232, 89, 12, .08); pointer-events: none; }
.acc-layout-selection.acc-locked { border-style: dashed; border-color: #6b7280; }
.acc-layout-frame { position: fixed; z-index: 2140; border: 1px dashed #8a9bb5; pointer-events: none; }
.acc-layout-grip { position: fixed; z-index: 2250; width: 15px; height: 15px; padding: 0; border: 1px solid #8a9bb5; border-radius: 2px; background: #fff;
    color: #2b579a; font: 10px/13px "Segoe UI", sans-serif; text-align: center; cursor: pointer; transform: translate(-16px, -16px); }
.acc-layout-grip:hover { background: var(--acc-hl); }
.acc-layout-drop { position: fixed; z-index: 2199; background: var(--app-primary); pointer-events: none; }
.acc-lock-badge { position: fixed; z-index: 2210; font-size: 10px; pointer-events: none; transform: translate(-4px, -12px); }
.acc-propsheet { position: fixed; right: 10px; top: 70px; width: 300px; max-height: 70vh; display: flex; flex-direction: column;
  background: #fff; border: 1px solid #9aa9bd; box-shadow: 0 4px 14px rgba(0,0,0,.25); z-index: 2700; font-size: 12px; }
.acc-propsheet-title { display: flex; justify-content: space-between; align-items: center; font-weight: bold; color: #27408B; padding: 4px 8px; background: #e8eef7; cursor: move; user-select: none; }
.acc-propsheet-pin { border: 0; background: transparent; opacity: .45; padding: 0 4px; }
.acc-propsheet-pinned .acc-propsheet-pin { opacity: 1; background: #cfe3f7; }
.acc-propsheet-event button { border: 0; background: transparent; color: #1a4fa0; padding: 0 6px; }
.acc-propsheet-btn { flex: 1; text-align: left; border: 0; background: transparent; color: #8a98ad; padding: 1px 6px; font-size: 12px; }
.acc-propsheet-btn:hover { background: #dbe7f5; color: #1a4fa0; }
.acc-propsheet-btn.has { color: #1a4fa0; }
.acc-propsheet-type { padding: 4px 8px; border-bottom: 1px solid #d0d8e4; }
.acc-propsheet-tabs { display: flex; border-bottom: 1px solid #9aa9bd; background: #f3f5f9; }
.acc-propsheet-tabs button { border: 0; background: transparent; padding: 3px 9px; font-size: 11px; }
.acc-propsheet-tabs button.active { background: #fff; font-weight: bold; box-shadow: inset 0 2px 0 #3a96d8; }
.acc-taborder { padding: 4px 6px; font-size: 12px; }
.acc-taborder-row { display: flex; align-items: center; gap: 4px; padding: 1px 0; }
.acc-taborder-row span { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-taborder-row button { padding: 0 6px; cursor: pointer; }
.acc-propsheet-rows { overflow: auto; flex: 1; }
.acc-propsheet-row { display: flex; border-bottom: 1px solid #eceff4; min-height: 21px; align-items: center; }
.acc-propsheet-name { width: 45%; padding: 1px 6px; background: #f7f8fb; color: #333; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-propsheet-value, .acc-propsheet-row input, .acc-propsheet-row select { flex: 1; min-width: 0; padding: 1px 6px; border: 0; font-size: 12px; background: transparent; }
.acc-propsheet-row input, .acc-propsheet-row select { background: #fffef2; outline: 0; }
.acc-propsheet-row input:focus, .acc-propsheet-row select:focus { box-shadow: inset 0 0 0 1px #3a96d8; }
.acc-propsheet-event { color: #1a4fa0; }

.acc-immediate { flex: 0 0 190px; display: flex; flex-direction: column; border-top: 3px solid #8aa6c8; background: #fff; font-family: Consolas, monospace; font-size: 12px; }
.acc-immediate header { display: flex; align-items: center; gap: 10px; background: #97b3d3; padding: 1px 6px; font-family: Segoe UI, sans-serif; }
.acc-immediate header small { flex: 1; color: #234; }
.acc-immediate header button { border: 0; background: transparent; cursor: pointer; font-size: 14px; }
.acc-immediate-out { flex: 1; overflow: auto; padding: 2px 6px; }
/* drag the top edge of the Immediate window up/down (access.js, height kept in localStorage) */
.acc-immediate { position: relative; min-height: 60px; }
.acc-immediate-resize { position: absolute; left: 0; right: 0; top: -5px; height: 8px; cursor: ns-resize; z-index: 5; }
.acc-immediate-resize:hover, body.acc-immediate-resizing .acc-immediate-resize { background: rgba(42, 90, 140, .25); }
body.acc-immediate-resizing { cursor: ns-resize; user-select: none; }
.acc-immediate-out pre { margin: 0; font: inherit; white-space: pre-wrap; }
.acc-immediate-out pre.acc-imm-in { color: #2a5a8c; }
.acc-immediate-out pre.acc-imm-err { color: #a4262c; }
.acc-immediate-in { border: 0; border-top: 1px solid #ccc; padding: 3px 6px; font: inherit; outline: none; }
.acc-nosidebar > .acc-sidebar { display: none; }

/* Fuzzy search on/off (AccFuzzyToggle, Lists/SearchOptions): next to the search boxes and on the ribbon */
.acc-fuzzy { display: inline-flex; align-items: center; justify-content: center; padding: 0 8px; border: 1px solid #c9ced6; border-radius: 4px;
    background: #fff; color: #8a94a3; font: inherit; font-weight: 700; cursor: pointer; white-space: nowrap; }
.acc-fuzzy:hover { background: #f0f3f7; color: #1f2937; }
.acc-fuzzy.acc-on { background: #e6f0ff; border-color: #8fb3e8; color: #1d4f91; }
.acc-fuzzy span { margin-left: 5px; font-weight: 600; }
.ml-fuzzy { height: 38px; padding: 0 11px; border-radius: 0; border-color: var(--ml-border); border-right: none; font-size: 16px; }
.acc-sheet-fuzzy { height: 24px; padding: 0 7px; font-size: 13px; }
.acc-ribbon-fuzzy { margin-left: auto; align-self: center; height: 24px; border-radius: 12px; padding: 0 10px; }
.acc-ribbon-fuzzy + .acc-guide-btn { margin-left: 6px; }

/* ---------------------------------------------------------------- rich text (TextFormat = RichText)
   AccRichText.razor, richtext.js, RichText/RichTextHtml.cs. A <font color> shows its theme colour from its style
   (RichTextTheme / richtext.js), so nothing here needs a dark copy beyond what theme.js does. */
.acc-rich { overflow: hidden; cursor: text; line-height: 1.25; text-align: left; }
.acc-rich-box { padding: 1px 3px; white-space: normal; overflow-wrap: anywhere; }
.acc-rich-multi, .acc-rich-edit:focus { overflow-y: auto; }
.acc-rich-box:not(.acc-rich-multi):not(:focus), .acc-rich-cell { white-space: nowrap; text-overflow: ellipsis; }
.acc-cell > .acc-rich-cell { display: block; line-height: 23px; cursor: default; outline: none; }
.acc-cell > .acc-rich-cell:focus { box-shadow: none; }
.acc-rich.acc-center { text-align: center; }
.acc-rich.acc-right { text-align: right; }
/* one line (datasheet cell, list, a one-line box): paragraphs and list items side by side */
:is(.acc-rich-cell, .ml-rich, .acc-rich-box:not(.acc-rich-multi):not(:focus)) :is(div, p, ul, ol, li, blockquote) { display: inline; margin: 0; padding: 0; }
:is(.acc-rich-cell, .ml-rich, .acc-rich-box:not(.acc-rich-multi):not(:focus)) :is(div, li, blockquote)::after { content: " "; }
:is(.acc-rich-cell, .ml-rich, .acc-rich-box:not(.acc-rich-multi):not(:focus)) li::before { content: "\2022\00a0"; }
:is(.acc-rich-cell, .ml-rich, .acc-rich-box:not(.acc-rich-multi):not(:focus)) font[size] { font-size: inherit; }
:is(.acc-rich-cell, .ml-rich, .acc-rich-box:not(.acc-rich-multi):not(:focus)) br { display: none; }
/* paragraphs: Access's HTML font sizes 1–7 are 8, 10, 12, 14, 18, 24 and 36 pt */
:is(.acc-rich, .acc-rt-zoom-body) :is(ul, ol) { margin: 0; padding-left: 1.6em; }
:is(.acc-rich, .acc-rt-zoom-body) blockquote { margin: 0 0 0 2em; }
:is(.acc-rich, .acc-rt-zoom-body) font[size="1"] { font-size: 8pt; }
:is(.acc-rich, .acc-rt-zoom-body) font[size="2"] { font-size: 10pt; }
:is(.acc-rich, .acc-rt-zoom-body) font[size="3"] { font-size: 12pt; }
:is(.acc-rich, .acc-rt-zoom-body) font[size="4"] { font-size: 14pt; }
:is(.acc-rich, .acc-rt-zoom-body) font[size="5"] { font-size: 18pt; }
:is(.acc-rich, .acc-rt-zoom-body) font[size="6"] { font-size: 24pt; }
:is(.acc-rich, .acc-rt-zoom-body) font[size="7"] { font-size: 36pt; }
/* toolbar: floating over the inline editor (top layer) or in the zoom */
.acc-rt-toolbar { display: flex; align-items: center; gap: 2px; padding: 2px; background: #fff; border: 1px solid #b8c2d0; border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0,0,0,.18); font: 12px var(--acc-font); color: var(--acc-text); position: relative; }
.acc-rt-floating[popover], .acc-rt-floating { position: fixed; inset: auto; margin: 0; z-index: 3000; overflow: visible; }
.acc-rt-toolbar > button { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; min-width: 24px; height: 22px;
  padding: 0 4px; border: 1px solid transparent; border-radius: 3px; background: transparent; color: inherit; font: inherit; font-size: 13px; line-height: 1; cursor: pointer; }
.acc-rt-toolbar > button:hover { background: #e8eef7; border-color: #c9d6e8; }
.acc-rt-toolbar > button.acc-rt-on { background: #d6e2f3; border-color: #9fb6d6; }
.acc-rt-sep { width: 1px; height: 16px; background: #d0d6de; margin: 0 3px; }
.acc-rt-a { font-weight: bold; }
.acc-rt-bar { display: block; width: 14px; height: 3px; margin-top: 1px; background: #c00000; }
.acc-rt-clear { text-decoration: line-through; }
.acc-rt-palette { position: absolute; top: calc(100% + 2px); left: 60px; display: grid; grid-template-columns: repeat(5, 20px); gap: 3px; padding: 5px;
  background: #fff; border: 1px solid #b8c2d0; border-radius: 4px; box-shadow: 0 4px 12px rgba(0,0,0,.2); z-index: 1; }
.acc-rt-palette[hidden] { display: none; }
.acc-rt-palette > button { width: 20px; height: 20px; padding: 0; border: 1px solid #8a94a3; border-radius: 2px; cursor: pointer; }
.acc-rt-palette > button:hover { outline: 2px solid var(--acc-accent); outline-offset: 1px; }
.acc-rt-palette > .acc-rt-auto { grid-column: 1 / -1; width: auto; height: 22px; background: #fff; color: var(--acc-text); font: 12px var(--acc-font); }
/* zoom editor (Shift+F2; datasheet cells) */
.acc-rt-zoom { width: min(720px, 92vw); padding: 0; border: 1px solid #9aa9bd; border-radius: 6px; box-shadow: 0 10px 30px rgba(0,0,0,.3);
  background: #fff; color: var(--acc-text); font-family: var(--acc-font); }
.acc-rt-zoom[open] { display: flex; flex-direction: column; }
.acc-rt-zoom::backdrop { background: rgba(0,0,0,.25); }
.acc-rt-zoom-title { padding: 8px 12px; font-weight: 600; background: #f3f5f8; border-bottom: 1px solid #dde3ea; }
.acc-rt-zoom-tools { margin: 6px 8px 0; box-shadow: none; align-self: flex-start; }
.acc-rt-zoom-body { margin: 6px 8px; min-height: 220px; max-height: 60vh; overflow: auto; padding: 6px 8px; border: 1px solid #c5cdd8;
  background: #fff; outline: none; font-size: 10pt; line-height: 1.35; white-space: normal; overflow-wrap: anywhere; }
.acc-rt-zoom-body:focus { border-color: var(--acc-accent); }
.acc-rt-zoom-buttons { display: flex; gap: 8px; align-items: center; justify-content: flex-end; padding: 4px 8px 10px; }
.acc-rt-zoom-hint { margin-right: auto; color: #6b7280; font-size: 11px; }
/* zoom of a plain field (Shift+F2, access.js accZoom): resizable, the size is kept (localStorage acc-zoom) */
.acc-zoom { width: min(760px, 94vw); max-width: calc(100vw - 16px); resize: horizontal; overflow: hidden; }
.acc-zoom .acc-rt-zoom-title { display: flex; align-items: center; gap: 8px; }
.acc-zoom-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acc-zoom-tools { display: flex; gap: 4px; font-weight: normal; }
.acc-zoom-tools > button { height: 24px; padding: 0 8px; border: 1px solid #c5cdd8; border-radius: 4px; background: #fff; color: var(--acc-text);
  font: 12px var(--acc-font); cursor: pointer; }
.acc-zoom-tools > button:hover { border-color: var(--acc-accent); }
.acc-zoom-tools > button.acc-on { background: #e6eefb; border-color: var(--acc-accent); }
.acc-zoom-text { margin: 6px 8px; height: 320px; min-height: 120px; max-height: calc(100vh - 160px); padding: 6px 8px; resize: vertical;
  border: 1px solid #c5cdd8; border-radius: 3px; background: #fff; color: var(--acc-text); outline: none; line-height: 1.4;
  font-family: var(--acc-font); overflow-wrap: anywhere; tab-size: 4; }
.acc-zoom-text:focus { border-color: var(--acc-accent); }
.acc-zoom-text[readonly] { background: #f7f8fa; }

/* the program in another language (UiText): translations are often longer than the Access label; access.js (accFitText)
   makes the font smaller, down to 70 %, and only then clips with … (acc-fit-clip); the whole text is in the tooltip */
.acc-fit-clip { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* Date range (AccDateRange, added in design view as "daterange"): the period in one control, ‹ › move it, the panel has
   quick choices and a calendar (two clicks: from, to). Shown as a popover so subforms with z-index do not cover it. */
.acc-daterange { display: flex; align-items: stretch; border: 1px solid var(--acc-border); border-radius: 4px; background: #fff; overflow: hidden; }
.acc-daterange.acc-disabled { opacity: .6; }
.acc-dr-step { flex: none; width: 22px; padding: 0; border: 0; background: #f3f5f8; color: #445; font-size: 1.25em; line-height: 1; cursor: pointer; }
.acc-dr-step:hover:not(:disabled) { background: var(--acc-hl); }
.acc-dr-step:disabled { opacity: .4; cursor: default; }
.acc-dr-value { flex: 1; min-width: 0; display: flex; align-items: center; gap: 6px; padding: 0 8px; border: 0; border-left: 1px solid var(--acc-border); border-right: 1px solid var(--acc-border);
    background: #fff; color: inherit; font: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; }
.acc-dr-value:hover:not(:disabled) { background: #f7f9fc; }
.acc-dr-value .acc-icon { flex: none; color: var(--app-primary); }
.acc-dr-value span { overflow: hidden; text-overflow: ellipsis; }
.acc-dr-cover { z-index: 9990; }
.acc-dr-panel { position: fixed; inset: auto; margin: 0; display: flex; padding: 0; border: 1px solid #c9d1db; border-radius: 8px; background: #fff; color: #1f2430;
    box-shadow: 0 8px 28px rgba(0, 0, 0, .22); z-index: 9995; font: 13px "Segoe UI", system-ui, sans-serif; }
.acc-dr-presets { display: flex; flex-direction: column; min-width: 150px; padding: 6px; border-right: 1px solid #e5e7eb; }
.acc-dr-presets button { padding: 5px 10px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; text-align: left; white-space: nowrap; cursor: pointer; }
.acc-dr-presets button:hover { background: #eef2f7; }
.acc-dr-presets button.acc-on { background: var(--app-primary); color: #fff; }
.acc-dr-cal { width: 264px; padding: 10px; }
.acc-dr-inputs { display: flex; align-items: center; gap: 6px; margin-bottom: 8px; }
.acc-dr-inputs input { flex: 1; min-width: 0; padding: 3px 6px; border: 1px solid #c9d1db; border-radius: 4px; font: inherit; }
.acc-dr-month { display: flex; align-items: center; justify-content: space-between; margin-bottom: 4px; }
.acc-dr-month button { width: 28px; height: 28px; border: 0; border-radius: 6px; background: none; color: inherit; font-size: 1.2em; cursor: pointer; }
.acc-dr-month button:hover { background: #eef2f7; }
.acc-dr-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.acc-dr-wd { padding: 2px 0; color: #6b7280; font-size: 11px; text-align: center; }
.acc-dr-day { height: 30px; padding: 0; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; cursor: pointer; }
.acc-dr-day:hover { background: #eef2f7; }
.acc-dr-day.acc-dr-out { color: #a0a8b4; }
.acc-dr-day.acc-dr-today { box-shadow: inset 0 0 0 1px var(--app-primary); }
.acc-dr-day.acc-dr-in { border-radius: 0; background: #e3ecf8; }
.acc-dr-day.acc-dr-edge { background: var(--app-primary); color: #fff; font-weight: 600; }
.acc-dr-hint { margin-top: 6px; color: #6b7280; font-size: 11px; }
/* dragging objects with the pointer (access.js: data-acc-drag → data-acc-droptarget) */
.acc-drag-ghost { position: fixed; z-index: 99999; pointer-events: none; padding: 2px 8px; border: 1px solid #2f6fb3; border-radius: 3px;
    background: #fff; color: #1f3b5c; font-size: 9pt; box-shadow: 0 2px 6px rgba(0,0,0,.25); white-space: nowrap; max-width: 420px; overflow: hidden; text-overflow: ellipsis; }
html.acc-dragging, html.acc-dragging * { cursor: grabbing !important; user-select: none !important; }
.acc-drop-over { outline: 2px dashed #2f6fb3 !important; outline-offset: -3px; }
/* a form in a window of its own (AccDetachedForm, desktop): the window frame fills the page */
.acc-detached-shell { position: relative; }
.acc-detached-shell > .acc-mdi-window { position: absolute; inset: 0; border: 0; border-radius: 0; box-shadow: none; }
.acc-mdi-titlebar .acc-mdi-detach { font-size: 10pt; }
/* Galaxy F_Baza »Povezave podatkovnih baz« (GalaxyBazaView) */
.glx-baza { padding: 20px 24px; max-width: 760px; min-height: 100%; background: #f5f7fb; color: #24374c; font-size: 10.5pt; overflow: auto; }
.glx-baza > * { flex-shrink: 0; } /* .acc-form is a flex column: the boxes keep their height, the form scrolls */
.glx-baza h2 { font-size: 15pt; margin: 0 0 6px; }
.glx-baza h3 { font-size: 12pt; margin: 0 0 12px; }
.glx-baza p { margin: 0 0 10px; }
.glx-baza-grid { display: grid; grid-template-columns: 130px minmax(200px, 1fr); gap: 10px 12px; align-items: center; margin: 14px 0; }
.glx-baza-grid input, .glx-baza-grid select { height: 30px; padding: 0 8px; border: 1px solid #b9c6d6; border-radius: 4px; background: #fff; color: inherit; font: inherit; }
.glx-baza-box { background: #fff; padding: 16px 20px; border: 1px solid #d7e0eb; border-radius: 8px; }
.glx-baza-box .glx-baza-grid { margin: 0; }
.glx-baza-hint { font-size: 9.5pt; color: #5b6b7d; margin-top: 12px !important; }
.glx-baza-buttons { display: flex; gap: 12px; margin: 18px 0 14px; }
.glx-baza-buttons button { height: 34px; padding: 0 18px; border-radius: 4px; font: inherit; cursor: pointer; }
.glx-baza-primary { background: #2f5d9a; border: 1px solid #2f5d9a; color: #fff; }
.glx-baza-secondary { background: #fff; border: 1px solid #2f5d9a; color: #2f5d9a; }
.glx-baza-buttons button:disabled { opacity: .55; cursor: default; }
.glx-baza-status { white-space: pre-wrap; padding: 12px 14px; background: #e7eef8; border-radius: 6px; min-height: 20px; }
.glx-baza details { margin-top: 14px; }
.glx-baza summary { cursor: pointer; }
.glx-baza details ul { margin: 8px 0 0 18px; columns: 2; font-size: 9.5pt; }
.glx-baza details code { display: block; white-space: pre-wrap; word-break: break-all; margin-top: 6px; }
@media (max-width: 760px) { .glx-baza-grid { grid-template-columns: 1fr; } .glx-baza details ul { columns: 1; } }

/* paste from another Galaxy program (AccNavPane, GalaxyTransfer): what comes, the database, structure or rows too */
.acc-transfer-back { position: fixed; inset: 0; z-index: 3000; display: flex; align-items: center; justify-content: center; background: rgba(15, 23, 42, .3); }
.acc-transfer { width: min(520px, calc(100vw - 32px)); max-height: calc(100vh - 32px); display: flex; flex-direction: column; background: #fff; border-radius: 10px; box-shadow: 0 18px 48px rgba(0,0,0,.28); overflow: hidden; font-size: 9pt; }
.acc-transfer-body { padding: 12px 16px; overflow: auto; display: flex; flex-direction: column; gap: 6px; }
.acc-transfer-what { white-space: pre-wrap; background: #f5f6f8; border: 1px solid #e2e5ea; border-radius: 6px; padding: 8px 10px; max-height: 180px; overflow: auto; }
.acc-transfer-skip { color: #9a3412; }
.acc-transfer-head { margin-top: 6px; font-weight: 600; }
.acc-transfer-option { display: flex; align-items: baseline; gap: 8px; padding: 5px 8px; border: 1px solid #e2e5ea; border-radius: 6px; cursor: pointer; }
.acc-transfer-option:has(input:checked) { border-color: #3b6fd8; background: rgba(59,111,216,.08); }
.acc-transfer-option small { margin-left: auto; color: #6b7280; }
.acc-transfer-hint { color: #6b7280; font-size: 8pt; margin-top: 4px; }
.acc-transfer-foot { display: flex; justify-content: flex-end; gap: 8px; padding: 10px 16px; border-top: 1px solid #e2e5ea; }

/* row height of a datasheet (access.js accRowHeight): the lower edge of a record selector is dragged */
.acc-sheet.acc-sheet-tall tbody tr:not(.acc-totals):not(.acc-newrow) td { height: var(--acc-row-h); }
.acc-sheet.acc-sheet-tall tbody td.acc-cell { vertical-align: top; }
.acc-sheet.acc-sheet-tall tbody td.acc-cell > input, .acc-sheet.acc-sheet-tall tbody td.acc-cell > span { height: auto; }
html.acc-row-edge .acc-sheet tbody td.acc-sel, body.acc-row-resizing, body.acc-row-resizing * { cursor: row-resize !important; }

/* the right and bottom edge of a subform (splitter.js): resize cursor over it and while dragging, no text selection */
html.acc-split-hover, html.acc-split-hover *, html.acc-split-drag, html.acc-split-drag * { cursor: col-resize !important; }
html.acc-split-hover-y, html.acc-split-hover-y *, html.acc-split-drag-y, html.acc-split-drag-y * { cursor: row-resize !important; }
html.acc-split-drag *, html.acc-split-drag-y * { user-select: none !important; }

/* the web's user and sign-out right of »Kaj sedaj?« (AccessShell UserArea, Galaxy.Web GalaxyApp) */
.acc-user-area { display: inline-flex; align-items: center; gap: 8px; margin: 0 6px 0 10px; align-self: center; font-size: 12px; white-space: nowrap; }
.acc-user-area form { margin: 0; }
.acc-user-area .btn { height: 24px; padding: 0 10px; font-size: 12px; line-height: 22px; }

/* a datasheet column dragged to another place (access.js, AccDatasheet.ColumnMoved) */
.acc-col-ghost { position: fixed; z-index: 4000; pointer-events: none; padding: 4px 6px; box-sizing: border-box; overflow: hidden;
    white-space: nowrap; font-weight: 600; background: var(--acc-grid-head, #f0f0f0); border: 1px solid #94a3b8; opacity: .85;
    box-shadow: 0 4px 12px rgba(0,0,0,.18); }
.acc-col-drop { position: fixed; z-index: 4001; width: 3px; pointer-events: none; background: var(--acc-accent, #2b579a); }
.acc-sheet thead th.acc-col-dragged { opacity: .45; }
body.acc-col-moving, body.acc-col-moving * { cursor: grabbing !important; user-select: none !important; }

/* Nastavitve programa (AccCompanySettings): the company's settings for all users */
.acc-cs { display: flex; flex-direction: column; height: 100%; min-height: 360px; background: #fff; }
.acc-cs-tabs { display: flex; gap: 2px; padding: 8px 12px 0; border-bottom: 1px solid #d8dde6; }
.acc-cs-tab { border: 1px solid transparent; border-bottom: none; background: none; padding: 6px 14px; border-radius: 6px 6px 0 0; color: #475569; }
.acc-cs-tab.active { border-color: #d8dde6; background: #fff; color: var(--acc-accent, #2b579a); font-weight: 600; margin-bottom: -1px; }
.acc-cs-body { flex: 1; overflow: auto; padding: 12px 16px; }
.acc-cs-row { display: grid; grid-template-columns: 200px minmax(0, 320px); column-gap: 12px; align-items: center; padding: 6px 0; border-bottom: 1px solid #f1f3f6; }
.acc-cs-label { font-weight: 600; }
.acc-cs-hint { grid-column: 2; color: #64748b; font-size: 9pt; margin-top: 2px; }
.acc-cs-error { color: #b4232c; font-size: 9pt; }
.acc-cs-foot { display: flex; align-items: center; gap: 8px; padding: 8px 16px; border-top: 1px solid #d8dde6; background: #f7f8fa; }
.acc-cs-note { flex: 1; color: #64748b; font-size: 9pt; }
.acc-cs-message { font-size: 9pt; color: #0f766e; }
.acc-cf-row.acc-sheet-col-row { grid-template-columns: 18px 1fr 58px 20px 20px; }
.acc-cf-row.acc-sheet-col-row input[type=number] { min-width: 0; width: 100%; font: inherit; padding: 1px 3px; }

/* advanced paste (AccDatasheet: Ctrl+V → Napredno …) */
.acc-paste-cover { position: fixed; inset: 0; z-index: 3990; background: rgba(15,23,42,.25); }
.acc-paste { position: fixed; z-index: 3991; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(1100px, calc(100vw - 32px));
    max-height: calc(100vh - 60px); display: flex; flex-direction: column; background: #fff; border-radius: 10px;
    box-shadow: 0 18px 50px rgba(0,0,0,.28); font-size: 9pt; }
.acc-paste-head { display: flex; align-items: baseline; gap: 10px; padding: 10px 14px; border-bottom: 1px solid #e2e5ea; font-size: 11pt; }
.acc-paste-sub { color: #64748b; font-size: 9pt; }
.acc-paste-x { margin-left: auto; border: none; background: none; font-size: 16pt; line-height: 1; color: #64748b; }
.acc-paste-options { display: flex; flex-wrap: wrap; gap: 6px 18px; padding: 8px 14px; border-bottom: 1px solid #f1f3f6; }
.acc-paste-options label { display: inline-flex; align-items: center; gap: 5px; }
.acc-paste-grid { flex: 1; overflow: auto; min-height: 120px; }
.acc-paste-grid table { border-collapse: collapse; }
.acc-paste-grid th, .acc-paste-grid td { border: 1px solid #e2e5ea; padding: 0; }
.acc-paste-grid th { position: sticky; top: 0; z-index: 1; background: #f3f5f8; padding: 4px; vertical-align: top; min-width: 120px; }
.acc-paste-grid th select { width: 100%; font: inherit; margin-top: 3px; }
.acc-paste-src { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 220px; }
.acc-paste-grid td input[type=text] { width: 100%; min-width: 110px; border: none; padding: 2px 5px; font: inherit; background: transparent; }
.acc-paste-grid .acc-paste-sel { width: 26px; min-width: 26px; text-align: center; position: sticky; left: 0; background: #f3f5f8; }
.acc-paste-grid th.acc-paste-sel { z-index: 2; }
.acc-paste-grid .acc-paste-off { background: #f8f9fb; color: #94a3b8; }
.acc-paste-grid tr.acc-paste-skip td { opacity: .45; }
.acc-paste-grid td.acc-paste-edited { background: #fff7d6; }
.acc-paste-more { padding: 6px 10px; color: #64748b; }
.acc-paste-foot { display: flex; align-items: center; gap: 8px; padding: 8px 14px; border-top: 1px solid #e2e5ea; background: #f7f8fa; border-radius: 0 0 10px 10px; }
.acc-paste-foot .acc-paste-sub { flex: 1; }
