/* Shared semantic action styles. Loaded after module CSS. */
body[data-interface-theme]{
  --uia-danger:#f07886;
  --uia-danger-text:#ffd9de;
  --uia-danger-bg:color-mix(in srgb,var(--uia-danger) 36%,var(--uis-inset));
  --uia-danger-bg-hover:color-mix(in srgb,var(--uia-danger) 58%,var(--uis-inset));
  --uia-danger-line:color-mix(in srgb,var(--uia-danger) 66%,var(--uis-line));
  --uia-warning:#e5b85d;
  --uia-warning-text:#ffe9b3;
  --uia-success:#67c99d;
  --uia-success-text:#ddffef;
  --uia-control-height:44px;
  --uia-control-radius:11px;
  --uia-control-gap:8px;
  --uia-control-padding:16px;
}

/* Every application button inherits interaction behavior here. Component CSS
   may define placement and dimensions, while this layer owns state and motion. */
body[data-interface-theme] :is(button,.ui-button,[role="button"]){
  font-family:inherit;
  -webkit-tap-highlight-color:transparent;
  transition-duration:var(--motion-duration-fast,150ms);
  transition-timing-function:var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1));
}
body[data-interface-theme] :is(button,.ui-button,[role="button"]):disabled,
body[data-interface-theme] :is(button,.ui-button,[role="button"])[aria-disabled="true"]{cursor:not-allowed;opacity:.5}
body[data-interface-theme] :is(button,.ui-button,[role="button"]):focus-visible{outline:3px solid color-mix(in srgb,var(--uis-accent) 28%,transparent);outline-offset:2px}
body[data-interface-surface="glass"]{
  --uia-danger-bg:color-mix(in srgb,var(--uia-danger) 36%,var(--uig-inset));
  --uia-danger-bg-hover:color-mix(in srgb,var(--uia-danger) 58%,var(--uig-inset));
  --uia-danger-line:color-mix(in srgb,var(--uia-danger) 66%,var(--uig-line));
}
body[data-interface-surface="glass"] :is(:is(button,.ui-button)[data-variant="secondary"],button.is-secondary,.admin-modal-actions>button:not(:last-child):not(.is-danger):not([data-variant])){color:var(--uig-text);border-color:var(--uig-line);background:color-mix(in srgb,var(--uis-accent) 8%,var(--uig-inset))}

