/* The existing Viora header's Wasim mark, isolated to this prototype.
   Geometry, 30-degree tilt, and light/dark brand colors match WasimMark.svelte
   and src/lib/styles/{base,tokens}.css. Only the host's size is configurable. */
:is([data-wasim-mark], .wasim-word) {
  --wasim-blue: #06B6D4;
  --wasim-purple: #8B5CF6;
}
:root[data-theme='dark'] :is([data-wasim-mark], .wasim-word) {
  --wasim-blue: #0284C7;
}
[data-wasim-mark] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  line-height: 0;
}
[data-wasim-mark] > .wasim-logo {
  display: block;
  flex: 0 0 auto;
  width: var(--wasim-mark-size, calc(1.3em + 2px));
  height: auto;
  overflow: visible;
  transform: rotate(30deg);
  transform-origin: center;
}
[data-wasim-mark]:lang(en) > .wasim-logo {
  transform: translateY(-.15em) rotate(30deg);
}
:is([data-wasim-mark], [data-wasim-word]) .wasim-logo-base { fill: var(--wasim-blue); }
:is([data-wasim-mark], [data-wasim-word]) .wasim-logo-blue { stop-color: var(--wasim-blue); }
:is([data-wasim-mark], [data-wasim-word]) .wasim-logo-purple { stop-color: var(--wasim-purple); }
.wasim-word { color: var(--wasim-blue); }

/* Real SVG glyph masks, painted by the logo's shared JavaScript flow engine.
   HTML text remains selectable and supplies the sole accessible name. */
[data-wasim-word] { position: relative; }
[data-wasim-word].wasim-word-painted { color: transparent !important; }
[data-wasim-word] > .wasim-word-art {
  position: absolute;
  display: block;
  max-width: none;
  overflow: visible;
  visibility: hidden;
  pointer-events: none;
  user-select: none;
}
[data-wasim-word].wasim-word-painted > .wasim-word-art { visibility: visible; }
[data-wasim-word] > .wasim-word-baseline {
  display: inline-block;
  width: 0;
  height: 0;
  padding: 0;
  margin: 0;
  border: 0;
  vertical-align: baseline;
  pointer-events: none;
}
@media (forced-colors: active) {
  [data-wasim-word].wasim-word-painted { color: CanvasText !important; }
  [data-wasim-word] > .wasim-word-art { display: none; }
}
