:root { --ui-action-danger:#c51b1b; --ui-action-save:#173b66; --ui-action-success:#188648; --ui-action-warning:#ef990d; }
.ui-action-glyph { width:18px; height:18px; flex-shrink:0; vertical-align:middle; }
.ui-action-link,.ui-action-with-label { display:inline-flex; align-items:center; gap:8px; }
.ui-reference-links { display:flex; align-items:center; gap:var(--ui-gap); flex-wrap:wrap; margin-block:var(--ui-gap); }
a[data-ui-action]:not(.nav-link):not(.button):not(.ui-action-link):not(.notification-bell) > .ui-action-glyph { margin-inline-end:6px; }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone] {
    --ui-icon-button-bg:var(--ui-surface)!important;
    --ui-icon-button-text:var(--ui-text)!important;
    --ui-icon-button-border:var(--ui-border)!important;
    --ui-icon-button-hover-border:var(--ui-icon-secondary-hover-border)!important;
    --ui-icon-button-hover-text:var(--ui-icon-secondary-hover-border)!important;
}
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="primary"] { --ui-action-color:var(--ui-primary); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="danger"] { --ui-action-color:var(--ui-action-danger); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="save"] { --ui-action-color:var(--ui-action-save); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="success"] { --ui-action-color:var(--ui-action-success); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="warning"] { --ui-action-color:var(--ui-action-warning); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone]:not([data-ui-action-tone="neutral"]) {
    --ui-icon-button-bg:var(--ui-action-color)!important;
    --ui-icon-button-text:#fff!important;
    --ui-icon-button-border:var(--ui-action-color)!important;
    --ui-icon-button-hover-border:var(--ui-action-color)!important;
    --ui-icon-button-hover-text:var(--ui-action-color)!important;
}
html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-action-button,.ui-button,.ui-icon-sample)[data-ui-action-tone] {
    background:var(--ui-icon-button-bg)!important; color:var(--ui-icon-button-text)!important;
    border:1px solid var(--ui-icon-button-border)!important; border-radius:var(--ui-radius); box-sizing:border-box;
    transition:background-color var(--ui-icon-fade-duration) ease,color var(--ui-icon-fade-duration) ease,border-color var(--ui-icon-fade-duration) ease!important;
}
html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-action-button,.ui-button,.ui-icon-sample)[data-ui-action-tone]:hover:not(:disabled):not([aria-disabled="true"]) {
    background:var(--ui-icon-hover-bg)!important; color:var(--ui-icon-button-hover-text)!important; border-color:var(--ui-icon-button-hover-border)!important; transform:none!important; box-shadow:none!important;
}
.ui-icon-sample,.ui-icon-choice { display:inline-flex; align-items:center; justify-content:center; width:var(--ui-field-height); height:var(--ui-field-height); padding:0; border:1px solid var(--ui-border); border-radius:var(--ui-radius); background:var(--ui-surface); color:var(--ui-text); cursor:pointer; }
[data-icon-editor] { margin-block:var(--ui-gap); }
[data-icon-editor] fieldset { min-width:0; padding:0; border:0; }
.ui-icon-settings-list { max-height:560px; overflow:auto; margin-block:var(--ui-gap); }
.ui-icon-settings-row { display:grid; grid-template-columns:minmax(130px,1fr) minmax(140px,1fr) var(--ui-field-height) auto; gap:var(--ui-gap); align-items:center; padding:12px 2px; border-bottom:1px solid var(--ui-border); }
.ui-icon-settings-row[hidden] { display:none; }
.ui-icon-settings-row small { display:block; color:var(--ui-muted); font-size:12px; margin-top:4px; }
.ui-icon-library { width:min(850px,calc(100vw - 24px)); max-height:85dvh; padding:var(--ui-gap); border:1px solid var(--ui-border); border-radius:var(--ui-card-radius); background:var(--ui-surface); color:var(--ui-text); }
.ui-icon-library[open] { display:flex; flex-direction:column; gap:var(--ui-gap); }
.ui-icon-library header { display:flex; justify-content:space-between; align-items:center; gap:var(--ui-gap); }
.ui-icon-library header h2 { margin:0; min-width:0; overflow-wrap:anywhere; }
.ui-icon-library > .ui-field { width:100%; }
.ui-icon-library-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(48px,1fr)); gap:8px; overflow:auto; min-height:60px; }
.ui-icon-choice { justify-self:center; }
.ui-icon-choice:is(:hover,[aria-pressed="true"]) { border-color:var(--ui-primary); background:var(--ui-surface-subtle); }
@media(max-width:600px) { .ui-icon-settings-row { grid-template-columns:minmax(0,1fr) var(--ui-field-height); gap:8px; } .ui-icon-settings-row>div:first-child,.ui-icon-settings-row>[data-reset-action] { grid-column:1/-1; } }
@media(prefers-reduced-motion:reduce) { html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-action-button,.ui-button,.ui-icon-sample)[data-ui-action-tone] { transition:none!important; } }

