/* The hit target participates in layout; its 24px surface never overlaps neighbours. */
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    flex: none;
    inline-size: var(--zds-icon-hit);
    block-size: var(--zds-icon-hit);
    min-inline-size: var(--zds-icon-hit);
    min-block-size: var(--zds-icon-hit);
    max-inline-size: none;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--zds-close-color);
    box-shadow: none;
    outline: none;
    transform: none;
    filter: none;
    transition: none;
    cursor: pointer;
    text-decoration: none;
    line-height: 1;
}
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action]::before {
    content: "";
    position: absolute;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    inline-size: var(--zds-icon-surface);
    block-size: var(--zds-icon-surface);
    border-radius: 5px;
    background: var(--zds-icon-surface-bg, transparent);
    pointer-events: none;
}
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action] svg {
    inline-size: var(--zds-glyph-size);
    block-size: var(--zds-glyph-size);
    flex: none;
    position: relative;
    z-index: 1;
    stroke-width: var(--zds-icon-stroke);
    pointer-events: none;
}
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action]:not(:disabled):not([aria-disabled="true"]):is(:hover,[data-preview-state="hover"])::before { background: color-mix(in srgb, currentColor 8%, var(--zds-icon-surface-bg, transparent)); }
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action]:not(:disabled):not([aria-disabled="true"]):is(:active,[data-preview-state="active"])::before { background: color-mix(in srgb, currentColor 14%, var(--zds-icon-surface-bg, transparent)); }
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action]:is(:disabled,[aria-disabled="true"]) { opacity: .45; cursor: default; }
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action]:is(:focus,:focus-visible) { outline: none; box-shadow: none; }

/* Preserve the owners' anchoring and visibility contracts. */
[data-zevs-ui] :is(.zphoto-x,.toast .x,.q-close).ui-icon-action.zds-icon-action[data-zds-action] { position: absolute; }
[data-zevs-ui] .zphoto-x.ui-icon-action.zds-icon-action[data-zds-action] { --zds-icon-surface-bg: var(--zds-surface); }
[data-zevs-ui] .rpt-form-page .rpt-close.ui-icon-action.zds-icon-action[data-zds-action] { display: none; }
@media (min-width: 701px) {
    [data-zevs-ui] .cs-mobile-close.ui-icon-action.zds-icon-action[data-zds-action] { display: none; }
}

:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action="delete"] { color: var(--zds-delete-color); }
:is([data-zevs-ui].ui-icon-action, [data-zevs-ui] .ui-icon-action).zds-icon-action[data-zds-action="delete"] svg { stroke-width: var(--zds-delete-stroke); }
/* Reserve the real hit area in the existing course grid. */
[data-zevs-ui] [data-course-editor] .ce-outcome-signs li { grid-template-columns: minmax(0,1fr) var(--zds-icon-hit); }
[data-zevs-ui] [data-course-editor] .ce-criterion { grid-template-columns: minmax(0,1fr) var(--zds-icon-hit); }
[data-zevs-ui] [data-course-editor] .ce-question .ce-answer-key { grid-template-columns: 22px minmax(0,1fr) var(--zds-icon-hit); }

/* Header/disclosure/reorder owners keep their actual SVG, children and state transforms. */
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="icon"][data-zds-component="icon-action"] { box-sizing:border-box; align-items:center; justify-content:center; flex:none; inline-size:var(--zds-action-height); block-size:var(--zds-action-height); min-inline-size:var(--zds-action-height); min-block-size:var(--zds-action-height); padding:0; border:0; background:transparent; box-shadow:none; outline:none; color:var(--zds-muted); font-size:var(--zds-glyph-size); line-height:1; }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface) :is(svg,.icon) { inline-size:var(--zds-glyph-size); block-size:var(--zds-glyph-size); flex:none; }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-component="icon-action"][data-zds-icon-profile]:is(:focus,:focus-visible) { outline:none; box-shadow:none; }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="compound"] { min-block-size:var(--zds-action-height); font-size:var(--zds-font-size); }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface).side-toggle { padding-block:6px; }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[hidden] { display:none; }
@media(max-width:760px) {
 :is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="rail"] { min-block-size:var(--zds-action-height); padding-block:6px; }
}


:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="floating"][data-zds-component="icon-action"] { inline-size:var(--zds-action-height); block-size:var(--zds-action-height); min-inline-size:var(--zds-action-height); min-block-size:var(--zds-action-height); padding:0; border:0; background:transparent; box-shadow:none; }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="floating"]::before { box-sizing:border-box; content:""; position:absolute; inset-block-start:50%; inset-inline-start:50%; transform:translate(-50%,-50%); inline-size:var(--zds-icon-surface); block-size:var(--zds-icon-surface); border-radius:50%; background:var(--card-bg); border:1px solid var(--card-border); z-index:-1; }

/* Paint the 24px content surface inside the 36px hit box without positioning a pseudo-element. */
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="icon"][data-zds-component="icon-action"] { padding:calc((var(--zds-action-height) - var(--zds-icon-surface))/2); border-radius:calc(5px + (var(--zds-action-height) - var(--zds-icon-surface))/2); background-clip:content-box; }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="icon"][data-zds-component="icon-action"]:not(:disabled):not([aria-disabled="true"]):hover { background-color:color-mix(in srgb,currentColor 8%,transparent); }
:is([data-zevs-ui].zds-icon-surface,[data-zevs-ui] .zds-icon-surface)[data-zds-icon-profile="icon"][data-zds-component="icon-action"]:not(:disabled):not([aria-disabled="true"]):active { background-color:color-mix(in srgb,currentColor 14%,transparent); }
