html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

a, .btn-link {
    color: #006bb7;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.content {
    padding-top: 1.1rem;
}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
/* ---- AgMac Tuning brand system ---- */
:root {
    --ember:#C2611F; --ember-dark:#8F4514;
    --ironstone:#1C1B1A; --ink:#33302C;
    --bone:#F5F3EF; --paper:#FAF9F5; --card:#FFFFFF;
    --line:#E7E2DA; --line-strong:#CFC9BD;
    --text:#45413A; --muted:#6A665F; --muted-2:#9A948A;
    --success:#2F8E77; --success-bg:#E1F0EA;
    --danger:#B23A2E; --danger-bg:#F7E4DE;
    --font-head:'Archivo','Helvetica Neue',sans-serif;
    --font-body:'Hanken Grotesk','Helvetica Neue',sans-serif;
    --font-mono:'IBM Plex Mono',ui-monospace,monospace;
}
body { font-family:var(--font-body); color:var(--text); background:var(--bone); }
h1,h2,h3,h4,h5,h6 { font-family:var(--font-head); color:var(--ironstone); }
a { color:var(--ember); }
a:hover { color:var(--ember-dark); }

.agmac-shell { display:flex; min-height:100vh; }

/* Sidebar — dark Ironstone with Ember accents */
.agmac-sidebar { width:238px; background:var(--ironstone); color:#CFC9BD; display:flex; flex-direction:column; padding:1.1rem 0; }
.agmac-brand { display:flex; align-items:center; padding:0 1.1rem 1.1rem; }
.agmac-brand .agmac-logo { width:100%; max-width:184px; height:auto; display:block; }
.agmac-brand .agmac-wordmark { font-family:var(--font-head); font-weight:800; font-size:1.05rem; color:#F5F3EF; line-height:1; }
.agmac-brand .agmac-wordmark small { display:block; font-family:var(--font-mono); font-weight:400; font-size:.6rem; letter-spacing:.18em; color:var(--ember); text-transform:uppercase; margin-top:.15rem; }
.agmac-nav { display:flex; flex-direction:column; flex:1; }
.agmac-nav-section { font-family:var(--font-mono); font-size:.62rem; text-transform:uppercase; letter-spacing:.14em; color:#7d7871; padding:1rem 1.2rem .35rem; }
.agmac-nav-link { color:#CFC9BD; text-decoration:none; padding:.5rem 1.2rem; font-size:.92rem; border-left:3px solid transparent; }
.agmac-nav-link:hover { background:rgba(194,97,31,.10); color:#fff; }
.agmac-nav-link.active { background:rgba(194,97,31,.16); color:#fff; border-left:3px solid var(--ember); }
.agmac-nav-badge { display:inline-block; min-width:18px; padding:0 5px; margin-left:.35rem; background:var(--ember); color:#fff; border-radius:9px; font-size:.7rem; font-weight:700; text-align:center; line-height:18px; vertical-align:middle; }
.agmac-nav-foot { margin-top:auto; padding:1rem 1.2rem 0; border-top:1px solid #33302C; }
.agmac-nav-user { font-size:.8rem; color:#9A948A; margin-bottom:.4rem; }
.agmac-nav-signout { background:none; border:1px solid #45413A; color:#CFC9BD; border-radius:6px; padding:.28rem .8rem; font-size:.82rem; cursor:pointer; font-family:var(--font-body); }
.agmac-nav-signout:hover { background:var(--ember); border-color:var(--ember); color:#fff; }

.agmac-main { flex:1; min-width:0; background:var(--bone); display:flex; flex-direction:column; }
.agmac-content { max-width:1600px; width:100%; margin:0 auto; padding:1.4rem 1.5rem; }

/* Top bar — persistent, carries the account menu in the top-right corner */
.agmac-topbar { display:flex; align-items:center; gap:.6rem; position:sticky; top:0; z-index:60; background:var(--card); border-bottom:1px solid var(--line); padding:.5rem 2rem; min-height:52px; }
.agmac-topbar-spacer { flex:1; }
.agmac-topbar-title { display:none; }
.agmac-header-search { position:relative; display:flex; align-items:center; }
.agmac-header-search-icon { position:absolute; left:.55rem; color:var(--muted); font-size:1rem; pointer-events:none; }
.agmac-header-search input { width:230px; max-width:38vw; padding:.4rem .6rem .4rem 1.7rem; border-radius:8px;
    border:1px solid var(--line-strong); background:var(--paper); color:var(--ink); font-size:.85rem; font-family:var(--font-body); }
.agmac-header-search input:focus { outline:none; border-color:var(--ember); box-shadow:0 0 0 2px rgba(194,97,31,.15); }
.agmac-hamburger { display:none; }

/* Account menu (top-right) */
.agmac-usermenu { position:relative; }
.agmac-usermenu > summary { list-style:none; cursor:pointer; display:inline-flex; align-items:center; gap:.3rem; padding:.15rem .3rem; border-radius:999px; }
.agmac-usermenu > summary::-webkit-details-marker { display:none; }
.agmac-usermenu > summary:hover { background:var(--bone); }
.agmac-avatar { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; background:var(--ember); color:#fff; font-family:var(--font-head); font-weight:700; font-size:.82rem; }
.agmac-usermenu-caret { color:var(--muted-2); }
.agmac-usermenu[open] > summary { background:var(--bone); }
.agmac-usermenu-pop { position:absolute; right:0; top:calc(100% + .45rem); min-width:216px; background:var(--card); border:1px solid var(--line); border-radius:10px; box-shadow:0 14px 34px rgba(28,27,26,.16); padding:.3rem; z-index:200; }
.agmac-usermenu-id { padding:.5rem .6rem; border-bottom:1px solid var(--line); margin-bottom:.3rem; }
.agmac-usermenu-name { font-weight:700; color:var(--ironstone); font-size:.9rem; }
.agmac-usermenu-role { font-size:.7rem; color:var(--muted-2); font-family:var(--font-mono); text-transform:uppercase; letter-spacing:.08em; margin-top:.1rem; }
.agmac-usermenu-item { display:flex; align-items:center; gap:.55rem; width:100%; text-align:left; padding:.5rem .6rem; border-radius:7px; color:var(--text); text-decoration:none; font-size:.88rem; background:none; border:none; cursor:pointer; font-family:var(--font-body); }
.agmac-usermenu-item:hover { background:var(--bone); color:var(--ironstone); }
.agmac-usermenu-item svg { color:var(--muted); flex:0 0 auto; }
.agmac-usermenu-signout-form { margin:0; }
.agmac-usermenu-signout { color:var(--danger); }
.agmac-usermenu-signout svg { color:var(--danger); }
.agmac-usermenu-signout:hover { background:var(--danger-bg); color:var(--danger); }

.agmac-card { background:var(--card); border:1px solid var(--line); border-radius:10px; padding:1.1rem 1.3rem; margin-bottom:1rem; box-shadow:0 1px 2px rgba(28,27,26,.03); }
.agmac-card h5 { font-family:var(--font-head); font-weight:700; font-size:1rem; margin-bottom:.6rem; color:var(--ironstone); }

.agmac-table { width:100%; border-collapse:collapse; }
.agmac-table th { text-align:left; font-family:var(--font-mono); font-size:.66rem; text-transform:uppercase; letter-spacing:.06em; color:var(--muted); border-bottom:2px solid var(--line); padding:.5rem .6rem; }
.agmac-table td { border-bottom:1px solid var(--line); padding:.58rem .6rem; font-size:.92rem; }

.agmac-badge { display:inline-block; font-size:.7rem; font-weight:600; padding:.16rem .6rem; border-radius:20px; letter-spacing:.01em; }
.agmac-badge.draft{background:#EAE6DE;color:#6A665F;} .agmac-badge.submitted{background:#FCEFD6;color:#946412;}
.agmac-badge.inprogress{background:#F6E1D2;color:#8F4514;} .agmac-badge.ready{background:#DDEEE7;color:#1F7A5C;}
.agmac-badge.completed{background:#E7E2DA;color:#45413A;} .agmac-badge.cancelled{background:#F7E1DC;color:#B23A2E;}

.agmac-btn { background:var(--ember); color:#fff; border:none; border-radius:7px; padding:.52rem 1.05rem; font-size:.9rem; font-weight:600; font-family:var(--font-body); cursor:pointer; text-decoration:none; display:inline-block; }
.agmac-btn:hover { background:var(--ember-dark); color:#fff; }
.agmac-btn.secondary { background:var(--card); color:var(--ink); border:1px solid var(--line-strong); }
.agmac-btn.secondary:hover { background:var(--paper); color:var(--ink); border-color:var(--muted-2); }
.agmac-btn:disabled { opacity:.45; cursor:not-allowed; }
.agmac-btn-lg { padding:.62rem 1.35rem; font-size:.98rem; }
.agmac-pagehead { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1.2rem; }
.agmac-pagehead .agmac-h1 { margin-bottom:.15rem; }
.agmac-pagehead .agmac-sub { margin-bottom:0; }
.agmac-btn.danger { background:var(--card); color:var(--danger); border:1px solid #E4B7AE; }
.agmac-btn.danger:hover { background:var(--danger-bg); color:var(--danger); }

.agmac-field { display:block; margin-bottom:.9rem; }
.agmac-field label { display:block; font-size:.8rem; color:var(--ink); margin-bottom:.28rem; font-weight:600; }
.agmac-field input, .agmac-field select, .agmac-field textarea { width:100%; padding:.52rem .65rem; border:1px solid var(--line-strong); border-radius:7px; font-size:.92rem; font-family:var(--font-body); background:var(--card); color:var(--text); }
.agmac-field input:focus, .agmac-field select:focus, .agmac-field textarea:focus { outline:none; border-color:var(--ember); box-shadow:0 0 0 3px rgba(194,97,31,.14); }
.agmac-field.invalid input, .agmac-field.invalid select { border-color:var(--danger, #c0392b); background:rgba(192,57,43,.04); }

/* Compact form grid: organises short fields into tidy columns instead of full-width stretch. */
.agmac-fgrid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:0 1rem; }
.agmac-fgrid-3 { grid-template-columns:repeat(3, minmax(0,1fr)); }
.agmac-fgrid .agmac-field { margin-bottom:.9rem; }
@media (max-width:640px){ .agmac-fgrid, .agmac-fgrid-3 { grid-template-columns:1fr; } }

/* Staged (not-yet-uploaded) file rows on the new-job page. */
.agmac-staged { display:flex; align-items:center; gap:.6rem; padding:.4rem .6rem; border:1px solid var(--line); border-radius:7px; background:var(--paper); margin-top:.4rem; }
.agmac-staged .n { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.9rem; }
.agmac-staged .s { color:var(--muted); font-size:.8rem; white-space:nowrap; }

.agmac-h1 { font-family:var(--font-head); font-size:1.55rem; font-weight:800; color:var(--ironstone); margin-bottom:.15rem; letter-spacing:-.01em; }
.agmac-sub { color:var(--muted); font-size:.9rem; margin-bottom:1.2rem; }
.agmac-metric { font-family:var(--font-head); font-size:1.5rem; font-weight:800; color:var(--ironstone); letter-spacing:-.01em; }
.agmac-row { display:flex; gap:1rem; flex-wrap:wrap; }
.agmac-row > .agmac-card { flex:1; min-width:180px; }
.agmac-muted { color:var(--muted); font-size:.86rem; }
.agmac-mono { font-family:var(--font-mono); }
.agmac-error { background:var(--danger-bg); color:var(--danger); padding:.62rem .85rem; border-radius:7px; font-size:.88rem; margin-bottom:.8rem; border:1px solid #E4B7AE; }
.agmac-ok { background:var(--success-bg); color:#1F6E58; padding:.62rem .85rem; border-radius:7px; font-size:.88rem; margin-bottom:.8rem; border:1px solid #B9DED2; }

/* Auth pages (login, invite, reset) */
.agmac-auth { min-height:100vh; display:flex; align-items:center; justify-content:center; background:var(--ironstone); padding:2rem; }
.agmac-auth-inner { width:27rem; max-width:100%; }
.agmac-auth-logo { display:block; width:250px; max-width:78%; height:auto; margin:0 auto 1.5rem; }
.agmac-auth-card { width:100%; background:var(--paper); border-radius:14px; padding:2.2rem 2.2rem 2rem; box-shadow:0 20px 50px rgba(0,0,0,.35); }
.agmac-auth-head { text-align:center; margin-bottom:1.4rem; }
.agmac-auth-head .agmac-wordmark { font-family:var(--font-head); font-weight:800; font-size:1.3rem; color:var(--ironstone); margin-top:.5rem; }
.agmac-auth-head .agmac-tagline { font-family:var(--font-mono); font-size:.66rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ember); margin-top:.25rem; }

/* Bootstrap overrides so auth pages (login/invite/reset) match the brand */
.btn-primary { background-color:var(--ember); border-color:var(--ember); font-family:var(--font-body); font-weight:600; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background-color:var(--ember-dark)!important; border-color:var(--ember-dark)!important; }
.btn-outline-secondary { color:var(--ink); border-color:var(--line-strong); font-family:var(--font-body); }
.btn-outline-secondary:hover { background-color:var(--paper); color:var(--ink); border-color:var(--muted-2); }
.form-control { font-family:var(--font-body); border-color:var(--line-strong); }
.form-control:focus { border-color:var(--ember); box-shadow:0 0 0 3px rgba(194,97,31,.14); }
.form-label { font-weight:600; color:var(--ink); font-size:.85rem; }
.card-title { font-family:var(--font-head); }
.alert-success { background:var(--success-bg); color:#1F6E58; border-color:#B9DED2; }
.alert-danger { background:var(--danger-bg); color:var(--danger); border-color:#E4B7AE; }
a { color:var(--ember); }
.text-muted { color:var(--muted)!important; }
code { font-family:var(--font-mono); color:var(--ember-dark); }

/* ---- Combobox (searchable select) ---- */
.agmac-combo { position:relative; }
.agmac-combo-input { width:100%; padding:.52rem .65rem; border:1px solid var(--line-strong); border-radius:7px; font-size:.92rem; font-family:var(--font-body); background:var(--card); color:var(--text); }
.agmac-combo-input:focus { outline:none; border-color:var(--ember); box-shadow:0 0 0 3px rgba(194,97,31,.14); }
.agmac-combo-list { position:absolute; z-index:40; top:calc(100% + 2px); left:0; right:0; max-height:15rem; overflow-y:auto; background:var(--card); border:1px solid var(--line-strong); border-radius:8px; box-shadow:0 10px 30px rgba(28,27,26,.16); }
.agmac-combo-item { padding:.5rem .7rem; cursor:pointer; font-size:.9rem; display:flex; justify-content:space-between; gap:.6rem; align-items:center; }
.agmac-combo-item.active { background:rgba(194,97,31,.12); }
.agmac-combo-item.add { color:var(--ember-dark); font-weight:600; border-top:1px solid var(--line); }
.agmac-combo-sub { color:var(--muted-2); font-size:.78rem; white-space:nowrap; }

/* ---- Modal / confirm ---- */
.agmac-modal-backdrop { position:fixed; inset:0; background:rgba(28,27,26,.5); display:flex; align-items:center; justify-content:center; z-index:1000; padding:1rem; }
.agmac-modal { background:var(--card); border-radius:12px; padding:1.4rem 1.5rem; width:26rem; max-width:100%; box-shadow:0 24px 60px rgba(0,0,0,.35); }
.agmac-modal h5 { font-family:var(--font-head); font-weight:700; font-size:1.05rem; color:var(--ironstone); }
.agmac-modal h4 { font-family:var(--font-head); font-weight:800; font-size:1.15rem; color:var(--ironstone); }
/* Purchase-confirmation modal */
.agmac-confirm-amount { font-family:var(--font-head); font-size:1.7rem; font-weight:800; color:var(--ember); margin:.2rem 0; }
.agmac-cardlist { display:flex; flex-direction:column; gap:.4rem; margin:.2rem 0 .3rem; }
.agmac-cardopt { display:flex; align-items:center; gap:.55rem; padding:.5rem .7rem; border:1px solid var(--line-strong);
    border-radius:8px; cursor:pointer; font-size:.9rem; }
.agmac-cardopt.sel { border-color:var(--ember); box-shadow:0 0 0 2px rgba(194,97,31,.15); background:rgba(194,97,31,.04); }
.agmac-cardopt input { margin:0; }
.agmac-card-brand { font-weight:700; text-transform:capitalize; }

/* ---- Toasts ---- */
.agmac-toast-wrap { position:fixed; bottom:1.1rem; right:1.1rem; z-index:1100; display:flex; flex-direction:column; gap:.5rem; max-width:22rem; }
.agmac-toast { padding:.7rem 1rem; border-radius:9px; color:#fff; font-size:.88rem; box-shadow:0 8px 24px rgba(0,0,0,.2); cursor:pointer; animation:agmac-toast-in .18s ease-out; }
.agmac-toast.success { background:var(--success); } .agmac-toast.error { background:var(--danger); } .agmac-toast.info { background:var(--ironstone); }
@keyframes agmac-toast-in { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }

/* ---- Accessibility: visible focus ---- */
a:focus-visible, button:focus-visible, .agmac-row-link:focus-visible, [tabindex]:focus-visible { outline:2px solid var(--ember); outline-offset:2px; border-radius:4px; }
.agmac-row-link { cursor:pointer; }
.agmac-table tbody tr[tabindex]:hover, .agmac-table tbody tr.agmac-row-link:hover { background:var(--paper); }

/* ---- Mobile menu scaffolding ---- */
.agmac-nav-toggle { display:none; }
.agmac-nav-scrim { display:none; }

@media (max-width: 820px) {
  .agmac-shell { flex-direction:column; }
  .agmac-topbar { padding:.5rem .9rem; }
  .agmac-topbar-title { display:block; font-family:var(--font-head); font-weight:800; color:var(--ironstone); font-size:1rem; }
  .agmac-hamburger { display:block; font-size:1.5rem; line-height:1; padding:.2rem .55rem; cursor:pointer; color:var(--ironstone); border:1px solid var(--line-strong); border-radius:7px; user-select:none; }
  .agmac-sidebar { position:fixed; top:0; left:0; bottom:0; width:250px; z-index:80; transform:translateX(-100%); transition:transform .2s ease; overflow-y:auto; }
  .agmac-nav-toggle:checked ~ .agmac-shell .agmac-sidebar { transform:translateX(0); box-shadow:0 0 40px rgba(0,0,0,.4); }
  .agmac-nav-toggle:checked ~ .agmac-shell .agmac-nav-scrim { display:block; position:fixed; inset:0; z-index:70; background:rgba(0,0,0,.4); }
  .agmac-content { padding:1.1rem 1rem; }
  /* Tables scroll horizontally instead of overflowing the viewport */
  .agmac-card > .agmac-table, .agmac-table { display:block; overflow-x:auto; white-space:nowrap; }
  /* Bigger touch targets */
  .agmac-btn { padding:.62rem 1.1rem; }
  .agmac-nav-link { padding:.7rem 1.2rem; }
  .agmac-row { gap:.7rem; }
}

/* ---- Machine catalogue ---- */
.agmac-cat-toolbar { position:sticky; top:52px; z-index:30; }
.agmac-cat-layout { display:flex; gap:1rem; align-items:flex-start; flex-wrap:wrap; }
.agmac-cat-brands { flex:0 0 250px; max-width:100%; }
.agmac-cat-brandlist { max-height:64vh; overflow:auto; }
.agmac-brand-item { display:flex; justify-content:space-between; align-items:center; gap:.5rem; padding:.45rem .55rem; cursor:pointer; border-radius:7px; }
.agmac-brand-item:hover { background:var(--bone); }
.agmac-brand-item.active { background:var(--ember); color:#fff; }
.agmac-brand-item .count { font-size:.78rem; opacity:.7; font-variant-numeric:tabular-nums; }
.agmac-cat-models { flex:1; min-width:300px; }
.agmac-viewtoggle { display:inline-flex; border:1px solid var(--line); border-radius:8px; overflow:hidden; }
.agmac-viewtoggle button { background:var(--card); border:none; padding:.34rem .6rem; cursor:pointer; color:var(--muted); font-size:.82rem; display:inline-flex; align-items:center; gap:.3rem; }
.agmac-viewtoggle button.active { background:var(--ember); color:#fff; }
.agmac-model-row { border-bottom:1px solid var(--line); }
.agmac-model-head { display:flex; align-items:center; gap:.6rem; padding:.5rem .2rem; cursor:pointer; }
.agmac-model-head:hover { background:var(--bone); }
.agmac-model-thumb { height:34px; width:52px; flex:0 0 auto; border-radius:5px; overflow:hidden; display:inline-flex; align-items:center; justify-content:center; background:var(--bone); }
.agmac-model-thumb img { height:34px; width:52px; object-fit:cover; }
.agmac-model-name { flex:1; min-width:0; }
.agmac-model-detail { padding:.2rem 0 .7rem 3.6rem; }
.agmac-model-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(150px, 1fr)); gap:.7rem; margin-top:.5rem; }
.agmac-model-card { border:1px solid var(--line); border-radius:9px; overflow:hidden; cursor:pointer; background:var(--card); transition:box-shadow .12s, border-color .12s; }
.agmac-model-card:hover { border-color:var(--line-strong); box-shadow:0 3px 10px rgba(28,27,26,.08); }
.agmac-model-card.active { border-color:var(--ember); box-shadow:0 0 0 2px rgba(194,97,31,.25); }
.agmac-model-card-img { height:96px; width:100%; background:var(--bone); display:flex; align-items:center; justify-content:center; }
.agmac-model-card-img img { height:96px; width:100%; object-fit:cover; }
.agmac-model-card-body { padding:.5rem .6rem; }
.agmac-model-card-name { font-weight:700; color:var(--ironstone); font-size:.9rem; line-height:1.15; }

/* ---- Catalogue: unified top toolbar (RepairMan-style) ---- */
.agmac-catbar { position:sticky; top:52px; z-index:30; display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; margin-bottom:.6rem; }
.agmac-catbar select { padding:.45rem .55rem; border:1px solid var(--line-strong); border-radius:8px; background:var(--card); color:var(--ink); font-size:.86rem; font-family:var(--font-body); }
.agmac-catbar-search { position:relative; flex:1; min-width:200px; display:flex; align-items:center; }
.agmac-catbar-icon { position:absolute; left:.6rem; color:var(--muted); font-size:1rem; pointer-events:none; }
.agmac-catbar-search input { width:100%; padding:.5rem .6rem .5rem 1.8rem; border:1px solid var(--line-strong); border-radius:8px; background:var(--paper); color:var(--ink); font-size:.9rem; font-family:var(--font-body); }
.agmac-catbar-search input:focus { outline:none; border-color:var(--ember); box-shadow:0 0 0 2px rgba(194,97,31,.15); }
.agmac-catbar .agmac-viewtoggle { margin-left:auto; }

/* ---- Catalogue: machine tiles ---- */
.agmac-tilegrid { display:grid; grid-template-columns:repeat(auto-fill, minmax(168px, 1fr)); gap:.8rem; }
.agmac-tile { border:1px solid var(--line); border-radius:11px; overflow:hidden; cursor:pointer; background:var(--card); transition:box-shadow .12s, border-color .12s, transform .08s; }
.agmac-tile:hover { border-color:var(--line-strong); box-shadow:0 4px 14px rgba(28,27,26,.10); transform:translateY(-1px); }
.agmac-tile:focus { outline:none; border-color:var(--ember); box-shadow:0 0 0 2px rgba(194,97,31,.25); }
.agmac-tile.active { border-color:var(--ember); box-shadow:0 0 0 2px rgba(194,97,31,.28); }
.agmac-tile-img { height:110px; width:100%; background:var(--bone); display:flex; align-items:center; justify-content:center; }
.agmac-tile-img img { height:110px; width:100%; object-fit:cover; }
.agmac-tile-body { padding:.55rem .65rem .65rem; }
.agmac-tile-brand { font-size:.72rem; text-transform:uppercase; letter-spacing:.04em; color:var(--ember-dark); font-weight:700; }
.agmac-tile-name { font-weight:700; color:var(--ironstone); font-size:.92rem; line-height:1.15; margin:.05rem 0; }
.agmac-tile-meta { font-size:.76rem; color:var(--muted); }

/* ---- Upload progress ---- */
.agmac-progress { height:8px; background:var(--line); border-radius:6px; overflow:hidden; }
.agmac-progress-bar { height:100%; background:var(--ember); border-radius:6px; transition:width .2s ease; }

/* ---- Job status timeline ---- */
.agmac-steps { display:flex; gap:0; margin:.4rem 0 1.1rem; }
.agmac-step { flex:1; text-align:center; position:relative; font-size:.76rem; color:var(--muted-2); }
.agmac-step:not(:last-child)::after { content:""; position:absolute; top:9px; left:50%; width:100%; height:2px; background:var(--line); z-index:0; }
.agmac-step .dot { width:18px; height:18px; border-radius:50%; background:var(--line); margin:0 auto .35rem; position:relative; z-index:1; border:2px solid var(--bone); }
.agmac-step.done .dot, .agmac-step.active .dot { background:var(--ember); }
.agmac-step.done:not(:last-child)::after { background:var(--ember); }
.agmac-step.active { color:var(--ironstone); font-weight:600; }
.agmac-step.done { color:var(--text); }

/* ---- Payment split (job submit) ---- */
.agmac-paysplit { border:1px solid var(--line); border-radius:8px; padding:.45rem .8rem; margin:.5rem 0 .7rem; max-width:340px; }
.agmac-paysplit > div { display:flex; justify-content:space-between; padding:.16rem 0; }
.agmac-paysplit-total { border-top:1px solid var(--line); margin-top:.2rem; padding-top:.38rem; font-weight:700; color:var(--ironstone); }

/* ---- Tabs (settings, etc.) ---- */
.agmac-tabs { display:flex; flex-wrap:wrap; gap:.2rem; border-bottom:1px solid var(--line); margin:.4rem 0 1.1rem; }
.agmac-tab { background:none; border:none; border-bottom:2px solid transparent; padding:.55rem .9rem; font-family:var(--font-body); font-size:.9rem; color:var(--muted); cursor:pointer; margin-bottom:-1px; }
.agmac-tab:hover { color:var(--ironstone); }
.agmac-tab.active { color:var(--ember); border-bottom-color:var(--ember); font-weight:600; }
.agmac-c { text-align:center; }

/* File-picker styled as a button (used for ECU photo upload) */
.agmac-file-btn { position:relative; overflow:hidden; cursor:pointer; display:inline-block; }
.agmac-file-btn input[type=file] { position:absolute; inset:0; opacity:0; cursor:pointer; font-size:0; width:100%; height:100%; }

/* ---- Reconnect / error banner ---- */
#blazor-error-ui { background:var(--ironstone); color:#F5F3EF; box-shadow:0 -1px 8px rgba(0,0,0,.3); }
#blazor-error-ui .reload { color:var(--ember); }
/* Custom reconnection overlay (App.razor). Blazor adds one of components-reconnect-{show,failed,rejected}
   to #components-reconnect-modal while the circuit is down; hidden entirely otherwise. */
.agmac-reconnect { display:none; position:fixed; inset:0; z-index:3000; background:rgba(20,18,15,.55);
    align-items:center; justify-content:center; font-family:var(--font-body); backdrop-filter:blur(2px); }
.agmac-reconnect.components-reconnect-show,
.agmac-reconnect.components-reconnect-failed,
.agmac-reconnect.components-reconnect-rejected { display:flex; }
.agmac-reconnect-card { background:var(--card); border:1px solid var(--line-strong); border-radius:12px;
    padding:1.5rem 1.75rem; max-width:420px; width:calc(100% - 2rem); box-shadow:0 12px 40px rgba(0,0,0,.35); text-align:center; }
.agmac-reconnect-card h3 { margin:.2rem 0 .5rem; font-family:var(--font-head); }
.agmac-reconnect-card p { margin:0 0 .6rem; color:var(--muted); font-size:.9rem; }
.agmac-reconnect-card button { margin-top:.3rem; padding:.45rem .9rem; border-radius:8px; border:none;
    background:var(--ember); color:#fff; font-weight:600; cursor:pointer; }
.agmac-reconnect-spinner { width:34px; height:34px; margin:0 auto 1rem; border-radius:50%;
    border:3px solid var(--line-strong); border-top-color:var(--ember); animation:agmac-spin 1s linear infinite; }
/* Show only the section matching the current state. */
.agmac-reconnect-trying, .agmac-reconnect-failed, .agmac-reconnect-rejected { display:none; }
.agmac-reconnect.components-reconnect-show .agmac-reconnect-trying { display:block; }
.agmac-reconnect.components-reconnect-failed .agmac-reconnect-failed { display:block; }
.agmac-reconnect.components-reconnect-rejected .agmac-reconnect-rejected { display:block; }
.agmac-reconnect.components-reconnect-failed .agmac-reconnect-spinner,
.agmac-reconnect.components-reconnect-rejected .agmac-reconnect-spinner { display:none; }

/* ---- Job messages (chat bubbles) ---- */
.agmac-msg { display:flex; margin:.35rem 0; }
.agmac-msg.mine { justify-content:flex-end; }
.agmac-msg-bubble { max-width:80%; padding:.5rem .75rem; border-radius:12px; background:var(--paper); border:1px solid var(--line); }
.agmac-msg.mine .agmac-msg-bubble { background:rgba(194,97,31,.10); border-color:rgba(194,97,31,.28); }
.agmac-msg-who { font-size:.72rem; font-weight:700; color:var(--muted); margin-bottom:.15rem; }
.agmac-msg.mine .agmac-msg-who { color:var(--ember-dark); }

/* ---- Upload dropzone ---- */
.agmac-dropzone { border:1.5px dashed var(--line-strong); border-radius:9px; padding:.9rem; margin-top:.35rem; text-align:center; background:var(--paper); }
.agmac-dropzone.busy { border-color:var(--ember); background:rgba(194,97,31,.05); }
.agmac-dropzone input[type=file] { max-width:100%; }
.agmac-spin { display:inline-block; animation:agmac-spin 1s linear infinite; }
@keyframes agmac-spin { to { transform:rotate(360deg); } }

/* ---- Aging highlight (queue) ---- */
.agmac-age-warn { color:var(--danger); font-weight:600; }
/* Job flagged for a reply (new message, incl. after completion) */
.agmac-row-attention { background:rgba(194,97,31,.06) !important; box-shadow:inset 3px 0 0 var(--ember); }

/* Dealer-chosen priority chip */
.agmac-prio { display:inline-block; padding:.12rem .5rem; border-radius:20px; font-size:.72rem; font-weight:700;
    letter-spacing:.02em; border:1px solid transparent; white-space:nowrap; }
.agmac-prio.prio-asap { background:var(--danger-bg); color:var(--danger); border-color:#E4B7AE; }
.agmac-prio.prio-normal { background:var(--paper); color:var(--muted); border-color:var(--line-strong); }
.agmac-prio.prio-low { background:#eef2f6; color:#5b6b7a; border-color:#cdd8e1; }

/* ---- Filter chips ---- */
.agmac-chip { display:inline-flex; align-items:center; gap:.3rem; font-size:.82rem; padding:.3rem .6rem; border:1px solid var(--line-strong); border-radius:20px; cursor:pointer; user-select:none; background:var(--card); }
.agmac-chip input { margin:0; }
.agmac-chip-disabled { opacity:.5; }

/* Pricing calculator */
.agmac-seg { display:inline-flex; flex-wrap:wrap; gap:.3rem; background:var(--paper); border:1px solid var(--line); border-radius:10px; padding:.3rem; }
.agmac-seg button { border:none; background:transparent; padding:.5rem .9rem; border-radius:7px; font:inherit; font-size:.9rem; color:var(--ink); cursor:pointer; }
.agmac-seg button.on { background:var(--card); color:var(--ember); font-weight:600; box-shadow:0 1px 2px rgba(28,27,26,.08); }
.agmac-optgrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:.6rem; }
.agmac-opt { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.15rem; min-height:66px; padding:.85rem .9rem; border:1.5px solid var(--line-strong); border-radius:10px; background:var(--card); cursor:pointer; text-align:center; font:inherit; transition:border-color .12s, background .12s; }
.agmac-opt:hover { border-color:var(--ember); }
.agmac-opt.on { border-color:var(--ember); background:rgba(194,97,31,.13); }
.agmac-opt.on .agmac-opt-name { color:var(--ember); }
.agmac-opt-name { font-weight:600; color:var(--ironstone); }
.agmac-opt-sub { font-size:.72rem; color:var(--muted); }
.agmac-opt-tick { position:absolute; top:.45rem; right:.55rem; color:var(--ember); font-weight:800; opacity:0; }
.agmac-opt.on .agmac-opt-tick { opacity:1; }
.agmac-price-panel { margin-top:1rem; background:var(--paper); border:1px solid var(--line); border-radius:12px; padding:1.1rem 1.2rem; text-align:center; }
.agmac-price-panel .lbl { font-size:.9rem; color:var(--ink); font-weight:600; margin-bottom:.25rem; }
.agmac-price-panel .main { font-family:var(--font-head); font-size:2.1rem; font-weight:800; color:var(--ironstone); line-height:1.1; letter-spacing:-.01em; }
.agmac-price-panel .main .u { font-size:.85rem; font-weight:400; color:var(--muted); }
.agmac-price-panel .sub { font-size:.9rem; color:var(--muted); margin-top:.2rem; }
.agmac-price-panel .hint { font-size:.9rem; color:var(--muted); }

/* ---- Package selection tiles (New job + dealer pricing) ---- */
.agmac-pkg-list { display:flex; flex-direction:column; gap:.5rem; }
.agmac-pkg-tile { display:flex; align-items:center; gap:.9rem; padding:.7rem .9rem; border:1.5px solid var(--line-strong); border-radius:10px; background:var(--card); cursor:pointer; transition:border-color .12s, background .12s; }
.agmac-pkg-tile:hover { border-color:var(--ember); }
.agmac-pkg-tile.sel { border-color:var(--ember); background:rgba(194,97,31,.10); }
.agmac-pkg-tile input[type=radio] { flex:0 0 auto; accent-color:var(--ember); }
.agmac-pkg-main { flex:1; min-width:0; }
.agmac-pkg-name { font-weight:700; color:var(--ironstone); }
.agmac-pkg-chips { font-size:.72rem; color:var(--muted); font-family:var(--font-mono); text-transform:uppercase; letter-spacing:.04em; margin-top:.1rem; }
.agmac-pkg-price { font-family:var(--font-head); font-weight:800; color:var(--ironstone); white-space:nowrap; }
.agmac-pkg-price .u { font-size:.75rem; font-weight:400; color:var(--muted); }

/* ---- Sidebar global search ---- */
.agmac-nav-search { padding:.2rem 1.1rem .6rem; }
.agmac-nav-search input { width:100%; padding:.42rem .6rem; border-radius:7px; border:1px solid #45413A; background:#26241f; color:#F5F3EF; font-size:.85rem; font-family:var(--font-body); }
.agmac-nav-search input::placeholder { color:#8b857b; }
.agmac-nav-search input:focus { outline:none; border-color:var(--ember); }

/* ---- Staff job: "Work requested" callout ---- */
.agmac-needs { border-left:4px solid var(--ember); }
.agmac-needs-list { display:flex; flex-wrap:wrap; gap:.4rem; }
.agmac-needs-item { display:inline-block; padding:.32rem .7rem; border-radius:20px; background:rgba(194,97,31,.10);
    border:1px solid rgba(194,97,31,.30); color:var(--ember-dark); font-weight:600; font-size:.9rem; }
.agmac-needs-notes { margin-top:.6rem; white-space:pre-wrap; }
.agmac-needs-meta { margin-top:.55rem; font-size:.85rem; }
.agmac-linkbtn { background:none; border:none; color:var(--ember); font:inherit; cursor:pointer; text-decoration:underline; padding:0; }
/* Staff "attach machine to catalogue" search + suggestion rows */
.agmac-linklist { max-height:15rem; overflow:auto; border:1px solid var(--line-strong); border-radius:8px; }
.agmac-linkrow { display:flex; align-items:center; justify-content:space-between; gap:.6rem; padding:.4rem .6rem; border-bottom:1px solid var(--line); }
.agmac-linkrow:last-child { border-bottom:none; }
.agmac-linkrow .agmac-btn { padding:.25rem .7rem; }
/* Inline sub-form (e.g. add-new-ECU on New job) — contained so it doesn't clash with the parent form */
.agmac-subform { border:1px solid var(--line-strong); border-radius:9px; background:var(--paper); padding:.8rem .9rem; margin-top:.5rem; }
.agmac-subform-head { display:flex; align-items:baseline; gap:.5rem; flex-wrap:wrap; margin-bottom:.6rem; }
.agmac-subform-head strong { color:var(--ironstone); }
.agmac-subform .agmac-field label { font-size:.78rem; }

/* Dealer dashboard: business hours card */
.agmac-hours { border-left:4px solid var(--ember); }
.agmac-hours-head { display:flex; align-items:center; justify-content:space-between; gap:.6rem; }
.agmac-hours-badge { font-size:.75rem; font-weight:700; padding:.18rem .6rem; border-radius:20px; border:1px solid transparent; }
.agmac-hours-badge.open { background:#e7f4ea; color:#1f7a3d; border-color:#b6ddc1; }
.agmac-hours-badge.closed { background:var(--paper); color:var(--muted); border-color:var(--line-strong); }
.agmac-hours-body { display:flex; align-items:baseline; gap:.6rem; flex-wrap:wrap; margin-top:.4rem; }
.agmac-hours-days { font-weight:600; color:var(--ink); }
.agmac-hours-time { font-family:var(--font-head); font-weight:800; font-size:1.25rem; color:var(--ironstone); }

/* Dealer "did you mean?" suggestion panel on New job */
.agmac-suggest { margin-top:.5rem; padding:.6rem .7rem; border:1px solid #e7c9a8; background:#fffdf5; border-radius:8px; }
.agmac-suggest-q { font-size:.85rem; font-weight:600; color:var(--ink); margin-bottom:.4rem; }
.agmac-suggest-pick { display:inline-block; margin:0 .35rem .35rem 0; padding:.3rem .7rem; border-radius:20px;
    border:1px solid var(--ember); background:#fff; color:var(--ember-dark); font-weight:600; font-size:.85rem; cursor:pointer; }
.agmac-suggest-pick:hover { background:var(--ember); color:#fff; }
.agmac-suggest-actions { display:flex; gap:.6rem; align-items:center; margin-top:.3rem; }

/* ---- Staff job: header + at-a-glance summary + actions ---- */
.agmac-jobhead { display:flex; align-items:center; gap:.55rem; flex-wrap:wrap; margin-bottom:1rem; }
.agmac-summary { display:flex; gap:1.5rem 2.5rem; flex-wrap:wrap; }
.agmac-deflist { display:grid; grid-template-columns:max-content 1fr; gap:.45rem 1.1rem; align-items:baseline; margin:0; flex:1 1 440px; }
.agmac-deflist dt { color:var(--muted); font-size:.85rem; font-weight:600; }
.agmac-deflist dd { margin:0; color:var(--ink); }

/* Grouped job info (Vehicle / ECU / Job blocks) — each block is a defined panel */
.agmac-jobinfo { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:.8rem; }
.agmac-jobinfo > div { background:var(--paper); border:1px solid var(--line); border-radius:10px; padding:.75rem .9rem; }
.agmac-jobinfo-h { font-size:.7rem; text-transform:uppercase; letter-spacing:.05em; color:var(--ember); font-weight:700; margin-bottom:.5rem; padding-bottom:.35rem; border-bottom:1px solid var(--line); }
.agmac-kv { display:grid; grid-template-columns:max-content 1fr; gap:.35rem .9rem; align-items:baseline; margin:0; }
.agmac-kv dt { color:var(--muted); font-size:.85rem; font-weight:600; }
.agmac-kv dd { margin:0; color:var(--ink); overflow-wrap:anywhere; }

/* Tune package card */
.agmac-pkg-badges { display:flex; flex-wrap:wrap; gap:.4rem; margin:.1rem 0 .9rem; }
.agmac-pkg-badge { background:rgba(194,97,31,.10); color:var(--ember); border:1px solid rgba(194,97,31,.28); border-radius:20px; padding:.22rem .75rem; font-size:.82rem; font-weight:600; }
.agmac-pricebreak { display:grid; grid-template-columns:1fr max-content; gap:.3rem 1rem; align-items:baseline; }
.agmac-pricebreak .lbl { color:var(--muted); font-size:.9rem; }
.agmac-pricebreak .val { text-align:right; font-variant-numeric:tabular-nums; }
.agmac-pricebreak .tot { font-weight:800; color:var(--ironstone); font-size:1.15rem; border-top:1px solid var(--line-strong); padding-top:.45rem; margin-top:.2rem; }
.agmac-summary-svc { flex:1 1 300px; min-width:0; }
.agmac-summary-svc-h { font-weight:700; color:var(--ironstone); margin-bottom:.5rem; }
.agmac-actions { display:flex; align-items:center; gap:.8rem; flex-wrap:wrap; }
.agmac-actions-btns { display:flex; gap:.5rem; flex-wrap:wrap; }
.agmac-actions-meta { margin-left:auto; font-size:.82rem; }

/* ---- Compact stacked file list (fits narrow columns without horizontal scroll) ---- */
.agmac-filelist { display:flex; flex-direction:column; gap:.5rem; }
.agmac-fileitem { border:1px solid var(--line); border-radius:8px; padding:.5rem .6rem; background:var(--card); min-width:0; }
.agmac-fileitem-head { display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.agmac-fileitem-dl { padding:.2rem .6rem; font-size:.8rem; white-space:nowrap; }
.agmac-fileitem-name { font-weight:600; font-size:.88rem; margin-top:.3rem; overflow-wrap:anywhere; word-break:break-word; }
.agmac-fileitem-meta { color:var(--muted); font-size:.76rem; margin-top:.15rem; }
.agmac-fileitem-desc { margin-top:.4rem; display:flex; gap:.3rem; align-items:center; }
.agmac-fileitem-desc:empty { display:none; }
.agmac-fileitem-desc input { flex:1; min-width:0; padding:.25rem .4rem; }
.agmac-fileitem-desc .agmac-btn { padding:.2rem .55rem; }

/* ---- Dealer job page: details/tune/submit (larger left) + files & messages (smaller right) ---- */
.agmac-jobgrid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr); gap:1rem; align-items:start; }
.agmac-jobgrid-main, .agmac-jobgrid-side { display:flex; flex-direction:column; gap:1rem; min-width:0; }
.agmac-jobgrid-side { order:1; }   /* Details / Tune items / Submit → larger left column */
.agmac-jobgrid-main { order:2; }   /* Files & Messages → smaller right column */
@media (max-width:900px) { .agmac-jobgrid { grid-template-columns:1fr; } .agmac-jobgrid-side, .agmac-jobgrid-main { order:0; } }

/* ---- Staff job: dealer | writer vertical split ---- */
.agmac-split { display:grid; grid-template-columns:1fr 1fr; gap:1rem; align-items:start; }
.agmac-split-col { min-width:0; display:flex; flex-direction:column; gap:1rem; }
.agmac-split-head { font-family:var(--font-head); font-weight:800; font-size:.8rem; letter-spacing:.06em;
    text-transform:uppercase; padding:.3rem .1rem; border-bottom:2px solid var(--line-strong); }
.agmac-split-dealer { color:var(--ember-dark); border-bottom-color:var(--ember); }
.agmac-split-writer { color:var(--ironstone); }
@media (max-width:900px) { .agmac-split { grid-template-columns:1fr; } }

/* ---- Layout utilities (consolidated from repeated inline styles) ---- */
.agmac-toolbar { display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; }
.agmac-r { text-align:right; }