/* Shared icon motion: finite, CSS-only, independent of action labels and custom glyphs. */
@keyframes ui-icon-check { from { stroke-dashoffset:32; } to { stroke-dashoffset:0; } }
@keyframes ui-icon-complete { from { stroke-dashoffset:12; } to { stroke-dashoffset:0; } }
@keyframes ui-icon-turn { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
@keyframes ui-icon-eye { 0%,100% { transform:scaleY(1); } 40% { transform:scaleY(.12); } 65% { transform:scaleY(1); } }
@keyframes ui-icon-pulse { 0%,100% { transform:scale(1); } 45% { transform:scale(1.13); } }
@keyframes ui-icon-wiggle { 0%,100% { transform:rotate(0); } 25% { transform:rotate(-12deg); } 65% { transform:rotate(10deg); } }
@keyframes ui-icon-send { 0% { transform:translate(0,0); opacity:1; } 65% { transform:translate(18px,-18px); opacity:0; } 66%,85% { transform:translate(0,0); opacity:0; } 100% { transform:translate(0,0); opacity:1; } }
@keyframes ui-icon-exit { 0% { transform:translateX(0); opacity:1; } 65% { transform:translateX(12px); opacity:0; } 66%,85% { transform:translateX(0); opacity:0; } 100% { transform:translateX(0); opacity:1; } }
@keyframes ui-icon-lid { 0%,100% { transform:rotate(0) translateY(0); } 40%,65% { transform:translateY(-1px) rotate(-28deg); } }
@keyframes ui-icon-write { 0%,100% { transform:translate(0,0); } 20% { transform:translate(-2px,1px); } 40% { transform:translate(0,2px); } 60% { transform:translate(2px,-1px); } 80% { transform:translate(1px,1px); } }
@keyframes ui-icon-slider { 0%,100% { transform:translateX(0); } 40% { transform:translateX(3px); } 70% { transform:translateX(-2px); } }
@keyframes ui-icon-page { 0%,100% { transform:perspective(60px) rotateX(0deg); opacity:1; } 48% { transform:perspective(60px) rotateX(-100deg); opacity:.1; } 49% { transform:perspective(60px) rotateX(80deg); opacity:.1; } }
@keyframes ui-icon-ink { 0% { stroke-dashoffset:80; } 100% { stroke-dashoffset:0; } }
@keyframes ui-icon-paper { 0%,100% { transform:translateY(0); } 45% { transform:translateY(3px); } }
@keyframes ui-icon-erase { 0%,100% { transform:translateX(0); } 30% { transform:translateX(-2px); } 65% { transform:translateX(2px); } }
@keyframes ui-icon-import { 0%,100% { transform:translateY(0); opacity:1; } 42% { transform:translateY(8px); opacity:0; } 43% { transform:translateY(-8px); opacity:0; } }
@keyframes ui-icon-export { 0%,100% { transform:translateY(0); opacity:1; } 42% { transform:translateY(-8px); opacity:0; } 43% { transform:translateY(8px); opacity:0; } }
@media (prefers-reduced-motion:no-preference) {
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) :is(svg.ui-action-glyph,svg.lucide) { transform-origin:center; animation:none; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="check"],[data-ui-icon="circle-check"],[data-ui-icon="badge-check"],[data-ui-icon="clock"],[data-ui-icon="download"],[data-ui-icon="upload"]) { animation:none; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="check"] > path { stroke-dasharray:32; animation:ui-icon-check 650ms ease-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="circle-check"],[data-ui-icon="badge-check"]) > path:last-child { stroke-dasharray:12; animation:ui-icon-complete 650ms ease-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="clock"] > polyline { transform-origin:12px 12px; animation:ui-icon-turn 850ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="refresh-cw"],[data-ui-icon="rotate-cw"],[data-ui-icon="rotate-ccw"]) { animation:ui-icon-turn 1400ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="settings"] { animation:ui-icon-turn 2200ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="eye"],[data-ui-icon="eye-off"]) { animation:ui-icon-eye 650ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="bell"],[data-ui-icon="alarm-clock"],[data-ui-icon="x"]) { animation:ui-icon-wiggle 650ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="send"], [data-platform-support] [data-platform-support-send]:is(:hover,:focus-visible):not(:disabled) svg[data-ui-icon="send"] { animation:ui-icon-send 1000ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="eraser"] { animation:ui-icon-erase 650ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="download"] > :is(polyline,line) { animation:ui-icon-import 750ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="upload"] > :is(polyline,line) { animation:ui-icon-export 750ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="plus"] { animation:ui-icon-pulse 650ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="trash-2"] > path:is(:nth-child(1),:nth-child(3)) { transform-origin:3px 6px; animation:ui-icon-lid 1000ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="log-out"] > :is(polyline,line) { animation:ui-icon-exit 1000ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="square-pen"] > path:last-child { animation:ui-icon-write 1000ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="sliders-horizontal"] > line:nth-child(n+7) { animation:ui-icon-slider 1000ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="sliders-horizontal"] > line:nth-child(8) { animation-direction:reverse; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="calendar-days"] > [data-ui-icon-part="calendar-page"] { transform-origin:12px 5px; animation:ui-icon-page 1100ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="printer"] > rect { animation:ui-icon-paper 1000ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="save"] > path:last-child { animation:ui-icon-paper 1000ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="brand-whatsapp"] > path:last-child { transform-origin:12px 12px; animation:ui-icon-wiggle 850ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="user-round"] > circle { animation:ui-icon-paper 850ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="list-checks"] > path:nth-child(-n+2) { stroke-dasharray:12; animation:ui-icon-complete 850ms ease-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:not([data-ui-icon="check"]):not([data-ui-icon="circle-check"]):not([data-ui-icon="badge-check"]):not([data-ui-icon="clock"]):not([data-ui-icon="refresh-cw"]):not([data-ui-icon="settings"]):not([data-ui-icon="eye"]):not([data-ui-icon="trash-2"]):not([data-ui-icon="square-pen"]):not([data-ui-icon="calendar-days"]):not([data-ui-icon="list-checks"]):not([data-ui-icon="save"]):not([data-ui-icon="brand-whatsapp"]) > path:only-child { stroke-dasharray:80; animation:ui-icon-ink 1000ms ease-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="calendar-clock"] > path:nth-child(5) { transform-origin:16px 16px; animation:ui-icon-turn 1400ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg[data-ui-icon="search"] > circle { animation:ui-icon-erase 850ms ease-in-out 1; }
body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="export-excel"],[data-ui-icon="export-pdf"]) > path:last-child { stroke-dasharray:80; animation:ui-icon-ink 1000ms ease-out 1; }
}