.ui-button,
button[data-variant],
button.is-primary,
button.is-secondary,
button.is-danger,
form button[type="submit"],
.admin-modal-actions>button{
  display:inline-flex;
  width:auto;
  min-height:var(--uia-control-height)!important;
  align-items:center;
  justify-content:center;
  gap:var(--uia-control-gap);
  padding:0 var(--uia-control-padding)!important;
  border:1px solid var(--uis-line);
  border-radius:var(--uia-control-radius)!important;
  font:inherit;
  font-size:.72rem;
  font-weight:850;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
}
.ui-button-icon{width:44px!important;min-width:44px!important;padding:0!important}
.ui-button svg,button[data-variant] svg,button.is-primary svg,button.is-secondary svg,button.is-danger svg,form button[type="submit"] svg,.admin-modal-actions>button svg{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

:is(button[data-variant],.ui-button,button.is-primary,button.is-secondary,button.is-danger,form button[type="submit"],.admin-modal-actions>button){transition-property:border-color,background-color,box-shadow,transform;transition-duration:var(--motion-duration-fast,150ms);transition-timing-function:var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1))}
:is(button,.ui-button)[data-variant="primary"],button.is-primary,form button[type="submit"]:not([data-variant]),.admin-modal-actions>button:last-child:not(.is-danger):not([data-variant]){color:var(--uis-head);border-color:var(--uis-accent);background:var(--uis-accent);box-shadow:inset 0 1px color-mix(in srgb,#fff 22%,transparent)}
:is(button,.ui-button)[data-variant="secondary"],button.is-secondary,.admin-modal-actions>button:not(:last-child):not(.is-danger):not([data-variant]){color:var(--uis-text);border-color:var(--uis-line);background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))}
:is(button,.ui-button)[data-variant="ghost"]{color:var(--uis-muted);border-color:var(--uis-line);background:transparent}
:is(button[data-variant],.ui-button,button.is-primary,button.is-secondary,button.is-danger,form button[type="submit"],.admin-modal-actions>button):hover:not(:disabled){border-color:var(--uis-line-strong);transform:translateY(-1px)}
:is(button,.ui-button)[data-variant="primary"]:hover:not(:disabled),button.is-primary:hover:not(:disabled),form button[type="submit"]:not([data-variant]):hover:not(:disabled),.admin-modal-actions>button:last-child:not(.is-danger):not([data-variant]):hover:not(:disabled){background:color-mix(in srgb,var(--uis-accent) 88%,#fff)}
:is(button,.ui-button)[data-variant="secondary"]:hover:not(:disabled),button.is-secondary:hover:not(:disabled),.admin-modal-actions>button:not(:last-child):not(.is-danger):not([data-variant]):hover:not(:disabled){background:var(--uis-accent-soft)}
:is(button,.ui-button)[data-variant="danger"],button.is-danger{
  color:var(--uia-danger-text)!important;
  border-color:var(--uia-danger-line)!important;
  background:var(--uia-danger-bg)!important;
  background-image:none!important;
}
:is(button,.ui-button)[data-variant="danger"]:hover:not(:disabled),button.is-danger:hover:not(:disabled){color:#fff!important;background:var(--uia-danger-bg-hover)!important}
:is(button[data-variant],.ui-button,button.is-primary,button.is-secondary,button.is-danger,form button[type="submit"],.admin-modal-actions>button):disabled{cursor:not-allowed!important;opacity:.5}
:is(button[data-variant],.ui-button,button.is-primary,button.is-secondary,button.is-danger,form button[type="submit"],.admin-modal-actions>button):focus-visible{outline:3px solid color-mix(in srgb,var(--uis-accent) 28%,transparent);outline-offset:2px}
:is(button,.ui-button)[data-variant="danger"]:focus-visible,button.is-danger:focus-visible{outline-color:color-mix(in srgb,var(--uia-danger) 38%,transparent)}
body[data-interface-theme] :is(button,.ui-button)[data-variant="danger"][data-danger-emphasis="clear"]{color:#fff!important;border-color:color-mix(in srgb,var(--uia-danger) 62%,var(--uis-line))!important;background:color-mix(in srgb,var(--uia-danger) 24%,var(--uis-inset))!important}
body[data-interface-theme] :is(button,.ui-button)[data-variant="danger"][data-danger-emphasis="clear"]:hover:not(:disabled){background:color-mix(in srgb,var(--uia-danger) 42%,var(--uis-inset))!important}
body[data-interface-surface="glass"] :is(button,.ui-button)[data-variant="danger"][data-danger-emphasis="clear"]{border-color:color-mix(in srgb,var(--uia-danger) 62%,var(--uig-line))!important;background:color-mix(in srgb,var(--uia-danger) 25%,var(--uig-inset))!important}
body[data-interface-surface="glass"] :is(button,.ui-button)[data-variant="danger"][data-danger-emphasis="clear"]:hover:not(:disabled){background:color-mix(in srgb,var(--uia-danger) 42%,var(--uig-inset))!important}

/* Semantic variants own their palette. Older admin and overlay component rules
   may still define geometry, but must not replace the active interface theme. */
body[data-interface-theme] :is(button,.ui-button)[data-variant="primary"],
body[data-interface-theme] button.is-primary,
body[data-interface-theme] form button[type="submit"]:not([data-variant]):not(.primary-button):not(.is-secondary):not(.is-danger),
body[data-interface-theme] .admin-modal-actions>button:last-child:not(.is-danger):not([data-variant]){
  color:var(--uis-head)!important;
  border-color:var(--uis-accent)!important;
  background:var(--uis-accent)!important;
  background-image:none!important;
}
body[data-interface-theme] :is(button,.ui-button)[data-variant="primary"]:hover:not(:disabled),
body[data-interface-theme] button.is-primary:hover:not(:disabled),
body[data-interface-theme] form button[type="submit"]:not([data-variant]):not(.primary-button):not(.is-secondary):not(.is-danger):hover:not(:disabled),
body[data-interface-theme] .admin-modal-actions>button:last-child:not(.is-danger):not([data-variant]):hover:not(:disabled){
  background:color-mix(in srgb,var(--uis-accent) 88%,#fff)!important;
}
body[data-interface-theme] :is(button,.ui-button)[data-variant="secondary"],
body[data-interface-theme] button.is-secondary,
body[data-interface-theme] .admin-modal-actions>button:not(:last-child):not(.is-danger):not([data-variant]){
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
  background-image:none!important;
}
body[data-interface-theme] :is(button,.ui-button)[data-variant="secondary"]:hover:not(:disabled),
body[data-interface-theme] button.is-secondary:hover:not(:disabled),
body[data-interface-theme] .admin-modal-actions>button:not(:last-child):not(.is-danger):not([data-variant]):hover:not(:disabled){
  background:var(--uis-accent-soft)!important;
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button)[data-variant="secondary"],
body[data-interface-theme][data-interface-surface="glass"] button.is-secondary,
body[data-interface-theme][data-interface-surface="glass"] .admin-modal-actions>button:not(:last-child):not(.is-danger):not([data-variant]){
  color:var(--uig-text)!important;
  border-color:var(--uig-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uig-inset))!important;
}
body[data-interface-theme][data-interface-surface] :is(#adminPortalModal,#adminPortalChildModal)>.admin-modal .admin-modal-icon.is-danger{
  color:var(--uia-danger-text)!important;
  background:var(--uia-danger-bg)!important;
}

/* Odjava je destruktivna navigacijska stavka, ne samostalni akcijski panel.
   Zadržava semantičku danger boju, ali geometriju profilnog izbornika. */
.topbar-profile-menu>button.is-danger{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  width:100%!important;
  min-height:57px!important;
  justify-content:initial!important;
  gap:11px!important;
  padding:7px 9px!important;
  border-color:transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  box-shadow:inset 0 1px color-mix(in srgb,var(--uia-danger) 22%,transparent)!important;
  text-align:left!important;
  white-space:normal!important;
}
.topbar-profile-menu>button.is-danger:hover:not(:disabled),
.topbar-profile-menu>button.is-danger:focus-visible{
  color:var(--uia-danger-text)!important;
  border-color:color-mix(in srgb,var(--uia-danger) 26%,transparent)!important;
  background:color-mix(in srgb,var(--uia-danger) 10%,transparent)!important;
  box-shadow:none!important;
  transform:translateX(2px)!important;
}
.topbar-profile-menu>button.is-danger>svg{
  color:var(--uia-danger)!important;
  stroke:currentColor!important;
  background:color-mix(in srgb,var(--uia-danger) 10%,transparent)!important;
}
.topbar-profile-menu>button.is-danger small{color:var(--uis-muted)!important}
body[data-interface-surface="glass"] .topbar-profile-menu>button.is-danger small{color:var(--uig-muted)!important}
@media(max-width:860px){
  .topbar-profile-menu>button.is-danger{grid-template-columns:42px minmax(0,1fr)!important;min-height:56px!important;padding:7px 9px!important}
}

/* Existing destructive controls that predate data-variant. */
body[data-interface-theme] :is(.admin-user-delete,.schedule-clear-button,[data-plan-remove],[data-reminder-delete],[data-remove-attachment],[data-concert-link-remove]){
  color:var(--uia-danger-text)!important;
  border-color:var(--uia-danger-line)!important;
  background:var(--uia-danger-bg)!important;
  background-image:none!important;
}
body[data-interface-theme] :is(.admin-user-delete,.schedule-clear-button,[data-plan-remove],[data-reminder-delete],[data-remove-attachment],[data-concert-link-remove]):hover:not(:disabled){color:#fff!important;background:var(--uia-danger-bg-hover)!important}

/* Compact legacy hosts keep their layout, while shared variants own theme and semantics. */
body[data-interface-theme] .document-table .card-action[data-variant="secondary"],
body[data-interface-theme] .analytics-export button[data-variant="secondary"]{
  min-height:44px!important;
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
  background-image:none!important;
}
body[data-interface-theme] .document-table .card-action[data-variant="secondary"]:hover:not(:disabled),
body[data-interface-theme] .analytics-export button[data-variant="secondary"]:hover:not(:disabled){
  color:var(--uis-text)!important;
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
}

/* Shared compact secondary action used by Board, Meetings and Documents. */
body[data-interface-theme] .ui-compact-action{
  display:inline-flex;
  width:auto;
  min-height:38px!important;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 12px!important;
  border:1px solid var(--uis-line)!important;
  border-radius:10px!important;
  color:var(--uis-text)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
  background-image:none!important;
  font:inherit;
  font-size:.7rem;
  font-weight:850;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:inset 0 1px color-mix(in srgb,#fff 8%,transparent);
  transition-property:border-color,background-color,box-shadow,transform;
  transition-duration:var(--motion-duration-fast,150ms);
  transition-timing-function:var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1));
}
body[data-interface-theme] .ui-compact-action svg{
  width:16px;
  height:16px;
  flex:0 0 auto;
  color:currentColor!important;
  fill:none;
  stroke:currentColor;
}
body[data-interface-theme] :is(button,a).ui-compact-action:hover:not(:disabled),
body[data-interface-theme] :is(button,a).ui-compact-action:focus-visible,
body[data-interface-theme][data-view="board"] .board-notice-row:hover .ui-compact-action{
  color:var(--uis-text)!important;
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
  box-shadow:0 7px 16px rgba(0,0,0,.12),inset 0 1px color-mix(in srgb,#fff 12%,transparent)!important;
}
body[data-interface-theme] :is(button,a).ui-compact-action:focus-visible{
  outline:3px solid color-mix(in srgb,var(--uis-accent) 28%,transparent);
  outline-offset:2px;
}
body[data-interface-theme][data-interface-surface="glass"] .ui-compact-action{
  color:var(--uig-text)!important;
  border-color:var(--uig-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uig-inset))!important;
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,a).ui-compact-action:hover:not(:disabled),
body[data-interface-theme][data-interface-surface="glass"] :is(button,a).ui-compact-action:focus-visible,
body[data-interface-theme][data-interface-surface="glass"][data-view="board"] .board-notice-row:hover .ui-compact-action{
  color:var(--uig-text)!important;
  border-color:var(--uig-line)!important;
  background:var(--uis-accent-soft)!important;
}
body[data-interface-theme][data-view="board"] .board-notice-row .board-notice-action.ui-compact-action,
body[data-interface-theme][data-interface-surface][data-view] .document-table .card-action.ui-compact-action{
  min-height:38px!important;
  padding:0 12px!important;
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
  background-image:none!important;
}
body[data-interface-theme][data-view="board"] .board-notice-row:hover .board-notice-action.ui-compact-action,
body[data-interface-theme][data-interface-surface][data-view] .document-table .card-action.ui-compact-action:hover{
  color:var(--uis-text)!important;
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
}
body[data-interface-theme][data-interface-surface="glass"][data-view="board"] .board-notice-row .board-notice-action.ui-compact-action,
body[data-interface-theme][data-interface-surface="glass"][data-view] .document-table .card-action.ui-compact-action{
  color:var(--uig-text)!important;
  border-color:var(--uig-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uig-inset))!important;
}
body[data-interface-theme] .analytics-danger button[data-variant="danger"]{
  min-height:44px!important;
  color:var(--uia-danger-text)!important;
  border-color:var(--uia-danger-line)!important;
  background:var(--uia-danger-bg)!important;
  background-image:none!important;
}
body[data-interface-theme] .analytics-danger button[data-variant="danger"]:hover:not(:disabled){
  color:#fff!important;
  border-color:var(--uia-danger-line)!important;
  background:var(--uia-danger-bg-hover)!important;
}

/* Native upload controls in administration follow the same secondary action
   palette instead of carrying the legacy green button into every theme. */
body[data-interface-theme] :is(.admin-file-field,.admin-option-pdf,.admin-question-pdf) input[type="file"]::file-selector-button{
  min-height:38px;
  margin-right:10px;
  padding:0 13px;
  border:1px solid var(--uis-line)!important;
  border-radius:9px;
  color:var(--uis-text)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
  font:inherit;
  font-size:.72rem;
  font-weight:850;
  cursor:pointer;
  transition-property:border-color,background-color;
  transition-duration:var(--motion-duration-fast,150ms);
  transition-timing-function:var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1));
}
body[data-interface-theme] :is(.admin-file-field,.admin-option-pdf,.admin-question-pdf) input[type="file"]::file-selector-button:hover{
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
}
body[data-interface-theme][data-interface-surface="glass"] :is(.admin-file-field,.admin-option-pdf,.admin-question-pdf) input[type="file"]::file-selector-button{
  color:var(--uig-text)!important;
  border-color:var(--uig-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uig-inset))!important;
}
body[data-interface-theme] .admin-csv-import{
  min-height:44px!important;
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
}
body[data-interface-theme] .admin-csv-import:hover{
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
}

