/* UzQuiz 4.4.2 Icon System R3: coherent stroke icons, both themes. */
.uq-icon-svg {
  width: 1.125em;
  height: 1.125em;
  display: inline-block;
  vertical-align: -.17em;
  flex: 0 0 auto;
  color: inherit;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  overflow: visible;
}
.uq-icon-ready { line-height: 1; }
:is(.stat-icon,.demo-stat-icon,.feature-icon,.step-icon,.contact-icon,.admin-kpi-icon,.archive-hero-icon,.archive-card-icon,.editor-import-icon,.file-drop-icon,.quiz-welcome-icon,.results-tab-icon,.admin-shield,.admin-confirm-icon) > .uq-icon-svg {
  width: 51%; height: 51%; min-width: 18px; min-height: 18px;
}
:is(.stat-icon,.demo-stat-icon,.feature-icon,.step-icon,.contact-icon,.admin-kpi-icon,.results-tab-icon,.admin-nav-item > span,.archive-card-icon) > .uq-icon-svg { transition: color .2s, transform .2s; }
:is(.feature-card,.step-card,.stat-card,.admin-kpi,.contact-card):hover .uq-icon-svg { transform: translateY(-1px); }
.trust-icon > .uq-icon-svg, .button-icon > .uq-icon-svg { width: 1.06em; height: 1.06em; }
:is(.demo-check,.answer-accepted-icon,.admin-shield) > .uq-icon-svg { width: 62%; height: 62%; }
:is(.live-pulse-icon,.quiz-welcome-icon) > .uq-icon-svg { width: 40%; height: 40%; }
.live-pulse-icon > span { pointer-events:none; }
:is(.btn,.back-link,.meta-pill,.admin-page-btn,.auth-feature-row > span).uq-with-icon { display:inline-flex; align-items:center; gap:.43em; }
.btn .uq-icon-svg,.back-link .uq-icon-svg,.meta-pill .uq-icon-svg,.auth-feature-row .uq-icon-svg { width:1.06em; height:1.06em; }
.btn > .uq-icon-suffix { margin-left:.08em; }
.theme-toggle.uq-theme-icon { display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.theme-toggle > .uq-icon-svg { width:18px; height:18px; flex-shrink:0; }
.admin-nav-item > span > .uq-icon-svg { width:18px; height:18px; }
.admin-search > span > .uq-icon-svg,.archive-search > span > .uq-icon-svg { width:17px; height:17px; }
.archive-card-metrics > div > span .uq-icon-svg { width:17px; height:17px; }
.empty-state > .icon > .uq-icon-svg { width:38px; height:38px; }
.empty-participants > span > .uq-icon-svg { width:30px; height:30px; }
.editor-checklist .uq-icon-svg,.editor-save-note .uq-icon-svg { width:16px; height:16px; }
/* Explicit contrast only on upgraded icon elements; preserve original 13px text overrides. */
html[data-theme="light"] :is(.stat-icon,.demo-stat-icon,.feature-icon,.step-icon,.contact-icon,.admin-kpi-icon,.archive-card-icon,.archive-hero-icon,.results-tab-icon,.file-drop-icon,.editor-import-icon,.quiz-welcome-icon).uq-icon-ready { color: #2141A2; }
html[data-theme="light"] .uq-icon-ready.purple,
html[data-theme="light"] .uq-icon-ready.violet { color: #9440BB !important; }
html[data-theme="light"] .uq-icon-ready.blue { color: #174DAD !important; }
html[data-theme="light"] .uq-icon-ready.teal { color: #087C84 !important; }
html[data-theme="light"] .uq-icon-ready.green { color: #187B4C !important; }
html[data-theme="light"] .uq-icon-ready.amber { color: #966313 !important; }
html[data-theme="light"] .admin-nav-item.active > span .uq-icon-svg { color: #fff; }
html[data-theme="dark"] :is(.stat-icon,.demo-stat-icon,.feature-icon,.step-icon,.contact-icon,.admin-kpi-icon,.archive-card-icon,.archive-hero-icon,.results-tab-icon,.file-drop-icon,.editor-import-icon,.quiz-welcome-icon).uq-icon-ready { color: #B4CBFF; }
html[data-theme="dark"] .uq-icon-ready.purple,
html[data-theme="dark"] .uq-icon-ready.violet { color: #C5A6FF !important; }
html[data-theme="dark"] .uq-icon-ready.blue { color: #80BFFF !important; }
html[data-theme="dark"] .uq-icon-ready.teal { color: #72E7DF !important; }
html[data-theme="dark"] .uq-icon-ready.green { color: #84E6B1 !important; }
html[data-theme="dark"] .uq-icon-ready.amber { color: #FFD17D !important; }
html[data-theme="dark"] .admin-nav-item.active > span .uq-icon-svg { color: #fff; }
/* Keep interactive buttons' inherited foreground, e.g. a white icon on a primary button. */
html[data-theme] :is(.btn,.btn-live,.theme-toggle,.back-link) > .uq-icon-svg { color: currentColor; }
@media (prefers-reduced-motion: reduce) { .uq-icon-svg { transition: none !important; } }

/* Contextual hero icons keep their own roles in both themes. */
html[data-theme="light"] .trust-icon.shield-icon {color:#187B4C;}
html[data-theme="light"] .trust-icon.lightning-icon {color:#966313;}
html[data-theme="light"] .trust-icon.chart-icon {color:#174DAD;}
html[data-theme="dark"] .trust-icon.shield-icon {color:#84E6B1;}
html[data-theme="dark"] .trust-icon.lightning-icon {color:#FFD17D;}
html[data-theme="dark"] .trust-icon.chart-icon {color:#80BFFF;}