/* Applied filter controls retain the shared beige state above action tones. */
html[data-ui-theme] body[data-ui-scope="application"] :is([data-clear-agreement-filters],[data-list-clear],[data-ui-action="clear"]).maale-list-clear--active:not(:disabled):not([aria-disabled="true"]),
html[data-ui-theme] body[data-ui-scope="application"] :is([data-clear-agreement-filters],[data-list-clear],[data-ui-action="clear"]).maale-list-clear--active:hover:not(:disabled):not([aria-disabled="true"]) {
    --ui-icon-hover-bg:var(--ui-filter-applied-bg)!important;
    --ui-icon-button-bg:var(--ui-filter-applied-bg)!important;
    --ui-icon-button-hover-text:var(--ui-filter-applied-text)!important;
    --ui-icon-button-hover-border:var(--ui-filter-applied-border)!important;
    background:var(--ui-filter-applied-bg)!important; color:var(--ui-filter-applied-text)!important; border-color:var(--ui-filter-applied-border)!important;
}
html[data-ui-theme] body[data-ui-scope="application"] :is([data-clear-agreement-filters],[data-list-clear],[data-ui-action="clear"]):disabled {
    background:var(--ui-surface-subtle,#f1f3f5)!important; color:var(--ui-muted)!important; border-color:var(--ui-border)!important; opacity:.5; cursor:default;
}

html[data-ui-theme] body[data-ui-scope="application"] :is(input,select,button).maale-filter--applied:not(:disabled):not(.ui-search-field > input),
html[data-ui-theme] body[data-ui-scope="application"] :is(input,select,button).maale-filter--applied:hover:not(:disabled):not(.ui-search-field > input) {
    background:var(--ui-filter-applied-bg)!important; color:var(--ui-filter-applied-text)!important; border-color:var(--ui-filter-applied-border)!important;
}

/* Glyph hover colors preserve button surfaces, labels, filter states and motion. */
.ui-action-glyph,svg.lucide { transition:color var(--ui-icon-fade-duration,240ms) ease; }
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) :is(svg.ui-action-glyph,svg.lucide) { color:var(--ui-action-hover-color,var(--ui-glyph-hover-color,var(--ui-primary)))!important; }
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="trash-2"],[data-ui-icon="log-out"],[data-ui-icon="x"],[data-ui-icon="export-pdf"]) { --ui-glyph-hover-color:var(--ui-action-danger); }
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="save"],[data-ui-icon="square-pen"],[data-ui-icon="send"],[data-ui-icon="message-square"]) { --ui-glyph-hover-color:var(--ui-action-save); }
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="badge-check"],[data-ui-icon="circle-check"],[data-ui-icon="brand-whatsapp"],[data-ui-icon="export-excel"]) { --ui-glyph-hover-color:var(--ui-action-success); }
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,summary,[role="button"]):is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]):not(.agreement-paper *,.contract-word-host *,[contenteditable="true"] *,[contenteditable="true"],.brand,.portal-logo) svg:is([data-ui-icon="bell"],[data-ui-icon="alarm-clock"]) { --ui-glyph-hover-color:var(--ui-action-warning); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="primary"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-primary); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="danger"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-danger); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="save"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-save); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="success"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-success); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="warning"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-warning); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action="export-excel"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-success); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action="export-pdf"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-danger); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action="logout"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-danger); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action="edit"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-save); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action="send"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-save); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action="sms"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-save); }
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action="notification"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) svg.ui-action-glyph { --ui-action-hover-color:var(--ui-action-warning); }
html[data-ui-theme] body[data-ui-scope="application"] .maale-modal-close:is(:hover,:focus-visible):not(:disabled) svg { color:var(--ui-danger)!important; }
@media(prefers-reduced-motion:reduce) { .ui-action-glyph,svg.lucide { transition:none; } }
/* Page toolbar colors; filter-state colors and row actions remain independent. */
html[data-ui-theme] body[data-ui-scope="application"] :is(.maale-list-filters,.ui-list__filters,.agreement-filter-row,[data-list-filters]) :is(.icon-button,.ui-button--icon-only,.maale-list-search-submit)[data-ui-action]:not(.maale-filter--applied):not(.maale-list-clear--active) {
    --ui-icon-button-bg:var(--ui-icon-secondary-bg)!important;
    --ui-icon-button-text:var(--ui-icon-secondary-text)!important;
    --ui-icon-button-border:var(--ui-icon-secondary-border)!important;
}
html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-page-actions,.maale-list-shell-actions,.maale-list-heading,.ui-list__heading,.agreement-list-heading) :is(.icon-button,.ui-button--icon-only,.page-header-action,.request-export-button)[data-ui-action]:not([data-ui-action="new"]):not(dialog *,tbody *) {
    --ui-icon-button-bg:var(--ui-icon-secondary-bg)!important;
    --ui-icon-button-text:var(--ui-icon-secondary-text)!important;
    --ui-icon-button-border:var(--ui-icon-secondary-border)!important;
}
html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-page-actions,.maale-list-shell-actions,.maale-list-heading,.ui-list__heading,.agreement-list-heading) [data-ui-action="new"]:not(dialog *,tbody *) {
    --ui-icon-button-bg:var(--ui-primary)!important;
    --ui-icon-button-text:var(--ui-primary-text)!important;
    --ui-icon-button-border:var(--ui-primary)!important;
}