/* Glasanje uses the shared animated dropdown structure and active theme. */
body[data-interface-theme] .admin-poll-selector summary{
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
}
body[data-interface-theme] .admin-poll-selector details>.ui-dropdown-panel{
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:var(--uis-panel)!important;
}
body[data-interface-theme] .admin-poll-selector details>.ui-dropdown-panel button{
  color:var(--uis-text)!important;
  background:transparent!important;
}
body[data-interface-theme] .admin-poll-selector details>.ui-dropdown-panel button:hover,
body[data-interface-theme] .admin-poll-selector details>.ui-dropdown-panel button:focus-visible{
  background:var(--uis-accent-soft)!important;
}
body[data-interface-theme] .admin-poll-selector details>.ui-dropdown-panel small{
  color:var(--uis-accent)!important;
}
body[data-interface-surface="glass"] .admin-poll-selector summary{
  color:var(--uig-text)!important;
  border-color:var(--uig-line)!important;
  background:var(--uig-inset)!important;
}
body[data-interface-surface="glass"] .admin-poll-selector details>.ui-dropdown-panel{
  color:var(--uig-text)!important;
  border-color:var(--uig-line)!important;
  background:var(--uig-bg-alt)!important;
}
body[data-interface-theme] .admin-poll-actions>.admin-poll-manage{
  width:min(290px,calc(100vw - 48px));
  min-width:250px;
}
body[data-interface-theme] .admin-poll-manage button[data-action-effect="plain"]{
  width:100%!important;
  min-height:44px!important;
  justify-content:flex-start!important;
  overflow:visible;
  text-align:left;
  white-space:normal!important;
}

