/* latin-ext */
@font-face {
  font-family: 'DM Serif Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(./fonts/dm-serif-display-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Serif Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(./fonts/dm-serif-display-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Lyra UI 0.1 — public design tokens. Override semantic tokens, not component internals. */
.lyra {
  color-scheme: dark;
  --lyra-font: "Segoe UI Variable", "Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif;
  --lyra-font-editorial: "DM Serif Display", Georgia, "Times New Roman", serif;
  --lyra-mono: "SFMono-Regular", Consolas, monospace;
  --lyra-bg: #121116;
  --lyra-surface: #1d1b22;
  --lyra-raised: #28252f;
  --lyra-text: #faf7fc;
  --lyra-muted: #b7afc0;
  --lyra-border: #47404f;
  --lyra-hover: #ffffff0c;
  --lyra-accent: #f044a7;
  --lyra-on-accent: #180a12;
  --lyra-focus: #ffd3ed;
  --lyra-selection: #f044a727;
  --lyra-danger: #ff979d;
  --lyra-success: #75d9bb;
  --lyra-warning: #f5c45c;
  --lyra-tile-pink: #b80065;
  --lyra-tile-teal: #007477;
  --lyra-tile-blue: #1858aa;
  --lyra-tile-orange: #a83c16;
  --lyra-tile-purple: #6242a5;
  --lyra-tile-green: #337118;
  --lyra-radius: 2px;
  --lyra-space-1: 4px;
  --lyra-space-2: 8px;
  --lyra-space-3: 12px;
  --lyra-space-4: 16px;
  --lyra-space-6: 24px;
  --lyra-space-8: 32px;
  --lyra-space-12: 48px;
  --lyra-control: 42px;
  --lyra-row: 46px;
  --lyra-type-display: clamp(40px, 5vw, 72px);
  --lyra-type-title: 32px;
  --lyra-type-body: 14px;
  --lyra-motion-fast: 140ms;
  --lyra-motion: 240ms;
  --lyra-shadow: 0 12px 44px #0005;
  --lyra-glass: #1d1b22eb;
  --lyra-blur: 12px;
  font-family: var(--lyra-font);
  font-size: var(--lyra-type-body);
  line-height: 1.5;
  background: var(--lyra-bg);
  color: var(--lyra-text);
  accent-color: var(--lyra-accent);
}
.lyra[data-theme="light"] {
  color-scheme: light;
  --lyra-bg: #faf9fb;
  --lyra-surface: #f0edf3;
  --lyra-raised: #ffffff;
  --lyra-text: #211b27;
  --lyra-muted: #645c6e;
  --lyra-border: #c9c1d0;
  --lyra-hover: #24123208;
  --lyra-accent: #a80061;
  --lyra-on-accent: #ffffff;
  --lyra-focus: #710644;
  --lyra-selection: #a8006114;
  --lyra-danger: #b21c36;
  --lyra-success: #146a4c;
  --lyra-warning: #805500;
  --lyra-glass: #fffffff0;
  --lyra-shadow: 0 12px 44px #28113418;
}
.lyra[data-density="compact"] { --lyra-control: 32px; --lyra-row: 34px; --lyra-type-body: 13px; }
.lyra[data-density="touch"] { --lyra-control: 48px; --lyra-row: 56px; --lyra-type-body: 16px; }
.lyra[data-accent="teal"] { --lyra-accent: #67ded5; --lyra-on-accent: #032f2c; --lyra-selection: #67ded521; --lyra-focus: #b4fff8; }
.lyra[data-accent="blue"] { --lyra-accent: #7eb9ff; --lyra-on-accent: #0a2341; --lyra-selection: #7eb9ff21; --lyra-focus: #c5e0ff; }
.lyra[data-accent="orange"] { --lyra-accent: #ffb06e; --lyra-on-accent: #3b1c04; --lyra-selection: #ffb06e21; --lyra-focus: #ffe2c5; }
.lyra[data-theme="light"][data-accent="teal"] { --lyra-accent: #006a65; --lyra-on-accent: #fff; --lyra-focus: #004b47; }
.lyra[data-theme="light"][data-accent="blue"] { --lyra-accent: #1759a6; --lyra-on-accent: #fff; --lyra-focus: #103f79; }
.lyra[data-theme="light"][data-accent="orange"] { --lyra-accent: #995016; --lyra-on-accent: #fff; --lyra-focus: #633006; }
@media (prefers-reduced-motion: reduce) { .lyra { --lyra-motion-fast: 0ms; --lyra-motion: 0ms; } }
@media (prefers-reduced-transparency: reduce) { .lyra { --lyra-glass: var(--lyra-surface); --lyra-blur: 0px; } }
/* Catie's signature palettes: Zune dusk and Kin lime. */
.lyra { --lyra-zune-orange:#fa8610; --lyra-zune-coral:#f23d50; --lyra-zune-pink:#ec008c; --lyra-kin-lime:#c3d92e; --lyra-brand-gradient:linear-gradient(28deg,var(--lyra-zune-orange),var(--lyra-zune-coral) 48%,var(--lyra-zune-pink)); }
.lyra[data-accent="zune"] { --lyra-accent:#ff62b9; --lyra-on-accent:#2e061c; --lyra-selection:#ed008c22; --lyra-focus:#ffd6eb; }
.lyra[data-accent="kin"] { --lyra-accent:var(--lyra-kin-lime); --lyra-on-accent:#1c2300; --lyra-selection:#c3d92e22; --lyra-focus:#edffa0; --lyra-brand-gradient:linear-gradient(28deg,#839414,#c3d92e 60%,#e0ed62); }
.lyra[data-theme="light"][data-accent="zune"] { --lyra-accent:#a80061; --lyra-on-accent:#fff; --lyra-focus:#710644; }
.lyra[data-theme="light"][data-accent="kin"] { --lyra-accent:#506000; --lyra-on-accent:#fff; --lyra-focus:#364200; --lyra-selection:#92ad1b22; }
/* CodeSpace-derived utility geometry and neutral depth; content palettes remain independent. */
.lyra {
  --lyra-bg: #0d0d0f;
  --lyra-surface: #19191e;
  --lyra-raised: #25252b;
  --lyra-border: #ffffff22;
  --lyra-muted: #aaaab7;
  --lyra-radius: 9px;
  --lyra-radius-sm: 7px;
  --lyra-radius-panel: 16px;
  --lyra-control-border: #65616f;
  --lyra-surface-gradient: linear-gradient(135deg,#26262ce6,#17171df2 70%);
  --lyra-inset-highlight: inset 0 1px #ffffff09;
  --lyra-panel-shadow: 0 18px 55px #0004;
  --lyra-glass: #202027ed;
  --lyra-action-start: var(--lyra-accent);
  --lyra-action-end: color-mix(in srgb,var(--lyra-accent),white 14%);
  --lyra-control-gradient: linear-gradient(105deg,var(--lyra-action-start),var(--lyra-action-end));
  --lyra-track-gradient: var(--lyra-brand-gradient);
}
.lyra[data-theme="light"] {
  --lyra-bg: #faf9fb;
  --lyra-surface: #f0eef3;
  --lyra-raised: #fff;
  --lyra-border: #28213326;
  --lyra-muted: #645c6e;
  --lyra-control-border: #938997;
  --lyra-surface-gradient: linear-gradient(135deg,#fff,#f4f2f7 70%);
  --lyra-inset-highlight: inset 0 1px #fff;
  --lyra-panel-shadow: 0 14px 44px #24122c14;
  --lyra-glass: #fffffff0;
  --lyra-action-end: var(--lyra-accent);
}
.lyra[data-accent="zune"] { --lyra-action-start:#ffb05e; --lyra-action-end:#ff65b5; }
.lyra[data-theme="light"][data-accent="zune"] { --lyra-action-start:#a84405; --lyra-action-end:#a80061; }
.lyra[data-accent="kin"] { --lyra-action-start:#d3e550; --lyra-action-end:#aec822; }
.lyra[data-theme="light"][data-accent="kin"] { --lyra-action-start:#546606; --lyra-action-end:#485c00; }
.lyra[data-accent="codespace"] {
  --lyra-accent:#b4baff; --lyra-on-accent:#fff; --lyra-focus:#c3ceff;
  --lyra-selection:#9395ea1d; --lyra-action-start:#3f69c3; --lyra-action-end:#7158c8;
  --lyra-brand-gradient:linear-gradient(105deg,#5289f5,#796beb);
  --lyra-track-gradient:linear-gradient(90deg,#6479ff,#7763eb 48%,#a252dc);
}
.lyra[data-theme="light"][data-accent="codespace"] { --lyra-accent:#5143a5; --lyra-focus:#3d337c; }

/* Text gradients follow the palette; light variants deepen color for legibility. */
.lyra { --lyra-brand-text-gradient:var(--lyra-brand-gradient); }
.lyra[data-theme="light"] { --lyra-brand-text-gradient:linear-gradient(28deg,#a75000,#c22347 48%,#a80061); }
.lyra[data-theme="light"][data-accent="kin"] { --lyra-brand-text-gradient:linear-gradient(28deg,#455400,#617500); }
.lyra[data-theme="light"][data-accent="codespace"] { --lyra-brand-text-gradient:linear-gradient(105deg,#355ca9,#6742ab); }
.lyra[data-accent="pink"] { --lyra-brand-text-gradient:linear-gradient(28deg,#ff62b9,#ee77aa); }
.lyra[data-theme="light"][data-accent="pink"] { --lyra-brand-text-gradient:linear-gradient(28deg,#aa005f,#912367); }
.lyra[data-accent="teal"] { --lyra-brand-text-gradient:linear-gradient(28deg,#67ded5,#35b6a7); }
.lyra[data-theme="light"][data-accent="teal"] { --lyra-brand-text-gradient:linear-gradient(28deg,#006a65,#004f6a); }
.lyra[data-accent="blue"] { --lyra-brand-text-gradient:linear-gradient(28deg,#7eb9ff,#8f9fff); }
.lyra[data-theme="light"][data-accent="blue"] { --lyra-brand-text-gradient:linear-gradient(28deg,#1759a6,#403da2); }
.lyra[data-accent="orange"] { --lyra-brand-text-gradient:linear-gradient(28deg,#ffc172,#ff966d); }
.lyra[data-theme="light"][data-accent="orange"] { --lyra-brand-text-gradient:linear-gradient(28deg,#995016,#b43b16); }

.lyra *, .lyra *::before, .lyra *::after { box-sizing: border-box; }
.lyra [hidden] { display: none !important; }
.lyra :is(button,input,textarea,select) { font: inherit; }
.lyra :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible { outline: 2px solid var(--lyra-focus); outline-offset: 3px; }
.lyra button { cursor: pointer; }
.lyra button:disabled { opacity: .45; cursor: not-allowed; }
.lyra a { color: var(--lyra-accent); text-underline-offset: 4px; }
.lyra h1,.lyra h2,.lyra h3,.lyra p { margin-block: 0 16px; }
.lyra h1,.lyra h2 { font-weight: 300; line-height: 1.12; letter-spacing: -.035em; }
.lyra h1 { font-size: var(--lyra-type-display); }
.lyra h2 { font-size: var(--lyra-type-title); }
.lyra h3 { font-weight: 600; font-size: 16px; }
.lyra .l-muted { color: var(--lyra-muted); }
.lyra .l-overline { color: var(--lyra-muted); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; }
.lyra .l-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.lyra .l-stack { display: flex; flex-direction: column; gap: var(--lyra-space-4); }
.lyra .l-row { display: flex; align-items: center; gap: var(--lyra-space-3); flex-wrap: wrap; }
.lyra .l-spread { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.lyra .l-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(240px,100%),1fr)); gap: 20px; }
.lyra .l-panel { padding: 24px; background: var(--lyra-surface); border: 1px solid var(--lyra-border); }
.lyra .l-glass { background: var(--lyra-glass); backdrop-filter: blur(var(--lyra-blur)); }
.lyra .l-button { display: inline-flex; justify-content: center; align-items: center; gap: 8px; min-height: var(--lyra-control); padding: 8px 17px; border: 1px solid var(--lyra-border); border-radius: var(--lyra-radius); color: var(--lyra-text); background: transparent; text-decoration: none; transition: transform var(--lyra-motion-fast); }
.lyra .l-button:hover { background: var(--lyra-hover); }
.lyra .l-button.primary { background: var(--lyra-accent); color: var(--lyra-on-accent); border-color: transparent; font-weight: 600; }
.lyra .l-button.quiet { border-color: transparent; }
.lyra .l-button.danger { color: var(--lyra-danger); }
.lyra .l-button.icon { width: var(--lyra-control); padding: 7px; }
.lyra .l-field { display: grid; gap: 7px; font-size: 13px; }
.lyra .l-field small { color: var(--lyra-muted); }
.lyra :is(.l-input,.l-select,.l-textarea) { min-height: var(--lyra-control); padding: 9px 12px; color: var(--lyra-text); background: var(--lyra-bg); border: 1px solid var(--lyra-border); border-radius: var(--lyra-radius); width: 100%; }
.lyra .l-textarea { min-height: 110px; resize: vertical; }
.lyra [aria-invalid="true"] { border-color: var(--lyra-danger); }
.lyra .l-check { display: inline-flex; align-items: center; gap: 9px; min-height: var(--lyra-control); }
.lyra .l-check input { width: 18px; height: 18px; }
.lyra .l-switch { appearance: none; width: 44px !important; height: 24px !important; border: 2px solid var(--lyra-muted); border-radius: 0; position: relative; background: var(--lyra-bg); cursor: pointer; }
.lyra .l-switch::before { content: ""; position: absolute; width: 15px; height: 14px; top: 3px; left: 3px; background: var(--lyra-muted); transition: transform var(--lyra-motion-fast); }
.lyra .l-switch:checked { border-color: var(--lyra-accent); }
.lyra .l-switch:checked::before { transform: translateX(19px); background: var(--lyra-accent); }
.lyra .l-range { accent-color: var(--lyra-accent); min-height: 28px; width: 100%; }
.lyra .l-badge { display: inline-flex; align-items: center; padding: 2px 8px; border: 1px solid var(--lyra-border); color: var(--lyra-muted); font-size: 11px; }
.lyra .l-badge.success { color: var(--lyra-success); }
.lyra .l-avatar { display: inline-grid; place-items: center; width: 40px; height: 40px; background: var(--lyra-selection); color: var(--lyra-accent); font-weight: 500; flex: none; }
.lyra .l-divider { border: 0; border-top: 1px solid var(--lyra-border); margin-block: 24px; }
.lyra .l-toolbar { display: flex; gap: 4px; align-items: center; padding: 8px 12px; border-bottom: 1px solid var(--lyra-border); flex-wrap: wrap; }
.lyra .l-toolbar .l-button { min-height: 32px; padding: 4px 10px; }
.lyra .l-statusbar { display: flex; gap: 16px; justify-content: space-between; padding: 6px 12px; background: var(--lyra-surface); border-top: 1px solid var(--lyra-border); font-size: 11px; color: var(--lyra-muted); }
.lyra .l-empty { text-align: center; padding: 48px 20px; color: var(--lyra-muted); }
.lyra .l-empty h3 { color: var(--lyra-text); }
.lyra .l-banner { padding: 12px 16px; border-left: 3px solid var(--lyra-accent); background: var(--lyra-selection); }
.lyra progress { accent-color: var(--lyra-accent); width: 100%; height: 7px; }
.lyra .l-skeleton { height: 14px; background: var(--lyra-border); opacity: .45; }
.lyra .l-table { width: 100%; border-collapse: collapse; text-align: left; }
.lyra .l-table :is(th,td) { padding: 10px 12px; border-bottom: 1px solid var(--lyra-border); }
.lyra .l-table th { color: var(--lyra-muted); font-size: 11px; font-weight: 600; }
.lyra .l-table th button { background: none; border: none; color: inherit; padding: 3px 0; }
.lyra .l-table tbody tr:hover { background: var(--lyra-hover); }
.lyra .l-table-wrap { overflow: auto; }
.lyra .l-table-pagination { display: flex; align-items: center; justify-content: space-between; padding: 12px; gap: 10px; }
.lyra .l-list { list-style: none; padding: 0; margin: 0; }
.lyra .l-list-item { display: flex; gap: 12px; align-items: center; min-height: var(--lyra-row); padding: 12px 16px; border-bottom: 1px solid var(--lyra-border); }
.lyra .l-list-item.selected { background: var(--lyra-selection); border-left: 3px solid var(--lyra-accent); }
.lyra .l-list-item button { padding: 0; text-align: left; color: inherit; border: 0; background: none; flex: 1; }
.lyra .l-list-item small { color: var(--lyra-muted); display: block; }
.lyra .l-nav { display: flex; flex-direction: column; gap: 3px; }
.lyra .l-nav button,.lyra .l-nav a { display: flex; gap: 12px; align-items: center; min-height: var(--lyra-control); padding: 10px 14px; background: transparent; border: 0; text-decoration: none; text-align: left; color: var(--lyra-muted); }
.lyra .l-nav :is(button,a)[aria-current="page"] { background: var(--lyra-selection); color: var(--lyra-text); border-left: 3px solid var(--lyra-accent); }
.lyra .l-nav :is(button,a):hover { background: var(--lyra-hover); }
.lyra .l-shell { display: grid; grid-template-columns: 220px minmax(0,1fr); min-height: 100%; }
.lyra .l-shell-nav { background: var(--lyra-surface); border-right: 1px solid var(--lyra-border); padding: 20px 12px; }
.lyra .l-shell-main { min-width: 0; padding: 28px; }
.lyra .l-appbar { display: flex; justify-content: space-between; align-items: center; padding: 15px 24px; gap: 16px; background: var(--lyra-surface); border-bottom: 1px solid var(--lyra-border); }
.lyra .l-breadcrumb { display: flex; gap: 8px; align-items: center; font-size: 12px; color: var(--lyra-muted); }
.lyra .l-editor { width: 100%; min-height: 280px; background: var(--lyra-bg); border: 0; color: var(--lyra-text); font: 13px/1.8 var(--lyra-mono); padding: 24px; resize: vertical; tab-size: 2; }
.lyra .l-canvas { min-height: 320px; display: grid; place-items: center; background-color: var(--lyra-bg); background-image: linear-gradient(45deg,var(--lyra-hover) 25%,transparent 25%),linear-gradient(-45deg,var(--lyra-hover) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--lyra-hover) 75%),linear-gradient(-45deg,transparent 75%,var(--lyra-hover) 75%); background-size: 20px 20px; background-position: 0 0,0 10px,10px -10px,-10px 0; }
.lyra .l-inspector { display: grid; gap: 14px; padding: 18px; background: var(--lyra-surface); }
.lyra .l-dialog { border: 1px solid var(--lyra-border); border-top: 3px solid var(--lyra-accent); background: var(--lyra-raised); color: var(--lyra-text); padding: 28px; width: min(520px,calc(100vw - 32px)); max-height: calc(100dvh - 40px); overflow: auto; box-shadow: var(--lyra-shadow); }
.lyra .l-dialog::backdrop { background: #08050bad; backdrop-filter: blur(3px); }
.lyra .l-dialog h2 { font-size: 30px; }
.lyra .l-dialog-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 24px; }
.lyra lyra-icon { display: inline-flex; width: 22px; height: 22px; flex: none; }
.lyra lyra-icon svg { width: 100%; height: 100%; }
.lyra lyra-tabs { display: block; min-width: 0; }
.lyra .l-tablist { display: flex; gap: 20px; padding: 0 0 12px; overflow-x: auto; border-bottom: 1px solid var(--lyra-border); }
.lyra .l-tab { color: var(--lyra-muted); background: transparent; border: 0; padding: 5px 0; font-size: 24px; font-weight: 300; white-space: nowrap; position: relative; }
.lyra .l-tab[aria-selected="true"] { color: var(--lyra-text); }
.lyra .l-tab[aria-selected="true"]::after { content:""; position:absolute; bottom:-13px; left:0; right:0; height:3px; background:var(--lyra-accent); }
.lyra lyra-tabs[variant="document"] .l-tablist { gap: 0; padding: 0; background: var(--lyra-surface); }
.lyra lyra-tabs[variant="document"] .l-tab { font-size: 12px; font-weight: 400; padding: 12px 18px; border-right: 1px solid var(--lyra-border); }
.lyra lyra-tabs[variant="document"] .l-tab[aria-selected="true"] { background: var(--lyra-bg); box-shadow: inset 0 2px var(--lyra-accent); }
.lyra lyra-tabs[variant="document"] .l-tab::after { display:none; }
.lyra .l-tabpanel { padding-top: 24px; }
.lyra lyra-tabs[variant="document"] .l-tabpanel { padding: 0; }
.lyra lyra-split { display: grid; grid-template-columns: minmax(0,var(--lyra-split-start,32%)) 8px minmax(0,1fr); min-width: 0; }
.lyra lyra-split > :not(.l-split-handle) { min-width:0; min-height:0; overflow:auto; }
.lyra .l-split-handle { background:var(--lyra-border); cursor:col-resize; touch-action:none; position:relative; }
.lyra .l-split-handle::after { content:""; position:absolute; width:2px; height:28px; background:var(--lyra-muted); top:50%; left:3px; transform:translateY(-50%); }
.lyra lyra-split[orientation="vertical"] { grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,var(--lyra-split-start,50%)) 8px minmax(0,1fr); }
.lyra lyra-split[orientation="vertical"] > .l-split-handle { cursor:row-resize; }
.lyra lyra-split[orientation="vertical"] > .l-split-handle::after { width:28px;height:2px;left:50%;top:3px;transform:translateX(-50%); }
.lyra lyra-tree { display:block; }
.lyra .l-tree { padding:8px; }
.lyra .l-tree-item { display:flex; align-items:center; gap:7px; width:100%; min-height:var(--lyra-row); padding:6px 8px; border:0; background:none; color:var(--lyra-text); text-align:left; font-size:13px; }
.lyra .l-tree-item[aria-selected="true"] { background:var(--lyra-selection);color:var(--lyra-accent); }
.lyra .l-tree-item:hover { background:var(--lyra-hover); }
.lyra lyra-menu { display:inline-block; position:relative; }
.lyra .l-menu-popup { position:absolute; top:100%; right:0; min-width:190px; max-width:calc(100vw - 32px); padding:6px; background:var(--lyra-raised); border:1px solid var(--lyra-border); box-shadow:var(--lyra-shadow); z-index:30; }
.lyra .l-menu-popup button { display:flex; justify-content:space-between;gap:20px; width:100%; padding:9px 12px; border:0; background:none; color:var(--lyra-text); text-align:left; }
.lyra .l-menu-popup button:hover,.lyra .l-menu-popup button:focus { background:var(--lyra-selection); }
.lyra .l-command-list { list-style:none;padding:0;margin:12px 0 0;max-height:320px;overflow:auto; }
.lyra .l-command-list button { display:flex;justify-content:space-between;gap:20px;width:100%;padding:12px;border:0;background:none;color:var(--lyra-text);text-align:left; }
.lyra .l-command-list button.active { background:var(--lyra-selection); }
.lyra kbd { font:11px var(--lyra-mono);border:1px solid var(--lyra-border);padding:2px 5px;color:var(--lyra-muted); }
.lyra .l-toast-stack { position:fixed;bottom:24px;left:24px;z-index:100;display:grid;gap:10px;max-width:min(380px,calc(100vw - 48px)); }
.lyra .l-toast { padding:14px 16px;background:var(--lyra-raised);border:1px solid var(--lyra-border);border-left:3px solid var(--lyra-accent);box-shadow:var(--lyra-shadow);display:flex;gap:16px;align-items:center; }
.lyra .l-toast button { border:0;background:none;color:var(--lyra-muted); }
.lyra .l-tile-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));grid-auto-rows:130px;gap:10px;grid-auto-flow:dense; }
.lyra lyra-tile { display:block;min-width:0;min-height:0; }
.lyra lyra-tile[size="wide"] { grid-column:span 2; }
.lyra lyra-tile[size="large"] { grid-column:span 2;grid-row:span 2; }
.lyra .l-tile-button { display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;width:100%;height:100%;min-height:110px;border:0;padding:17px;text-align:left;background:var(--lyra-tile-teal);color:#fff;transition:transform var(--lyra-motion-fast),filter var(--lyra-motion-fast); }
.lyra .l-tile-button:hover { filter:brightness(1.1); }.lyra .l-tile-button:active { transform:scale(.98); }
.lyra lyra-tile[tone="pink"] .l-tile-button { background:var(--lyra-tile-pink); }.lyra lyra-tile[tone="blue"] .l-tile-button { background:var(--lyra-tile-blue); }.lyra lyra-tile[tone="orange"] .l-tile-button { background:var(--lyra-tile-orange); }.lyra lyra-tile[tone="purple"] .l-tile-button { background:var(--lyra-tile-purple); }.lyra lyra-tile[tone="green"] .l-tile-button { background:var(--lyra-tile-green); }
.lyra .l-tile-button > img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover; }
.lyra .l-tile-button.has-image::after { content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000b,#0001 80%); }
.lyra .l-tile-top,.lyra .l-tile-content,.lyra .l-tile-footer { position:relative;z-index:1; }
.lyra .l-tile-top { display:flex;align-items:flex-start;justify-content:space-between; }.lyra .l-tile-top lyra-icon{width:36px;height:36px;}
.lyra .l-tile-number { font-weight:200;font-size:43px;line-height:1; }
.lyra .l-tile-content strong { display:block;font-size:20px;font-weight:350;line-height:1.2; }.lyra .l-tile-content small { font-size:12px;display:block;line-height:1.4;margin-top:5px; }
.lyra .l-tile-footer { font-size:12px;display:flex;justify-content:space-between;gap:12px; }.lyra .l-tile-live{width:5px;height:5px;background:#fff;display:inline-block;border-radius:50%;margin-top:7px;}
.lyra .l-tile-content.changed { animation:lyra-peek var(--lyra-motion) ease-out; }
@keyframes lyra-peek { from { transform:translateY(15px);opacity:.4; } to {transform:translateY(0);opacity:1;} }
.lyra lyra-art-wall { display:block;position:relative;overflow:hidden;background:#151015;min-height:200px; }
.lyra .l-art-grid { position:absolute;inset:0;display:grid;gap:2px;filter:sepia(var(--lyra-wall-sepia,.45)) brightness(var(--lyra-wall-brightness,.7)); }
.lyra .l-art-cell { overflow:hidden;background:#382b3f; }.lyra .l-art-cell img{width:100%;height:100%;object-fit:cover;}
.lyra lyra-art-wall::after { content:"";position:absolute;inset:0;pointer-events:none;background:var(--lyra-wall-overlay,linear-gradient(130deg,#7c6b1533,#08040bd0)); }
.lyra .l-spot-button { position:relative;display:grid;place-items:center;width:54px;height:54px;min-height:54px;padding:0;border:1px solid #ffffff45;border-radius:50%;background:var(--lyra-brand-gradient);box-shadow:0 5px 20px #0003,inset 0 1px #ffffff4a;transition:transform var(--lyra-motion-fast); }
.lyra .l-spot-button:hover { transform:translateY(-2px); }
.lyra .l-spot-count { position:absolute;top:-5px;right:-5px;display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border:2px solid var(--lyra-bg);border-radius:999px;background:#c91e36;color:#fff;font-size:12px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 1px 4px #0002; }
.lyra lyra-spot[data-dragover] .l-spot-button { outline:3px solid var(--lyra-accent);outline-offset:5px;transform:scale(1.08); }
.lyra .l-spot-items { list-style:none;padding:0;max-height:280px;overflow:auto; }.lyra .l-spot-items li{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--lyra-border);}.lyra .l-spot-items li>span{flex:1;overflow-wrap:anywhere;}.lyra .l-spot-items small{display:block;color:var(--lyra-muted);}.lyra .l-spot-items button{flex:none;}
@media(max-width:700px){.lyra .l-shell{grid-template-columns:1fr}.lyra .l-shell-nav{border-right:0;border-bottom:1px solid var(--lyra-border)}.lyra .l-nav{flex-direction:row;overflow:auto}.lyra .l-shell-main{padding:20px}.lyra .l-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:140px}.lyra .l-appbar{padding:12px 16px}.lyra .l-tab{font-size:21px}.lyra lyra-split[collapse]{display:flex;flex-direction:column}.lyra lyra-split[collapse]>.l-split-handle{display:none}}
@media(prefers-reduced-motion:reduce){.lyra *, .lyra *::before,.lyra *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.lyra .l-button,.lyra .l-tile-button,.lyra .l-spot-button{border:1px solid ButtonText}.lyra .l-tile-button{forced-color-adjust:auto}.lyra .l-switch:checked::before{background:Highlight}}
.lyra .l-brand-fill { background:var(--lyra-brand-gradient);color:#200912; }
.lyra .l-brand-text { background:var(--lyra-brand-text-gradient,var(--lyra-brand-gradient));background-clip:text;-webkit-background-clip:text;color:transparent; }
.lyra .l-pivot-nav { display:flex;gap:22px;overflow:auto;align-items:baseline; }
.lyra .l-pivot-nav :is(a,button) { font:300 28px var(--lyra-font);letter-spacing:-.035em;white-space:nowrap;color:var(--lyra-muted);text-decoration:none;border:0;background:none;padding:4px 0; }
.lyra .l-pivot-nav [aria-current="page"] { color:var(--lyra-text); }
.lyra .l-pivot-nav :is(a,button):hover { color:var(--lyra-accent); }
.lyra .l-filterbar { display:flex;gap:18px;align-items:center;flex-wrap:wrap;color:var(--lyra-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em; }
.lyra .l-filterbar button { background:none;border:0;color:inherit;padding:8px 0; }.lyra .l-filterbar button[aria-pressed="true"]{color:var(--lyra-accent);font-weight:600;}
.lyra .l-shelf { display:grid;grid-auto-flow:column;grid-auto-columns:minmax(160px,22%);gap:18px;overflow-x:auto;padding:8px 0 20px;scroll-snap-type:x proximity; }
.lyra .l-shelf > * {scroll-snap-align:start;min-width:0;}.lyra .l-art-card{padding:0;background:none;border:0;color:var(--lyra-text);text-align:left;}.lyra .l-art-card img{width:100%;aspect-ratio:1;object-fit:cover;display:block;margin-bottom:10px;}.lyra .l-art-card strong{display:block;font-weight:500;}.lyra .l-art-card small{color:var(--lyra-muted);}
.lyra .l-panorama { display:flex;gap:44px;overflow-x:auto;scroll-snap-type:x proximity;padding:8px 0 24px; }.lyra .l-panorama>*{flex:0 0 min(85vw,420px);scroll-snap-align:start;}
.lyra .l-tile-button { display:grid;grid-template-rows:32px minmax(0,1fr) 16px;gap:6px;padding:14px; }
.lyra .l-tile-content { min-height:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center; }
.lyra .l-tile-content strong { font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25; }
.lyra .l-tile-content small { font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.35;margin-top:3px; }
.lyra .l-tile-top lyra-icon{width:28px;height:28px}.lyra .l-tile-number{font-size:34px;}
.lyra .l-tile-button { grid-template-columns:minmax(0,1fr);justify-content:stretch; }
@media(pointer:coarse){.lyra:not([data-density="compact"]){--lyra-control:48px;--lyra-row:56px;}}

/* Utility controls evolved from CodeSpace Live. Live Tiles and display pivots keep their geometry. */
.lyra .l-button { border-radius:var(--lyra-radius);font-weight:500;box-shadow:var(--lyra-inset-highlight); }
.lyra .l-button.primary { background:var(--lyra-control-gradient);border:1px solid color-mix(in srgb,var(--lyra-action-end),transparent 40%);box-shadow:0 3px 14px color-mix(in srgb,var(--lyra-accent),transparent 88%),var(--lyra-inset-highlight); }
.lyra .l-button.primary:hover { filter:brightness(1.055); }
.lyra .l-button.quiet,.lyra .l-button.icon { box-shadow:none; }
.lyra .l-button.icon { border-radius:var(--lyra-radius-sm);color:var(--lyra-muted); }
.lyra .l-button.icon:hover { color:var(--lyra-text); }
.lyra .l-button.subtle { color:var(--lyra-accent);background:linear-gradient(100deg,var(--lyra-selection),transparent);border-color:color-mix(in srgb,var(--lyra-accent),transparent 70%); }
.lyra .l-button.danger { background:color-mix(in srgb,var(--lyra-danger),transparent 94%);border-color:color-mix(in srgb,var(--lyra-danger),transparent 55%); }
.lyra :is(.l-input,.l-select,.l-textarea) { border-radius:var(--lyra-radius);border-color:var(--lyra-control-border);background:color-mix(in srgb,var(--lyra-bg),transparent 10%);box-shadow:inset 0 1px 3px #0000000c; }
.lyra :is(.l-input,.l-select,.l-textarea):hover { border-color:var(--lyra-muted); }
.lyra :is(.l-input,.l-select,.l-textarea):focus { border-color:var(--lyra-accent);box-shadow:0 0 0 3px var(--lyra-selection); }
.lyra :is(.l-input,.l-textarea)::placeholder { color:var(--lyra-muted); }
.lyra .l-switch { width:40px!important;height:24px!important;border-radius:20px;border:1px solid var(--lyra-control-border);background:var(--lyra-raised); }
.lyra .l-switch::before { width:16px;height:16px;top:3px;left:3px;border-radius:50%;background:var(--lyra-muted); }
.lyra .l-switch:checked { background:var(--lyra-control-gradient);border-color:var(--lyra-accent); }
.lyra .l-switch:checked::before { transform:translateX(16px);background:var(--lyra-on-accent); }
.lyra .l-range { appearance:none;background:transparent;height:42px;padding:0; }
.lyra .l-range::-webkit-slider-runnable-track { height:8px;border-radius:8px;background:var(--lyra-track-gradient);border:1px solid color-mix(in srgb,var(--lyra-accent),transparent 55%);box-shadow:inset 0 1px #ffffff2b; }
.lyra .l-range::-webkit-slider-thumb { appearance:none;width:17px;height:17px;margin-top:-5px;border-radius:50%;background:var(--lyra-accent);border:2px solid var(--lyra-raised);box-shadow:0 2px 6px #0005; }
.lyra .l-range::-moz-range-track { height:8px;border-radius:8px;background:var(--lyra-track-gradient);border:1px solid color-mix(in srgb,var(--lyra-accent),transparent 55%);box-shadow:inset 0 1px #ffffff2b; }
.lyra .l-range::-moz-range-thumb { width:15px;height:15px;border-radius:50%;background:var(--lyra-accent);border:2px solid var(--lyra-raised);box-shadow:0 2px 6px #0005; }
.lyra .l-panel { border-radius:var(--lyra-radius-panel);background:var(--lyra-surface-gradient);box-shadow:var(--lyra-inset-highlight); }
.lyra .l-glass { background:var(--lyra-glass);backdrop-filter:blur(18px) saturate(115%);border:1px solid var(--lyra-border);border-radius:var(--lyra-radius-panel);box-shadow:var(--lyra-panel-shadow),var(--lyra-inset-highlight); }
.lyra .l-dialog { border:1px solid var(--lyra-border);border-radius:var(--lyra-radius-panel);background:var(--lyra-surface-gradient);box-shadow:var(--lyra-panel-shadow),var(--lyra-inset-highlight); }
.lyra .l-dialog h2 { font-size:25px;font-weight:500;letter-spacing:-.025em; }
.lyra .l-dialog::backdrop { background:#050507b8;backdrop-filter:blur(4px); }
.lyra .l-menu-popup { border-radius:12px;background:var(--lyra-surface-gradient);padding:6px; }
.lyra .l-menu-popup button,.lyra .l-command-list button { border-radius:var(--lyra-radius-sm); }
.lyra .l-command-list { display:grid;gap:3px; }
.lyra .l-badge { border-radius:5px;background:var(--lyra-hover);font-variant-numeric:tabular-nums; }
.lyra .l-avatar { border-radius:9px; }
.lyra .l-banner { border:1px solid color-mix(in srgb,var(--lyra-accent),transparent 70%);border-radius:10px;background:var(--lyra-selection); }
.lyra .l-toast { border-radius:12px;background:var(--lyra-surface-gradient);box-shadow:var(--lyra-panel-shadow); }
.lyra .l-nav :is(button,a) { border-radius:var(--lyra-radius-sm);margin:1px 4px; }
.lyra .l-nav :is(button,a)[aria-current="page"] { border-left:0;background:linear-gradient(90deg,var(--lyra-selection),color-mix(in srgb,var(--lyra-selection),transparent 60%));box-shadow:inset 2px 0 color-mix(in srgb,var(--lyra-accent),transparent 25%); }
.lyra .l-tree-item { border-radius:var(--lyra-radius-sm);min-height:max(32px,calc(var(--lyra-row) - 6px)); }
.lyra .l-tree-item[aria-selected="true"] { background:linear-gradient(90deg,var(--lyra-selection),transparent);color:var(--lyra-accent); }
.lyra .l-split-handle { background:var(--lyra-bg);box-shadow:inset 1px 0 var(--lyra-border); }
.lyra .l-split-handle::after { height:30px;border-radius:3px;background:var(--lyra-control-border); }
.lyra .l-split-handle:hover::after { background:var(--lyra-accent); }
.lyra lyra-tabs[variant="document"] .l-tablist { padding:5px 5px 0;gap:3px;background:var(--lyra-surface); }
.lyra lyra-tabs[variant="document"] .l-tab { border:1px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;padding:9px 15px; }
.lyra lyra-tabs[variant="document"] .l-tab[aria-selected="true"] { box-shadow:inset 0 1px var(--lyra-border);border-color:var(--lyra-border); }
.lyra lyra-tabs[variant="segmented"] > .l-tablist { gap:4px;padding:4px;background:color-mix(in srgb,var(--lyra-bg),var(--lyra-surface) 50%);border:1px solid var(--lyra-border);border-radius:10px; }
.lyra lyra-tabs[variant="segmented"] > .l-tablist > .l-tab { font-size:12px;font-weight:500;padding:8px 15px;border-radius:7px; }
.lyra lyra-tabs[variant="segmented"] > .l-tablist > .l-tab[aria-selected="true"] { color:var(--lyra-accent);background:var(--lyra-selection);box-shadow:var(--lyra-inset-highlight); }
.lyra lyra-tabs[variant="segmented"] > .l-tablist > .l-tab::after { display:none; }
.lyra lyra-tabs[variant="settings"] { display:grid;grid-template-columns:180px minmax(0,1fr);min-height:290px;border:1px solid var(--lyra-border);border-radius:var(--lyra-radius-panel);overflow:hidden;background:var(--lyra-surface-gradient); }
.lyra lyra-tabs[variant="settings"] > .l-tablist { flex-direction:column;gap:4px;align-items:stretch;padding:15px 10px;border-bottom:0;border-right:1px solid var(--lyra-border);background:var(--lyra-hover); }
.lyra lyra-tabs[variant="settings"] > .l-tablist > .l-tab { padding:10px 12px;border-radius:8px;font-size:12px;font-weight:500;text-align:left; }
.lyra lyra-tabs[variant="settings"] > .l-tablist > .l-tab[aria-selected="true"] { background:var(--lyra-selection);color:var(--lyra-accent); }
.lyra lyra-tabs[variant="settings"] > .l-tablist > .l-tab::after { display:none; }
.lyra lyra-tabs[variant="settings"] > .l-tabpanel { padding:24px;min-width:0;max-height:440px;overflow:auto; }
.lyra .l-choice-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px; }
.lyra .l-choice-card { position:relative;display:block;cursor:pointer; }
.lyra .l-choice-card > input { position:absolute;right:20px;top:20px;width:19px;height:19px;margin:0;z-index:1;accent-color:var(--lyra-accent); }
.lyra .l-choice-body { display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--lyra-border);border-radius:17px;background:var(--lyra-surface-gradient);box-shadow:0 10px 30px #00000012,var(--lyra-inset-highlight);min-height:160px; }
.lyra .l-choice-body > lyra-icon { width:43px;height:43px;padding:10px;border-radius:12px;background:var(--lyra-selection);color:var(--lyra-accent); }
.lyra .l-choice-body strong { font-size:16px;font-weight:500; }.lyra .l-choice-body small{font-size:12px;line-height:1.7;color:var(--lyra-muted);}
.lyra .l-choice-card:hover .l-choice-body { border-color:var(--lyra-control-border); }
.lyra .l-choice-card > input:checked + .l-choice-body { border-color:color-mix(in srgb,var(--lyra-accent),transparent 28%);box-shadow:0 0 0 1px var(--lyra-selection),var(--lyra-panel-shadow); }
.lyra .l-choice-card > input:focus-visible + .l-choice-body { outline:2px solid var(--lyra-focus);outline-offset:3px; }
.lyra .l-choice-card > input:disabled + .l-choice-body { opacity:.45;cursor:not-allowed; }
.lyra .l-composer { padding:16px;border:1px solid var(--lyra-border);border-radius:15px;background:var(--lyra-surface-gradient);box-shadow:0 10px 35px #0002,var(--lyra-inset-highlight); }
.lyra .l-composer:focus-within { border-color:color-mix(in srgb,var(--lyra-accent),transparent 35%); }
.lyra .l-composer textarea { display:block;width:100%;min-height:100px;resize:vertical;border:0;background:transparent;color:var(--lyra-text);padding:5px;line-height:1.7; }
.lyra .l-composer textarea:focus-visible { outline-offset:0; }.lyra .l-composer textarea::placeholder{color:var(--lyra-muted);}
.lyra .l-composer-actions { display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:12px; }.lyra .l-composer-actions .l-button{min-height:32px;font-size:11px;padding:5px 10px;}.lyra .l-composer-actions .l-button[type="submit"]{margin-left:auto;}
.lyra lyra-output-panel { display:block;border:1px solid var(--lyra-border);border-radius:var(--lyra-radius-panel);color:var(--lyra-text);background:var(--lyra-surface-gradient);box-shadow:var(--lyra-panel-shadow),var(--lyra-inset-highlight);overflow:hidden; }
.lyra .l-output-toggle { display:flex;align-items:center;gap:9px;width:100%;min-height:44px;padding:12px 15px;background:none;border:0;color:var(--lyra-muted);text-align:left;font-size:12px; }.lyra .l-output-toggle > span:first-of-type{flex:1;}.lyra .l-output-toggle:hover{background:var(--lyra-hover);}
.lyra .l-output-items { display:grid;gap:4px;max-height:340px;overflow:auto;padding:0 11px 11px; }
.lyra .l-output-row { display:flex;align-items:center;gap:8px;min-width:0;border-radius:8px; }.lyra .l-output-row:hover{background:var(--lyra-hover);}
.lyra .l-output-main { display:flex;align-items:center;gap:10px;min-width:0;flex:1;padding:8px 5px;background:none;border:0;color:var(--lyra-text);text-align:left; }
.lyra .l-output-glyph { display:grid;place-items:center;width:31px;height:34px;flex:none;border:1px solid var(--lyra-border);border-radius:7px;background:linear-gradient(145deg,var(--lyra-hover),transparent); }.lyra .l-output-glyph lyra-icon{width:17px;height:17px;}
.lyra .l-output-label { flex:1;min-width:0; }.lyra .l-output-label strong{display:block;font-weight:500;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.lyra .l-output-label small{display:block;font-size:10px;color:var(--lyra-muted);line-height:1.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.lyra .l-output-row .l-button.icon { flex:none;width:32px;min-height:32px;opacity:.7;border:0; }.lyra .l-output-row:hover .l-button.icon,.lyra .l-output-row:focus-within .l-button.icon{opacity:1;}
.lyra lyra-range { display:block; }.lyra .l-range-header{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--lyra-muted);gap:10px;}.lyra .l-range-header output{border:1px solid var(--lyra-border);background:var(--lyra-selection);color:var(--lyra-accent);border-radius:8px;padding:2px 8px;font-size:10px;}
.lyra .l-star-range { position:relative;height:42px;--lyra-range-percent:0%; }
.lyra .l-star-track { position:absolute;left:8px;right:8px;top:15px;height:12px;background:var(--lyra-raised);border:1px solid var(--lyra-control-border);border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 3px #0005; }
.lyra .l-star-fill { display:block;height:100%;width:var(--lyra-range-percent);background:var(--lyra-track-gradient);border-radius:inherit; }
.lyra .l-star-dust { position:absolute;inset:0;overflow:hidden;clip-path:inset(0 calc(100% - var(--lyra-range-percent)) 0 0);border-radius:inherit;pointer-events:none; }
.lyra .l-star-dust i { position:absolute;left:var(--x);top:var(--y);width:2px;height:2px;border-radius:50%;background:#fff;opacity:.65;animation:l-star-drift var(--speed) linear infinite;animation-delay:var(--delay);animation-play-state:paused;box-shadow:0 0 3px #fff7; }
.lyra lyra-range[data-playing] .l-star-dust i { animation-play-state:running; }
.lyra .l-star-range.is-burst .l-star-dust i { animation-name:l-star-burst;animation-duration:.55s;animation-delay:0s;animation-iteration-count:1; }
@keyframes l-star-drift { from{transform:translateX(26px);opacity:.2}50%{opacity:.9}to{transform:translateX(-22px);opacity:.2} }
@keyframes l-star-burst { from{transform:translateX(0) scaleX(1);opacity:.8}to{transform:translateX(-42px) scaleX(4);opacity:0} }
.lyra .l-star-range input { appearance:none;position:absolute;inset:0;width:100%;height:42px;margin:0;padding:0;border:0;background:transparent;cursor:ew-resize;border-radius:10px; }
.lyra .l-star-range input::-webkit-slider-runnable-track { height:12px;background:transparent; }.lyra .l-star-range input::-webkit-slider-thumb{appearance:none;width:18px;height:18px;margin-top:-3px;border:1px solid #fff;border-radius:50%;background:#fafaff;box-shadow:0 2px 8px #0006,0 0 0 1px #6668;}
.lyra .l-star-range input::-moz-range-track{height:12px;background:transparent}.lyra .l-star-range input::-moz-range-thumb{width:16px;height:16px;border:1px solid #fff;border-radius:50%;background:#fafaff;box-shadow:0 2px 8px #0006,0 0 0 1px #6668;}
.lyra .l-range-endpoints { display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--lyra-muted); }.lyra lyra-range[disabled]{opacity:.45;}.lyra lyra-range[disabled] input{cursor:not-allowed;}
@media(max-width:600px){.lyra lyra-tabs[variant="settings"]{grid-template-columns:120px minmax(0,1fr)}.lyra lyra-tabs[variant="settings"]>.l-tablist{padding:10px 6px}.lyra lyra-tabs[variant="settings"]>.l-tablist>.l-tab{padding:9px 8px;font-size:11px}.lyra lyra-tabs[variant="settings"]>.l-tabpanel{padding:18px 13px}}
@media(prefers-reduced-motion:reduce){.lyra .l-star-dust i{animation:none!important;opacity:.6!important}.lyra .l-star-fill{transition:none}}
@media(prefers-reduced-transparency:reduce){.lyra .l-glass{background:var(--lyra-surface);backdrop-filter:none}}
@media(forced-colors:active){.lyra .l-switch:checked::before,.lyra .l-star-fill{background:Highlight}.lyra .l-star-range input::-webkit-slider-thumb{background:ButtonText}.lyra .l-star-dust{display:none}}
/* Progress shares the effort-track language; native semantics remain separate from input. */
.lyra progress { appearance:none;-webkit-appearance:none;display:block;width:100%;height:12px;border:1px solid var(--lyra-control-border);border-radius:999px;overflow:hidden;background:var(--lyra-raised);box-shadow:inset 0 1px 3px #0005; }
.lyra progress::-webkit-progress-bar { background:var(--lyra-raised);border-radius:inherit; }
.lyra progress::-webkit-progress-value { background:var(--lyra-track-gradient);border-radius:inherit; }
.lyra progress::-moz-progress-bar { background:var(--lyra-track-gradient);border-radius:inherit; }
.lyra lyra-progress { display:block;position:relative; }
.lyra .l-progress-native { position:absolute!important;display:block!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;overflow:hidden!important;clip-path:inset(50%); }
.lyra .l-progress-value { font-size:11px;font-variant-numeric:tabular-nums;color:var(--lyra-muted); }
.lyra .l-progress-shell { position:relative;height:24px;--lyra-range-percent:0%; }
.lyra .l-progress-shell .l-star-track { top:7px;left:0;right:0; }
.lyra lyra-progress[data-playing] .l-star-dust i { animation-play-state:running; }
.lyra lyra-progress[data-indeterminate] .l-star-fill { width:35%;animation:l-progress-travel 1.8s ease-in-out infinite paused; }
.lyra lyra-progress[data-indeterminate][data-playing] .l-star-fill { animation-play-state:running; }
.lyra lyra-progress[data-indeterminate] .l-star-dust { display:none; }
@keyframes l-progress-travel { from{transform:translateX(-100%)}to{transform:translateX(300%)} }
@media(prefers-reduced-motion:reduce){.lyra lyra-progress .l-star-fill{animation:none!important;transform:none!important}}
@media(forced-colors:active){.lyra progress::-webkit-progress-value{background:Highlight}.lyra progress::-moz-progress-bar{background:Highlight}}
/* Editorial emphasis: deliberately opt-in, separate from compact interface typography. */
.lyra .l-editorial {
  font-family:var(--lyra-font-editorial);
  font-style:italic;
  font-weight:400;
  font-synthesis:none;
  letter-spacing:-.025em;
  line-height:1.16;
}
.lyra .l-display-pair { font-weight:650;letter-spacing:-.05em;line-height:1.08; }
.lyra .l-display-pair .l-editorial { font-size:1.08em;letter-spacing:-.035em; }
.lyra .l-editorial.l-brand-text { display:inline-block;max-width:100%;padding-inline:.06em;padding-bottom:.08em;margin-inline:-.06em; }
.lyra .l-avatar.brand { background:var(--lyra-brand-gradient);color:#fff;text-shadow:0 1px 2px #0009; }

.lyra .l-menu-popup button { display:flex;align-items:center;gap:10px; }
.lyra .l-menu-image { object-fit:contain;flex-shrink:0; }
.lyra .l-menu-label { flex:1;text-align:left; }
.lyra .l-tab { display:inline-flex;align-items:center;gap:9px; }
.lyra .l-tab lyra-icon { width:17px;height:17px;flex-shrink:0; }
.lyra .l-output-extra { font-size:11px;min-height:28px;padding:4px 7px;white-space:nowrap; }