/* Shared primary gradient and neutral hover border, inherited from the active theme. */
:root {
 --ui-primary-button-start:color-mix(in srgb,var(--ui-primary) 92%,white);
 --ui-primary-button-end:color-mix(in srgb,var(--ui-primary) 88%,black);
 --ui-primary-button-background:linear-gradient(145deg,var(--ui-primary-button-start),var(--ui-primary-button-end));
}
html[data-ui-theme] body[data-ui-scope="application"] [data-ui-action-tone="neutral"] {
 --ui-icon-button-bg:var(--ui-icon-secondary-bg)!important;
 --ui-icon-hover-bg:#fff;
 --ui-icon-button-hover-border:color-mix(in srgb,var(--ui-primary) 50%,transparent)!important;
 --ui-icon-button-hover-text:var(--ui-text)!important;
}
html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-action-button,.ui-button,.ui-icon-sample,.icon-button,.page-header-action)[data-ui-action-tone="primary"][data-ui-action]:not([data-picker-inline-add]),
html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-action-button,.ui-button,.ui-icon-sample,.icon-button,.page-header-action)[data-ui-action-tone="primary"][data-ui-action]:not([data-picker-inline-add]):hover:not(:disabled):not([aria-disabled="true"]) {
 background:var(--ui-primary-button-background)!important;
 color:var(--ui-primary-text)!important;
 border-color:var(--ui-primary)!important;
}

