﻿.atis-toolbar {
    display: flex;
    background-color: white;
    border-radius: 4px;
    box-shadow: rgb(0 0 0 / 13%) 0px 1.6px 3.6px 0px, rgb(0 0 0 / 11%) 0px 0.3px 0.9px 0px;
    padding: 0.3em 0.3em;
    flex-flow: nowrap;
    margin: 0.5em 0em;
    border: 1px solid #e0e0e0;
    overflow:auto;
}

    .atis-toolbar a {
        text-decoration: none;
        color: inherit;
        display: block;
        padding: 0.2em 0.5em;
        margin: 0em 0.1em;
        border-radius: 3px;
    }

        .atis-toolbar a:hover {
            background-color: #bbdefb;
            text-decoration: none;
        }

    .atis-toolbar i {
        margin-inline-end: 0.3em;
    }

.atis-resizer {
    height: 5px;
    background-color: #00aaff; /* Make resizer bar blue */
    cursor: ns-resize; /* Cursor indicates resizing direction */
}

.atis-sbpnl {
    border: 1px dotted gray;
    margin-top: 5px;
    padding: 8px;
}

.atis-sbpnl-bgry {
    background-color: #ECEFF1;
}

.atis-sbpnl-lgrn {
    background-color: #E8F5E9;
}

.atis-sbpnl-lyl {
    background-color: #FFFDE7;
}
.atis-sbpnl-lblu {
    background-color: #E3F2FD;
}
.atis-sbpnl-lblu {
    background-color: #E3F2FD;
}
.atis-sbpnl-lgld {
    border-bottom-color: #FFF3E0;
}
.atis-sbpnl-hd {
    font-size: 1.1em;
    border-bottom-width: 1px;
    border-bottom-style: solid;
}
.atis-sbpnl-hd-bgry {
    border-bottom-color: black;
}


/* =====================================================
   ATIS Edit DSL – Prefixed Layout & Field Styles
   Prefix: atis-
   ===================================================== */

/* Row / Column layout */
.atis-row {
    display: flex;
    flex-wrap: nowrap;
    margin: 0.2em 0em;
}

    .atis-row > * {
        min-width: 0; /* critical for flex + Kendo */
    }

/* Column behaviors */
.atis-col-grow {
    flex: 1 1 0;
    min-width: 0;
}

.atis-col-fixed {
    flex: 0 0 auto;
    min-width: 0;
}

/* Label */
.atis-label {
    min-width: 0;
    margin-top:0.5em;
}

    .atis-label > label {
        display: block;
        white-space: nowrap;
    }

/* Field wrapper */
.atis-field {
    display: flex;
    align-items: center;
    min-width: 0;
    padding: 0em 0.2em;
}

    .atis-field > .atis-input {
        flex: 1 1 0;
        min-width: 0;
        width: 100%;
        box-sizing: border-box;
    }

/* Default addon (icon slot) */
.atis-field-addon {
    flex: 0 0 auto;
    margin-left: 4px;
}

/* Utility widths (flex-safe) */
.atis-w-20px {
    flex: 0 0 20px;
    width: 20px;
}

.atis-w-40px {
    flex: 0 0 40px;
    width: 40px;
}

.atis-w-50px {
    flex: 0 0 50px;
    width: 50px;
}

.atis-w-70px {
    flex: 0 0 70px;
    width: 70px;
}

.atis-w-100px {
    flex: 0 0 100px;
    width: 100px;
}

.atis-w-60p {
    flex: 0 0 60%;
    width: 60%;
}

.atis-w-40p {
    flex: 0 0 40%;
    width: 40%;
}


/* =============================================================================
 * Atis.UI — BusinessProcessFlowRenderer  (default styles)
 * Paste this block into Atis.Default.css.
 *
 * Theming model
 * -------------
 *  - Defaults live here as `--atis-bpf-*` custom properties, scoped to .atis-bpf.
 *  - Per-instance overrides: pass a `theme` to the component; it writes the same
 *    custom properties inline on the host element (those win automatically).
 *  - Global/skin overrides: redefine the variables or the classes in your own
 *    stylesheet loaded after Atis.Default.css.
 * ========================================================================== */