/* Inbox header actions are compact utility controls. They must not receive the
   layered effect because legacy Inbox positioning would stretch its surface
   across the entire message panel. */
body[data-interface-theme] .topbar-tools .portal-inbox-actions button[data-variant]{
  position:static!important;
  width:auto!important;
  min-height:31px!important;
  padding:0 8px!important;
  border-radius:8px!important;
  box-shadow:none!important;
  transform:none!important;
}
body[data-interface-theme] .topbar-tools .portal-inbox-actions button[data-variant="secondary"]{
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
}
body[data-interface-theme] .topbar-tools .portal-inbox-actions button[data-variant="danger"]{
  color:var(--uia-danger-text)!important;
  border-color:var(--uia-danger-line)!important;
  background:var(--uia-danger-bg)!important;
}
body[data-interface-theme] .topbar-tools .portal-inbox-actions button[data-variant="secondary"]:hover:not(:disabled){background:var(--uis-accent-soft)!important}
body[data-interface-theme] .topbar-tools .portal-inbox-actions button[data-variant="danger"]:hover:not(:disabled){color:#fff!important;background:var(--uia-danger-bg-hover)!important}

body[data-interface-theme] :is(#adminAddPollQuestion,.admin-add-option)[data-variant="secondary"]{
  width:auto!important;
  min-height:44px!important;
  align-self:start;
  justify-self:start;
  color:var(--uis-text)!important;
  border:1px solid var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
}
body[data-interface-theme] :is(#adminAddPollQuestion,.admin-add-option)[data-variant="secondary"]:hover:not(:disabled){
  color:var(--uis-text)!important;
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
}
body[data-interface-theme] :is(.admin-question-remove,.admin-option-remove,[data-remove-delegation])[data-variant="danger"]{
  width:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
}
.admin-modal:has(#adminPollForm)>.admin-modal-close{display:grid!important}

/* Voting: compact report action and a calmer, structured poll editor. */
body[data-interface-theme][data-view="admin"] #adminPollReport.ui-compact-action{
  min-height:40px!important;
  padding:0 14px!important;
  color:var(--uis-text)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset))!important;
  box-shadow:inset 0 1px color-mix(in srgb,#fff 9%,transparent)!important;
}
body[data-interface-theme][data-view="admin"] #adminPollReport.ui-compact-action:hover{
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
}
body[data-view="admin"] .admin-modal.admin-poll-editor-modal{
  box-sizing:border-box;
  width:min(960px,calc(100vw - 32px))!important;
  max-height:calc(100dvh - 28px);
  padding:30px 34px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
body[data-view="admin"] .admin-poll-editor-modal>.admin-modal-close{
  display:grid!important;
  top:18px!important;
  right:18px!important;
}
body[data-view="admin"] .admin-poll-editor-modal>.admin-modal-icon{
  width:48px;
  height:48px;
  margin-bottom:12px;
  border-radius:14px;
}
body[data-view="admin"] .admin-poll-editor-modal>.admin-modal-kicker{margin-bottom:6px}
body[data-view="admin"] .admin-poll-editor-modal>h3{margin-bottom:22px}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-quorum-notice{
  display:flex;
  align-items:center;
  gap:12px;
  margin:-8px 0 14px;
  padding:11px 14px;
  border:1px solid color-mix(in srgb,var(--uis-accent) 42%,var(--uis-line));
  border-radius:12px;
  color:var(--uis-text);
  background:var(--uis-accent-soft);
}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-quorum-notice[hidden]{display:none!important}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-quorum-notice>svg{width:19px;height:19px;flex:none;color:var(--uis-accent);fill:none;stroke:currentColor}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-quorum-notice>span{display:grid;gap:2px}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-quorum-notice strong{font-size:.72rem}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-quorum-notice small{color:var(--uis-muted);font-size:.63rem;line-height:1.4}
body[data-view="admin"] .admin-poll-editor-modal>.admin-poll-form{
  gap:18px;
  max-height:none!important;
  overflow:visible!important;
  padding:0!important;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-toggles{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-toggles.has-single-setting{grid-template-columns:minmax(0,1fr)}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-setting[hidden]{display:none!important}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-setting{
  min-height:76px;
  padding:13px 15px;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-accent) 6%,var(--uis-inset))!important;
  box-shadow:none;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-setting:has(input:checked){
  border-color:var(--uis-line-strong)!important;
  background:var(--uis-accent-soft)!important;
  box-shadow:inset 3px 0 var(--uis-accent)!important;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-setting>i{justify-self:end;flex:none}
body[data-view="admin"] .admin-poll-editor-modal .admin-setting-copy strong{display:flex;align-items:center;gap:6px}
body[data-view="admin"] .admin-poll-editor-modal .admin-board-help::after{top:calc(100% + 8px);bottom:auto}
body[data-view="admin"] .admin-poll-editor-modal .admin-board-help:focus::after{display:block;opacity:1;transform:translateY(0)}
body[data-view="admin"] .admin-poll-editor-modal .admin-form-grid{gap:14px 16px}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-question{
  margin:2px 0 0;
  padding:22px 18px 18px;
  border-color:var(--uis-line)!important;
  border-radius:15px;
  background:color-mix(in srgb,var(--uis-accent) 4%,var(--uis-inset));
}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-question legend{
  padding:0 9px;
  color:var(--uis-accent);
  font-size:.78rem;
  letter-spacing:.03em;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-question-remove[data-variant="danger"]{
  position:absolute!important;
  z-index:2;
  top:10px!important;
  right:12px!important;
  left:auto!important;
  display:inline-flex;
  width:auto!important;
  min-width:0!important;
  min-height:34px!important;
  gap:6px;
  padding:0 10px!important;
  border-radius:9px!important;
  font-size:.66rem;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-question-remove[hidden]{display:none!important}
body[data-view="admin"] .admin-poll-editor-modal .admin-question-remove svg{width:14px;height:14px}
body[data-view="admin"] .admin-poll-editor-modal .admin-question-pdf{
  gap:8px;
  padding-top:4px;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-question-pdf input[type="file"]{
  min-height:50px;
  padding:6px 8px;
  border-color:var(--uis-line)!important;
  background:var(--uis-inset)!important;
}
body[data-view="admin"] .admin-poll-editor-modal #adminAddPollQuestion{
  justify-self:start;
  min-height:40px!important;
}
body[data-view="admin"] .admin-poll-editor-modal .admin-poll-submit-row{
  margin-top:6px;
  padding-top:18px;
  border-top:1px solid var(--uis-line);
}
@media(max-width:700px){
  body[data-view="admin"] .admin-modal.admin-poll-editor-modal{width:calc(100vw - 16px)!important;padding:24px 16px!important}
  body[data-view="admin"] .admin-poll-editor-modal .admin-poll-toggles,
  body[data-view="admin"] .admin-poll-editor-modal .admin-form-grid{grid-template-columns:1fr}
  body[data-view="admin"] .admin-poll-editor-modal .admin-question-remove span{display:none}
  body[data-view="admin"] .admin-poll-editor-modal .admin-question-remove[data-variant="danger"]{width:34px!important;padding:0!important}
}

/* Tematski pressable gumb: gornja ploha, čvrsta obojena baza i potpuno
   pritiskanje preuzeti su iz dostavljenog uzorka, bez fiksnih boja. */
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]{
  --uia-press-face:var(--uis-accent);
  --uia-press-face-hover:color-mix(in srgb,var(--uis-accent) 88%,#fff);
  --uia-press-edge:color-mix(in srgb,var(--uis-accent) 66%,var(--uis-panel));
  --uia-press-shadow:color-mix(in srgb,var(--uis-accent) 24%,var(--uis-panel));
  --uia-press-text:var(--uis-head);
  position:relative;
  isolation:isolate;
  overflow:visible!important;
  padding:0!important;
  border-color:transparent!important;
  border-radius:11px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  transform-style:preserve-3d;
  transform:none!important;
}
.uia-glass-button-content{
  position:relative;
  z-index:2;
  display:flex;
  flex:1 1 auto;
  align-self:stretch;
  align-items:center;
  justify-content:center;
  gap:inherit;
  min-width:0;
  padding:var(--uia-padding-top,0) var(--uia-padding-right,16px) var(--uia-padding-bottom,0) var(--uia-padding-left,16px);
  overflow:hidden;
  border:2px solid var(--uia-press-edge);
  border-radius:inherit;
  color:var(--uia-press-text)!important;
  background:var(--uia-press-face);
  box-shadow:inset 0 1px color-mix(in srgb,#fff 18%,transparent);
  transform:translateY(0);
  transition:transform 150ms cubic-bezier(0,0,.58,1),background 150ms cubic-bezier(0,0,.58,1),border-color 150ms cubic-bezier(0,0,.58,1);
}
.uia-glass-button-surface{
  position:absolute;
  z-index:1;
  inset:0;
  border:2px solid var(--uia-press-edge);
  border-radius:inherit;
  background:var(--uia-press-edge);
  box-shadow:0 0 0 1px var(--uia-press-edge),0 .42rem 0 0 var(--uia-press-shadow);
  transform:translate3d(0,.5rem,-1rem);
  transition:transform 150ms cubic-bezier(0,0,.58,1),box-shadow 150ms cubic-bezier(0,0,.58,1);
  pointer-events:none;
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="secondary"]{--uia-press-face:color-mix(in srgb,var(--uis-accent) 9%,var(--uis-inset));--uia-press-face-hover:color-mix(in srgb,var(--uis-accent) 15%,var(--uis-inset));--uia-press-edge:color-mix(in srgb,var(--uis-accent) 48%,var(--uis-line));--uia-press-shadow:color-mix(in srgb,var(--uis-accent) 18%,var(--uis-panel));--uia-press-text:var(--uis-text)}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="danger"]{--uia-press-face:var(--uia-danger-bg);--uia-press-face-hover:var(--uia-danger-bg-hover);--uia-press-edge:var(--uia-danger-line);--uia-press-shadow:color-mix(in srgb,var(--uia-danger) 20%,var(--uis-panel));--uia-press-text:var(--uia-danger-text)}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="ghost"]{--uia-press-face:color-mix(in srgb,var(--uis-accent) 5%,var(--uis-inset));--uia-press-face-hover:color-mix(in srgb,var(--uis-accent) 10%,var(--uis-inset));--uia-press-edge:var(--uis-line);--uia-press-shadow:color-mix(in srgb,var(--uis-accent) 11%,var(--uis-panel));--uia-press-text:var(--uis-muted)}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button).uia-glass-button[data-variant="secondary"]{--uia-press-face:color-mix(in srgb,var(--uis-accent) 8%,var(--uig-inset));--uia-press-face-hover:color-mix(in srgb,var(--uis-accent) 14%,var(--uig-inset));--uia-press-shadow:color-mix(in srgb,var(--uis-accent) 18%,var(--uig-bg-alt));--uia-press-text:var(--uig-text)}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button).uia-glass-button[data-variant="ghost"]{--uia-press-face:color-mix(in srgb,var(--uis-accent) 5%,var(--uig-inset));--uia-press-face-hover:color-mix(in srgb,var(--uis-accent) 9%,var(--uig-inset));--uia-press-text:var(--uig-muted)}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:hover:not(:disabled) .uia-glass-button-content{background:var(--uia-press-face-hover);transform:translateY(.2rem)}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:hover:not(:disabled) .uia-glass-button-surface{box-shadow:0 0 0 1px var(--uia-press-edge),0 .3rem 0 0 var(--uia-press-shadow);transform:translate3d(0,.36rem,-1rem)}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:active:not(:disabled) .uia-glass-button-content{
  background:var(--uia-press-shadow);
  transform:translateY(.5rem);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:active:not(:disabled) .uia-glass-button-surface{
  box-shadow:0 0 0 1px var(--uia-press-edge),0 0 0 0 var(--uia-press-shadow);
  transform:translate3d(0,.5rem,-1rem);
}
@media(prefers-reduced-motion:reduce){
  .uia-glass-button-content,.uia-glass-button-surface{transition:none!important}
  body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant] :is(.uia-glass-button-content,.uia-glass-button-surface){transform:none!important}
}

/* Centralna paleta akcija: mirna mint primarna, neutralna sekundarna i crvena
   destruktivna varijanta. Sve standardne akcije nasljeđuju je preko data-variant. */
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]{
  --uia-action-bg:#78d7bd;
  --uia-action-bg-hover:#8ce1c9;
  --uia-action-border:color-mix(in srgb,#78d7bd 72%,var(--uis-line));
  --uia-action-text:#08251e;
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="secondary"]{
  --uia-action-bg:color-mix(in srgb,var(--uis-accent) 7%,var(--uis-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-accent) 13%,var(--uis-inset));
  --uia-action-border:var(--uis-line-strong);
  --uia-action-text:var(--uis-text);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="danger"]{
  --uia-action-bg:color-mix(in srgb,var(--uia-danger) 18%,var(--uis-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uia-danger) 30%,var(--uis-inset));
  --uia-action-border:var(--uia-danger-line);
  --uia-action-text:var(--uia-danger-text);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="ghost"]{
  --uia-action-bg:transparent;
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset));
  --uia-action-border:var(--uis-line);
  --uia-action-text:var(--uis-muted);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="neutral"]{
  --uia-action-bg:color-mix(in srgb,var(--uis-text) 4%,var(--uis-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-text) 9%,var(--uis-inset));
  --uia-action-border:var(--uis-line);
  --uia-action-text:var(--uis-muted);
  box-shadow:inset 0 1px color-mix(in srgb,#fff 10%,transparent)!important;
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button).uia-glass-button[data-variant="secondary"]{
  --uia-action-bg:color-mix(in srgb,var(--uis-accent) 7%,var(--uig-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-accent) 13%,var(--uig-inset));
  --uia-action-border:var(--uig-line);
  --uia-action-text:var(--uig-text);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant] .uia-glass-button-content{
  border:1px solid var(--uia-action-border);
  color:var(--uia-action-text)!important;
  background:var(--uia-action-bg);
  box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent),0 5px 13px rgba(0,0,0,.1);
  transform:none;
  transition:transform 140ms ease,background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease;
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant] .uia-glass-button-surface{display:none}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:hover:not(:disabled) .uia-glass-button-content{
  border-color:color-mix(in srgb,var(--uia-action-border) 76%,#fff);
  background:var(--uia-action-bg-hover);
  box-shadow:inset 0 1px color-mix(in srgb,#fff 20%,transparent),0 7px 17px rgba(0,0,0,.13);
  transform:translateY(-1px);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:active:not(:disabled) .uia-glass-button-content{
  background:var(--uia-action-bg-hover);
  box-shadow:inset 0 1px 3px rgba(0,0,0,.14),0 2px 7px rgba(0,0,0,.1);
  transform:translateY(1px) scale(.99);
}

/* Rad vikendom zadržava kompaktne, prozirne lokalne akcije. */
body[data-interface-theme][data-view="weekend"] .weekend-day>header button[data-weekend-add][data-action-effect="plain"]{
  width:auto!important;
  height:34px!important;
  min-height:34px!important;
  gap:5px!important;
  padding:0 10px!important;
  border-color:color-mix(in srgb,var(--wk-accent) 34%,var(--wk-line))!important;
  border-radius:9px!important;
  color:var(--wk-text)!important;
  background:color-mix(in srgb,var(--wk-accent) 8%,transparent)!important;
  background-image:none!important;
  box-shadow:none!important;
  transform:none!important;
  font-size:.66rem!important;
}
body[data-interface-theme][data-view="weekend"] .weekend-day>header button[data-weekend-add][data-action-effect="plain"]>span{
  color:var(--wk-accent)!important;
  font-size:1rem!important;
}
body[data-interface-theme][data-view="weekend"] .weekend-day>header button[data-weekend-add][data-action-effect="plain"]:hover:not(:disabled),
body[data-interface-theme][data-view="weekend"] .weekend-day>header button[data-weekend-add][data-action-effect="plain"]:focus-visible{
  border-color:color-mix(in srgb,var(--wk-accent) 62%,var(--wk-line))!important;
  background:color-mix(in srgb,var(--wk-accent) 14%,transparent)!important;
  box-shadow:none!important;
  transform:none!important;
}

/* Oznaka autora i inačice je diskretna informacijska kontrola, bez podizanja. */
body[data-interface-theme] .app-meta-trigger[data-action-effect="plain"]{
  width:auto!important;
  min-height:38px!important;
  gap:10px!important;
  padding:6px 8px!important;
  border-color:color-mix(in srgb,var(--uis-line) 68%,transparent)!important;
  border-radius:12px!important;
  color:var(--uis-text)!important;
  background:color-mix(in srgb,var(--uis-inset) 34%,transparent)!important;
  background-image:none!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
  opacity:.76;
  transform:none!important;
}
body[data-interface-theme][data-interface-surface="glass"] .app-meta-trigger[data-action-effect="plain"]{
  color:var(--uig-text)!important;
  border-color:color-mix(in srgb,var(--uig-line) 68%,transparent)!important;
  background:color-mix(in srgb,var(--uig-inset) 34%,transparent)!important;
}
body[data-interface-theme] .app-meta-trigger[data-action-effect="plain"]:hover:not(:disabled),
body[data-interface-theme] .app-meta-trigger[data-action-effect="plain"]:focus-visible{
  border-color:var(--uis-line-strong)!important;
  background:color-mix(in srgb,var(--uis-inset) 50%,transparent)!important;
  box-shadow:none!important;
  opacity:1;
  transform:none!important;
}
body[data-interface-theme][data-interface-surface="glass"] .app-meta-trigger[data-action-effect="plain"]:hover:not(:disabled),
body[data-interface-theme][data-interface-surface="glass"] .app-meta-trigger[data-action-effect="plain"]:focus-visible{
  border-color:var(--uig-line)!important;
  background:color-mix(in srgb,var(--uig-inset) 50%,transparent)!important;
}

/* Login zadrzava glass izgled, uz pokretni svjetleci obrub. */
@property --login-glass-angle{
  syntax:"<angle>";
  initial-value:0deg;
  inherits:false;
}
.login-view .login-form .login-shiny-button[data-action-effect="plain"]{
  --login-glass-light:var(--theme-login-button-bg,#7de1c4);
  --login-glass-fill-start:rgba(255,255,255,.18);
  --login-glass-fill-middle:rgba(105,224,194,.14);
  --login-glass-fill-end:rgba(255,255,255,.055);
  width:100%!important;
  min-height:60px!important;
  padding:0 22px!important;
  border:1px solid rgba(218,255,246,.34)!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,var(--login-glass-fill-start),var(--login-glass-fill-middle) 48%,var(--login-glass-fill-end))!important;
}
.login-view .login-form .login-shiny-button[data-action-effect="plain"]::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:0;
  padding:1px;
  border-radius:inherit;
  background:conic-gradient(from var(--login-glass-angle),transparent 0 9%,color-mix(in srgb,var(--login-glass-light) 74%,transparent) 13%,#f4fffc 17%,var(--login-glass-light) 21%,transparent 26% 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite:exclude;
  opacity:.92;
  animation:loginGlassAngle 3.4s linear infinite;
  pointer-events:none;
}
.login-view .login-form .login-shiny-button[data-action-effect="plain"]>span{
  position:relative;
  z-index:1;
}
.login-view .login-form .login-shiny-button[data-action-effect="plain"]:hover,
.login-view .login-form .login-shiny-button[data-action-effect="plain"]:focus-visible{
  border-color:rgba(180,255,235,.64)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(108,232,199,.18) 48%,rgba(255,255,255,.07))!important;
}
.login-view .login-form .login-shiny-button[data-action-effect="plain"].is-checking{cursor:wait}
.login-view .login-form .login-shiny-button[data-action-effect="plain"].is-checking::after{animation-duration:.9s}
.login-view .login-form .login-shiny-button[data-action-effect="plain"].is-approved{--login-glass-light:#72e3a5;--login-glass-fill-start:rgba(120,239,176,.34);--login-glass-fill-middle:rgba(75,213,139,.2)}
.login-view .login-form .login-shiny-button[data-action-effect="plain"].is-denied{--login-glass-light:#f06c77;--login-glass-fill-start:rgba(232,103,112,.38);--login-glass-fill-middle:rgba(164,45,57,.22);animation:loginDenied .32s ease}
@keyframes loginGlassAngle{to{--login-glass-angle:360deg}}
@media(max-width:760px){
  .login-view .login-form .login-shiny-button[data-action-effect="plain"]{min-height:54px!important}
}
@media(prefers-reduced-motion:reduce){
  .login-view .login-form .login-shiny-button[data-action-effect="plain"]::after{animation:none!important}
}

/* Jednoslojna tematska paleta. Primary prati boju odabrane teme; zelena je
   dostupna samo kroz semanticki success. */
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]{
  --uia-action-bg:var(--uis-accent);
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-accent) 88%,#fff);
  --uia-action-border:color-mix(in srgb,var(--uis-accent) 78%,var(--uis-line));
  --uia-action-text:var(--uis-head);
  isolation:auto;
  overflow:hidden!important;
  padding:var(--uia-padding-top,0) var(--uia-padding-right,16px) var(--uia-padding-bottom,0) var(--uia-padding-left,16px)!important;
  color:var(--uia-action-text)!important;
  border-color:var(--uia-action-border)!important;
  background:var(--uia-action-bg)!important;
  background-image:none!important;
  box-shadow:inset 0 1px color-mix(in srgb,#fff 18%,transparent),0 5px 13px rgba(0,0,0,.1)!important;
  transform:none!important;
  transition:transform 140ms ease,background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease!important;
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="secondary"]{
  --uia-action-bg:color-mix(in srgb,var(--uis-accent) 7%,var(--uis-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-accent) 13%,var(--uis-inset));
  --uia-action-border:var(--uis-line-strong);
  --uia-action-text:var(--uis-text);
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button).uia-glass-button[data-variant="secondary"]{
  --uia-action-bg:color-mix(in srgb,var(--uis-accent) 7%,var(--uig-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-accent) 13%,var(--uig-inset));
  --uia-action-border:var(--uig-line);
  --uia-action-text:var(--uig-text);
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button).uia-glass-button[data-variant="neutral"]{
  --uia-action-bg:color-mix(in srgb,var(--uig-text) 4%,var(--uig-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uig-text) 9%,var(--uig-inset));
  --uia-action-border:var(--uig-line);
  --uia-action-text:var(--uig-muted);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="danger"]{
  --uia-action-bg:var(--uia-danger-bg);
  --uia-action-bg-hover:var(--uia-danger-bg-hover);
  --uia-action-border:var(--uia-danger-line);
  --uia-action-text:var(--uia-danger-text);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="success"]{
  --uia-action-bg:color-mix(in srgb,var(--uia-success) 24%,var(--uis-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uia-success) 38%,var(--uis-inset));
  --uia-action-border:color-mix(in srgb,var(--uia-success) 65%,var(--uis-line));
  --uia-action-text:var(--uia-success-text);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="warning"]{
  --uia-action-bg:color-mix(in srgb,var(--uia-warning) 22%,var(--uis-inset));
  --uia-action-bg-hover:color-mix(in srgb,var(--uia-warning) 35%,var(--uis-inset));
  --uia-action-border:color-mix(in srgb,var(--uia-warning) 62%,var(--uis-line));
  --uia-action-text:var(--uia-warning-text);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant="ghost"]{
  --uia-action-bg:transparent;
  --uia-action-bg-hover:color-mix(in srgb,var(--uis-accent) 8%,var(--uis-inset));
  --uia-action-border:var(--uis-line);
  --uia-action-text:var(--uis-muted);
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:hover:not(:disabled){
  border-color:color-mix(in srgb,var(--uia-action-border) 76%,#fff)!important;
  background:var(--uia-action-bg-hover)!important;
  box-shadow:inset 0 1px color-mix(in srgb,#fff 20%,transparent),0 7px 17px rgba(0,0,0,.13)!important;
  transform:translateY(-1px)!important;
}
body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]:active:not(:disabled){
  background:var(--uia-action-bg-hover)!important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.14),0 2px 7px rgba(0,0,0,.1)!important;
  transform:translateY(1px) scale(.99)!important;
}
@media(prefers-reduced-motion:reduce){
  body[data-interface-theme] :is(button,.ui-button).uia-glass-button[data-variant]{transition:none!important;transform:none!important}
}

/* Izravne semanticke boje vrijede i za kompaktne/plain gumbe koji se ne
   obogacuju klasom uia-glass-button. Namjerno su zadnje u datoteci kako
   komponentni CSS ne bi mogao pretvoriti danger potvrdu u primary. */
body[data-interface-theme] :is(button,.ui-button)[data-variant="neutral"]{
  color:var(--uis-muted)!important;
  border-color:var(--uis-line)!important;
  background:color-mix(in srgb,var(--uis-text) 4%,var(--uis-inset))!important;
  background-image:none!important;
}
body[data-interface-theme] :is(button,.ui-button)[data-variant="success"]{
  color:var(--uia-success-text)!important;
  border-color:color-mix(in srgb,var(--uia-success) 65%,var(--uis-line))!important;
  background:color-mix(in srgb,var(--uia-success) 24%,var(--uis-inset))!important;
  background-image:none!important;
}
body[data-interface-theme] :is(button,.ui-button)[data-variant="warning"]{
  color:var(--uia-warning-text)!important;
  border-color:color-mix(in srgb,var(--uia-warning) 62%,var(--uis-line))!important;
  background:color-mix(in srgb,var(--uia-warning) 22%,var(--uis-inset))!important;
  background-image:none!important;
}
body[data-interface-theme] :is(button,.ui-button)[data-variant="danger"]{
  color:var(--uia-danger-text)!important;
  border-color:var(--uia-danger-line)!important;
  background:var(--uia-danger-bg)!important;
  background-image:none!important;
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button)[data-variant="neutral"]{
  color:var(--uig-muted)!important;
  border-color:var(--uig-line)!important;
  background:color-mix(in srgb,var(--uig-text) 4%,var(--uig-inset))!important;
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button)[data-variant="success"]{
  border-color:color-mix(in srgb,var(--uia-success) 65%,var(--uig-line))!important;
  background:color-mix(in srgb,var(--uia-success) 24%,var(--uig-inset))!important;
}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button)[data-variant="warning"]{
  border-color:color-mix(in srgb,var(--uia-warning) 62%,var(--uig-line))!important;
  background:color-mix(in srgb,var(--uia-warning) 22%,var(--uig-inset))!important;
}
body[data-interface-theme] :is(button,.ui-button)[data-variant="neutral"]:hover:not(:disabled){color:var(--uis-text)!important;background:color-mix(in srgb,var(--uis-text) 9%,var(--uis-inset))!important}
body[data-interface-theme] :is(button,.ui-button)[data-variant="success"]:hover:not(:disabled){background:color-mix(in srgb,var(--uia-success) 38%,var(--uis-inset))!important}
body[data-interface-theme] :is(button,.ui-button)[data-variant="warning"]:hover:not(:disabled){background:color-mix(in srgb,var(--uia-warning) 35%,var(--uis-inset))!important}
body[data-interface-theme] :is(button,.ui-button)[data-variant="danger"]:hover:not(:disabled){color:#fff!important;background:var(--uia-danger-bg-hover)!important}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button)[data-variant="neutral"]:hover:not(:disabled){color:var(--uig-text)!important;background:color-mix(in srgb,var(--uig-text) 9%,var(--uig-inset))!important}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button)[data-variant="success"]:hover:not(:disabled){background:color-mix(in srgb,var(--uia-success) 38%,var(--uig-inset))!important}
body[data-interface-theme][data-interface-surface="glass"] :is(button,.ui-button)[data-variant="warning"]:hover:not(:disabled){background:color-mix(in srgb,var(--uia-warning) 35%,var(--uig-inset))!important}

/* Moja nastava ima dvorijecne statusne akcije, ali vizualno ostaje dio istog
   jednoslojnog sustava gumba. Vanjski badge i stara lijeva traka vise ne
   stvaraju dojam gumba unutar gumba. */
body[data-interface-theme][data-view="my-teaching"] .my-teaching-toolbar-actions.my-teaching-toolbar-badge.my-teaching-schedule-save-slot{
  gap:8px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant]{
  min-height:56px!important;
  padding:7px 15px!important;
  color:var(--uia-action-text)!important;
  border:1px solid var(--uia-action-border)!important;
  background:var(--uia-action-bg)!important;
  background-image:none!important;
  box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent),0 5px 13px rgba(0,0,0,.1)!important;
  filter:none!important;
}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant]::before{display:none!important;content:none!important}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant]>span{display:grid;min-width:0;gap:2px;text-align:left}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant] :is(small,b){max-width:170px;overflow:hidden;color:currentColor!important;text-overflow:ellipsis;white-space:nowrap}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant] small{opacity:.78!important}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant] svg{color:currentColor!important;stroke:currentColor!important}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.teaching-plan-save-button.uia-glass-button>svg{color:#07110f!important;stroke:#07110f!important}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant]:hover:not(:disabled){color:var(--uia-action-text)!important;border-color:color-mix(in srgb,var(--uia-action-border) 76%,#fff)!important;background:var(--uia-action-bg-hover)!important;filter:none!important}
body[data-interface-theme][data-view="my-teaching"] .my-teaching-schedule-save-slot>button.uia-glass-button[data-variant]:disabled{opacity:.7!important;filter:none!important;box-shadow:inset 0 1px color-mix(in srgb,#fff 10%,transparent)!important;transform:none!important}