/* Toolbar buttons lift without changing document layout. */
html[data-ui-theme] body[data-ui-scope="application"] :is(
 :is(.ui-page-actions,[data-page-actions],.page-header,.page-heading,.module-toolbar,.maale-list-heading,.ui-list__heading,.topbar,.maale-list-shell-actions) :is(.icon-button,.ui-button--icon-only,.page-header-action,.request-export-button),
 .page-header-action,.request-export-button,.notification-bell
):not(.ui-search-field__icon,dialog *,[role="dialog"] *,.modal *,tbody *,.agreement-paper *,.contract-word-host *) { transition:transform 180ms ease,background-color var(--ui-icon-fade-duration) ease,color var(--ui-icon-fade-duration) ease,border-color var(--ui-icon-fade-duration) ease!important; }
html[data-ui-theme] body[data-ui-scope="application"] :is(
 :is(.ui-page-actions,[data-page-actions],.page-header,.page-heading,.module-toolbar,.maale-list-heading,.ui-list__heading,.topbar,.maale-list-shell-actions) :is(.icon-button,.ui-button--icon-only,.page-header-action,.request-export-button),
 .page-header-action,.request-export-button,.notification-bell
):not(.ui-search-field__icon,dialog *,[role="dialog"] *,.modal *,tbody *,.agreement-paper *,.contract-word-host *):hover:not(:disabled):not([aria-disabled="true"]) { transform:translateY(-2px)!important; }
@media(prefers-reduced-motion:reduce) {
html[data-ui-theme] body[data-ui-scope="application"] :is(
 :is(.ui-page-actions,[data-page-actions],.page-header,.page-heading,.module-toolbar,.maale-list-heading,.ui-list__heading,.topbar,.maale-list-shell-actions) :is(.icon-button,.ui-button--icon-only,.page-header-action,.request-export-button),
 .page-header-action,.request-export-button,.notification-bell
):not(.ui-search-field__icon,dialog *,[role="dialog"] *,.modal *,tbody *,.agreement-paper *,.contract-word-host *):hover:not(:disabled):not([aria-disabled="true"]) { transition:none!important; transform:none!important; }
}