.atis-bpf {
    /* palette */
    --atis-bpf-font: "IBM Plex Sans", system-ui, -apple-system, Segoe UI, sans-serif;
    --atis-bpf-text: #1c1a17;
    --atis-bpf-muted: #a89f90;
    --atis-bpf-accent: #d4691e;
    --atis-bpf-edge: #544f48;
    /* nodes */
    --atis-bpf-node-fill: #fbfaf6;
    --atis-bpf-node-stroke: #1c1a17;
    --atis-bpf-node-stroke-width: 1.4;
    --atis-bpf-node-radius: 9px;
    --atis-bpf-node-fill-hover: #f3dcc6;
    /* lanes */
    --atis-bpf-lane-odd: #efeae0;
    --atis-bpf-lane-even: #e7e0d3;
    --atis-bpf-lane-label-fill: #fbfaf6;
    --atis-bpf-lane-label-text: #544f48;
    --atis-bpf-lane-stroke: #d9d2c6;
    display: block;
    font-family: var(--atis-bpf-font);
    overflow-x: auto;
}

.atis-bpf__svg {
    display: block;
}

/* lanes */
.atis-bpf__lane-band--odd {
    fill: var(--atis-bpf-lane-odd);
}

.atis-bpf__lane-band--even {
    fill: var(--atis-bpf-lane-even);
}

.atis-bpf__lane-label-box {
    fill: var(--atis-bpf-lane-label-fill);
    stroke: var(--atis-bpf-lane-stroke);
    stroke-width: 1;
}

.atis-bpf__lane-label {
    font-family: var(--atis-bpf-font);
    font-size: 12px;
    font-weight: 500;
    fill: var(--atis-bpf-lane-label-text);
}

/* edges */
.atis-bpf__edge {
    fill: none;
    stroke: var(--atis-bpf-edge);
    stroke-width: 1.6;
}

.atis-bpf__arrowhead {
    fill: var(--atis-bpf-edge);
}

.atis-bpf__edge-label {
    font-family: var(--atis-bpf-font);
    font-size: 11px;
    fill: var(--atis-bpf-muted);
}

/* nodes */
.atis-bpf__node-box {
    fill: var(--atis-bpf-node-fill);
    stroke: var(--atis-bpf-node-stroke);
    stroke-width: var(--atis-bpf-node-stroke-width);
    rx: var(--atis-bpf-node-radius);
    ry: var(--atis-bpf-node-radius);
    transition: fill .12s ease, stroke .12s ease;
}

.atis-bpf__node-label {
    font-family: var(--atis-bpf-font);
    font-size: 13px;
    font-weight: 600;
    fill: var(--atis-bpf-text);
    pointer-events: none;
}

.atis-bpf__node-url {
    font-family: var(--atis-bpf-font);
    font-size: 10.5px;
    fill: var(--atis-bpf-accent);
    pointer-events: none;
}

.atis-bpf__node-url--missing {
    fill: var(--atis-bpf-muted);
}

/* clickable state */
.atis-bpf__node--clickable {
    cursor: pointer;
}

    .atis-bpf__node--clickable:hover .atis-bpf__node-box {
        fill: var(--atis-bpf-node-fill-hover);
        stroke: var(--atis-bpf-accent);
        stroke-width: 2;
    }

/* "needs URL" state — dashed amber outline as an admin cue */
.atis-bpf__node--needs-url .atis-bpf__node-box {
    stroke: var(--atis-bpf-accent);
    stroke-dasharray: 5 4;
    opacity: .7;
}

/* active / "you are here" */
.atis-bpf__node--active .atis-bpf__node-box {
    stroke: var(--atis-bpf-accent);
    stroke-width: 2.5;
    fill: var(--atis-bpf-node-fill-hover);
}