/* Layered important control visuals outrank legacy unlayered important rules without ID specificity wars. */
@layer avera-controls {
/* AVERA UI Control v1 (rev195). Single visual owner for opted-in Close/Back.
   Reference: tactile administrative sign-in X (surface, radius ratio, shadow).
   Controllers own the actions; the page/frame owns positioning. */
:root{
 --av-uic-size:42px;
 --av-uic-radius:14px;
 --av-uic-icon-size:18px;
 --av-uic-surface:var(--av-control-bg);
 --av-uic-ink:var(--av-text-primary);
 --av-uic-shadow:var(--av-shadow-control);
 --av-uic-hover:var(--av-focus-action);
 --av-uic-pressed:var(--av-shadow-pressed);
 --av-uic-focus:var(--av-selected-ink);
}
html[data-theme="dark"]{
 --av-uic-surface:var(--av-control-bg);
 --av-uic-ink:var(--av-text-primary);
 --av-uic-shadow:var(--av-shadow-control);
 --av-uic-hover:var(--av-focus-action);
 --av-uic-pressed:var(--av-shadow-pressed);
 --av-uic-focus:var(--av-selected-ink);
}
/* This is opt-in. Legacy Close/Back controls retain their existing styling. */
html body button.av-ui-control[data-av-control]{
 box-sizing:border-box;display:grid;place-items:center;position:relative;
 width:var(--av-uic-size)!important;height:var(--av-uic-size)!important;
 min-width:var(--av-uic-size)!important;min-height:var(--av-uic-size)!important;max-width:var(--av-uic-size)!important;max-height:var(--av-uic-size)!important;
 flex:0 0 var(--av-uic-size)!important;margin:0!important;padding:0!important;
 border:0!important;border-radius:var(--av-uic-radius)!important;
 background:var(--av-control-bg)!important;background-image:var(--av-control-bg)!important;
 color:var(--av-text-primary)!important;box-shadow:var(--av-shadow-control)!important;
 cursor:pointer;isolation:isolate;touch-action:manipulation;
 font:normal 0/1 var(--av-font-sans,system-ui)!important;
 text-decoration:none;
 transition:background-color .16s var(--av-ease-standard,ease),color .16s var(--av-ease-standard,ease),box-shadow .16s var(--av-ease-standard,ease),transform .16s var(--av-ease-standard,ease);
}
html body button.av-ui-control[data-av-control]::before,
html body button.av-ui-control[data-av-control]::after{content:none!important;display:none!important}
html body button.av-ui-control[data-av-control]>svg{
 display:block!important;position:static!important;opacity:1!important;
 width:var(--av-uic-icon-size)!important;height:var(--av-uic-icon-size)!important;
 min-width:var(--av-uic-icon-size)!important;min-height:var(--av-uic-icon-size)!important;
 margin:0!important;padding:0!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;
 stroke-linecap:round;stroke-linejoin:round;transform:none!important;pointer-events:none;
}
@media(hover:hover) and (pointer:fine){
 html body button.av-ui-control[data-av-control]:not(:disabled):hover{background:var(--av-uic-hover)!important;color:var(--av-uic-focus)!important}
}
html body button.av-ui-control[data-av-control]:not(:disabled):active{transform:translateY(1px)!important;box-shadow:var(--av-uic-pressed)!important}
html body button.av-ui-control[data-av-control]:focus-visible{outline:none!important;background:var(--av-focus-action)!important;outline-offset:3px!important;background:var(--av-focus-action);}
html body button.av-ui-control[data-av-control]:disabled{opacity:.55!important;cursor:not-allowed!important}
@media(prefers-reduced-motion:reduce){
 html body button.av-ui-control[data-av-control]{transition:none!important;transform:none!important}
 html body button.av-ui-control[data-av-control]:active{transform:none!important}
}
/* Header ownership: actions stay in their original DOM handlers and slots. */
#pakTeacherPanel .pak-t-head-standard{grid-template-columns:minmax(0,1fr) var(--av-uic-size)!important}
#pakTeacherPanel .pak-t-head-standard>.pak-t-x[data-av-control="close"]{grid-column:2;grid-row:1;justify-self:end;align-self:start}
#aboutOverlay #aboutClose[data-av-control="close"],
#averaLikeSheet #averaLikeClose[data-av-control="close"]{justify-self:end}
#averaAccounts header button[data-av-control="close"]{margin-left:auto}
#helpOverlay .help-back[data-av-control="back"][hidden]{display:none}

/* rev196: layout-slot adapters only. The geometry and visual states above remain the single owner. */
#entityOverlay #entityClose[data-av-control="close"],
#feedbackOverlay #feedbackClose[data-av-control="close"],
#teacherScheduleOverlay .teacher-schedule-close[data-av-control="close"]{
 position:absolute!important;top:12px!important;right:12px!important;left:auto!important;z-index:90!important;
}
#themeOverlay #themeOverlayClose[data-av-control="close"]{order:2!important;margin-left:auto!important}
#installOverlay #installClose[data-av-control="back"]{order:-1!important;margin-right:auto!important;margin-left:0!important}
#helpOverlay .help-head [data-help="close"][data-av-control="close"]{margin-left:auto!important}
#noticeCenterOverlay .notice-center-close[data-av-control="close"]{margin-left:auto!important}
#avkPanel .avk-head button[data-avk-nav="back"][data-av-control="back"]{justify-self:start}
#avkPanel .avk-head button[data-avk-nav="close"][data-av-control="close"]{justify-self:end}
#avera-release-dialog .avr-close[data-av-control="close"]{position:absolute!important;left:auto!important;z-index:3}
#pakCuratorScheduleOverlay .pak-curator-close[data-av-control="close"]{margin-left:auto!important}
/* Modal button visual properties cannot acquire a duplicate pseudo-X from legacy styles. */
html body button.av-ui-control[data-av-control]::before,
html body button.av-ui-control[data-av-control]::after{content:none!important;display:none!important}
/* Dynamic legacy layers may set one-off visual state via very specific selectors. */
html body button.av-ui-control[data-av-control]>svg.av-ui-icon{opacity:1!important;visibility:visible!important;display:block!important}

}