/* Shared delete action: neutral surface and a persistent danger glyph. */
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,[role=button])[data-ui-action="delete"]{
 --ui-icon-button-bg:var(--ui-icon-secondary-bg,#f1f3f5)!important;
 --ui-icon-button-text:var(--ui-action-danger)!important;
 --ui-icon-button-border:var(--ui-icon-secondary-border,var(--ui-border))!important;
 --ui-icon-button-hover-border:var(--ui-action-danger)!important;
 --ui-icon-button-hover-text:var(--ui-action-danger)!important;
 background:var(--ui-icon-secondary-bg,#f1f3f5)!important;
 color:var(--ui-action-danger)!important;
 border:1px solid var(--ui-icon-secondary-border,var(--ui-border))!important;
}
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,[role=button])[data-ui-action="delete"] svg.ui-action-glyph{color:var(--ui-action-danger)!important}
html[data-ui-theme] body[data-ui-scope="application"] :is(button,a,[role=button])[data-ui-action="delete"]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled=true]){background:#fff!important;border-color:var(--ui-action-danger)!important;color:var(--ui-action-danger)!important}

/* Optional glyph state preserves the shared neutral button surface. */
[data-ui-glyph-tone="success"]>.ui-action-glyph{color:var(--ui-action-success)}
[data-ui-glyph-tone="muted"]>.ui-action-glyph{color:var(--ui-muted,#7f8b99)}

/* Disclosure orientation and directional motion share one SVG library glyph. */
html[data-ui-theme] body .ui-disclosure-arrow {
    --ui-disclosure-angle:0deg;display:inline-flex;align-items:center;justify-content:center;
    flex-shrink:0;width:18px;height:18px;transform:rotate(var(--ui-disclosure-angle));
    transition:transform 320ms cubic-bezier(.22,.8,.25,1);transform-origin:center;
}
html[data-ui-theme] body [aria-expanded="true"] > .ui-disclosure-arrow { --ui-disclosure-angle:180deg; }
html[data-ui-theme] body [data-sidebar-collapse] > .ui-disclosure-arrow { --ui-disclosure-angle:-90deg; }
html[data-ui-theme] body [data-sidebar-collapse][aria-expanded="false"] > .ui-disclosure-arrow { --ui-disclosure-angle:90deg; }
html[data-ui-theme] body .ui-disclosure-arrow > svg { width:16px;height:16px;transform:none; }
@media(prefers-reduced-motion:no-preference) {
    :is(button,summary):is(:hover,:focus-visible):not(:disabled) > .ui-disclosure-arrow > svg { animation:ui-disclosure-nudge 480ms ease-in-out 1!important; }
}
@keyframes ui-disclosure-nudge { 0%,100%{transform:translateY(0)} 30%{transform:translateY(2.5px)} 60%{transform:translateY(-1px)} 80%{transform:translateY(1px)} }
@media(prefers-reduced-motion:reduce) { html[data-ui-theme] body .ui-disclosure-arrow {transition:none;} html[data-ui-theme] body .ui-disclosure-arrow > svg {animation:none!important;} }

@media(prefers-reduced-motion:no-preference){
 .ui-upload-card:is(:hover,:focus-within):not(:has(input:disabled)) svg[data-ui-icon="cloud-upload"] > path:is(:first-child,:last-child){animation:ui-icon-export 750ms ease-in-out 1}
}

.ui-disclosure-host{position:relative}
html[data-ui-theme] body .ui-field-disclosure--overlay{position:absolute;z-index:3;pointer-events:none;margin:0}
html[data-ui-theme] body .ui-field-disclosure[data-expanded="true"]{--ui-disclosure-angle:180deg}
html[data-ui-theme] body .ui-field-disclosure[data-disabled="true"]{opacity:.45}
@media(prefers-reduced-motion:no-preference){html[data-ui-theme] body .ui-disclosure-host:has(> :is(input:hover,input:focus-visible,button:hover,button:focus-visible)):not(:has(>input:disabled,>input[readonly],>button:disabled))>.ui-field-disclosure>svg{animation:ui-disclosure-nudge 480ms ease-in-out 1!important}}
@media(prefers-reduced-motion:reduce){html[data-ui-theme] body .ui-disclosure-host>.ui-field-disclosure>svg{animation:none!important}}

html[data-ui-theme] body .ui-field-disclosure[hidden]{display:none!important}
/* A fixed warning glyph with the usual row hit area; no icon motion. */
html[data-ui-theme] body[data-ui-scope="application"] button.ui-guidance-alert[data-ui-action] { background:transparent!important; border-color:transparent!important; box-shadow:none!important; color:var(--ui-danger)!important; transform:none!important; transition:none!important; }
html[data-ui-theme] body[data-ui-scope="application"] .ui-guidance-alert :is(svg,svg *) { animation:none!important; transition:none!important; transform:none!important; }
html[data-ui-theme] body[data-ui-scope="application"] .ui-guidance-alert svg circle { fill:var(--ui-danger); stroke:var(--ui-danger); }
html[data-ui-theme] body[data-ui-scope="application"] .ui-guidance-alert svg :is(path,line) { stroke:#fff; }
/* Attendance warning: white circle, red outline and mark, no square background. */
html[data-ui-theme] body[data-ui-scope="application"] table.maale-list-table tbody [data-attendance-note][data-ui-action] { background:transparent!important; border:0!important; box-shadow:none!important; color:var(--ui-danger)!important; transform:none!important; transition:none!important; }
html[data-ui-theme] body[data-ui-scope="application"] table.maale-list-table tbody [data-attendance-note] :is(svg,svg *) { animation:none!important; transition:none!important; transform:none!important; }
html[data-ui-theme] body[data-ui-scope="application"] table.maale-list-table tbody [data-attendance-note] svg circle { fill:#fff!important; stroke:var(--ui-danger)!important; }
html[data-ui-theme] body[data-ui-scope="application"] table.maale-list-table tbody [data-attendance-note] svg :is(path,line) { fill:none!important; stroke:var(--ui-danger)!important; }
html[data-ui-theme] body[data-ui-scope="application"] table.maale-list-table tbody [data-attendance-note][data-ui-action]:is(:hover,:focus-visible):not(:disabled):not([aria-disabled="true"]) { background:transparent!important; border:0!important; box-shadow:none!important; color:var(--ui-danger)!important; transform:none!important; }

html[data-ui-theme] body[data-ui-scope="application"] table.maale-list-table tbody [data-attendance-note][data-note-expired]{color:var(--ui-text-muted,#8a94a3)!important}
html[data-ui-theme] body[data-ui-scope="application"] table.maale-list-table tbody [data-attendance-note][data-note-expired] svg :is(circle,path,line){stroke:var(--ui-text-muted,#8a94a3)!important}

/* Add actions alone switch from the filled primary state to the approved outline state. */
html[data-ui-theme] body[data-ui-scope="application"] :is(.ui-action-button,.ui-button,.ui-icon-sample,.icon-button,.page-header-action)[data-ui-action-tone="primary"][data-ui-action="new"]:not([data-picker-inline-add]):hover:not(:disabled):not([aria-disabled="true"]){background:var(--ui-icon-hover-bg,#fff)!important;color:var(--ui-primary)!important;border:1px solid var(--ui-primary)!important}
