@layer vocasync.tokens,vocasync.base,vocasync.variants;@layer vocasync.tokens,vocasync.base,vocasync.variants;@property --vocasync-accent{syntax: "<color>"; inherits: true; initial-value: #3b82f6;}@property --vocasync-surface{syntax: "<color>"; inherits: true; initial-value: #f8fafc;}@property --vocasync-text{syntax: "<color>"; inherits: true; initial-value: #1e293b;}@property --vocasync-highlight{syntax: "<color>"; inherits: true; initial-value: #10b981;}@layer vocasync.tokens{:root{--vocasync-accent: #3b82f6;--vocasync-surface: #f8fafc;--vocasync-text: #1e293b;--vocasync-highlight: #10b981;--vocasync-accent-hover: #2563eb;--vocasync-accent-content: #ffffff;--vocasync-surface-raised: #ffffff;--vocasync-text-muted: #64748b;--vocasync-text-faint: #94a3b8;--vocasync-border: #e2e8f0;--vocasync-track: #e2e8f0;--vocasync-buffered-color: #cbd5e1;--vocasync-highlight-active-bg: rgb(16 185 129 / .25);--vocasync-highlight-trail-bg: rgb(16 185 129 / .12);--vocasync-highlight-active-text: ;--vocasync-font-family: inherit;--vocasync-font-size: .875rem;--vocasync-font-size-sm: .75rem;--vocasync-font-weight: 400;--vocasync-font-weight-medium: 500;--vocasync-line-height: 1.4;--vocasync-numeric: tabular-nums;--vocasync-density: 1;--vocasync-unit: .25rem;--vocasync-gap: calc(var(--vocasync-unit) * 3);--vocasync-gap-sm: var(--vocasync-unit);--vocasync-padding: calc(var(--vocasync-unit) * 4);--vocasync-control-size: 2.5rem;--vocasync-control-size-sm: 2rem;--vocasync-icon-size: 1.25rem;--vocasync-radius: .75rem;--vocasync-radius-control: .375rem;--vocasync-radius-menu: .5rem;--vocasync-radius-pill: 9999px;--vocasync-word-radius: .125rem;--vocasync-border-width: 1px;--vocasync-played: 0%;--vocasync-buffered: 0%;--vocasync-slider-height: .375rem;--vocasync-slider-thumb-size: 1rem;--vocasync-volume-width: 4rem;--vocasync-dock-height: 3.5rem;--vocasync-dock-offset: 1rem;--vocasync-dock-width: 20rem;--vocasync-focus-width: 2px;--vocasync-focus-offset: 2px;--vocasync-focus-color: var(--vocasync-accent);--vocasync-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--vocasync-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--vocasync-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--vocasync-transition-fast: .15s ease;--vocasync-transition: .2s ease;--vocasync-menu-z: 10;--vocasync-dock-z: 1000;--vocasync-l-threshold: .623}@media(prefers-color-scheme:dark){:root:not([data-vocasync-scheme=light]):not(.light):not([data-theme=light]):not([data-mode=light]){--vocasync-accent: #60a5fa;--vocasync-surface: #1e293b;--vocasync-text: #f1f5f9;--vocasync-highlight: #34d399;--vocasync-accent-hover: #3b82f6;--vocasync-accent-content: #1e293b;--vocasync-surface-raised: #334155;--vocasync-text-muted: #94a3b8;--vocasync-text-faint: #64748b;--vocasync-border: #475569;--vocasync-track: #475569;--vocasync-buffered-color: #64748b;--vocasync-highlight-active-bg: rgb(52 211 153 / .25);--vocasync-highlight-trail-bg: rgb(52 211 153 / .12);--vocasync-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .2);--vocasync-shadow: 0 1px 3px 0 rgb(0 0 0 / .3), 0 1px 2px -1px rgb(0 0 0 / .3);--vocasync-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .3), 0 4px 6px -4px rgb(0 0 0 / .3)}}[data-vocasync-scheme=dark],.dark,[data-theme=dark],[data-mode=dark]{--vocasync-accent: #60a5fa;--vocasync-surface: #1e293b;--vocasync-text: #f1f5f9;--vocasync-highlight: #34d399;--vocasync-accent-hover: #3b82f6;--vocasync-accent-content: #1e293b;--vocasync-surface-raised: #334155;--vocasync-text-muted: #94a3b8;--vocasync-text-faint: #64748b;--vocasync-border: #475569;--vocasync-track: #475569;--vocasync-buffered-color: #64748b;--vocasync-highlight-active-bg: rgb(52 211 153 / .25);--vocasync-highlight-trail-bg: rgb(52 211 153 / .12);--vocasync-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .2);--vocasync-shadow: 0 1px 3px 0 rgb(0 0 0 / .3), 0 1px 2px -1px rgb(0 0 0 / .3);--vocasync-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .3), 0 4px 6px -4px rgb(0 0 0 / .3)}@supports (color: color-mix(in oklab,red,blue)){:root{--vocasync-accent-hover: color-mix(in oklab, var(--vocasync-accent), black 12%);--vocasync-surface-raised: color-mix(in oklab, var(--vocasync-surface), white 60%);--vocasync-text-muted: color-mix(in oklab, var(--vocasync-text), var(--vocasync-surface) 40%);--vocasync-text-faint: color-mix(in oklab, var(--vocasync-text), var(--vocasync-surface) 60%);--vocasync-border: color-mix(in oklab, var(--vocasync-text), var(--vocasync-surface) 85%);--vocasync-track: color-mix(in oklab, var(--vocasync-text), var(--vocasync-surface) 85%);--vocasync-buffered-color: color-mix( in oklab, var(--vocasync-text), var(--vocasync-surface) 70% );--vocasync-highlight-active-bg: color-mix( in oklab, var(--vocasync-highlight) 25%, transparent );--vocasync-highlight-trail-bg: color-mix( in oklab, var(--vocasync-highlight) 12%, transparent )}}@supports (color: oklch(from red l c h)){:root{--vocasync-accent-content: oklch( from var(--vocasync-accent) clamp(0, (l / var(--vocasync-l-threshold) - 1) * -infinity, 1) 0 h )}}}@layer vocasync.tokens,vocasync.base,vocasync.variants;@layer vocasync.base{:where(.vocasync-word){border-radius:var(--vocasync-word-radius);padding:0 .0625rem;margin:0 -.0625rem;transition:background-color var(--vocasync-transition-fast),color var(--vocasync-transition-fast)}:where(.vocasync-word).is-active{background-color:var(--vocasync-highlight-active-bg);color:var(--vocasync-highlight-active-text, inherit)}:where(.vocasync-word).is-trail{background-color:var(--vocasync-highlight-trail-bg)}:where(.vocasync-click-seek) :where(.vocasync-word){cursor:pointer}@media(prefers-reduced-motion:reduce){:where(.vocasync-word){transition:none}}}@layer vocasync.tokens,vocasync.base,vocasync.variants;@layer vocasync.base{:where(.vocasync-player){display:flex;flex-direction:column;gap:calc(var(--vocasync-gap) * var(--vocasync-density));padding:calc(var(--vocasync-padding) * var(--vocasync-density));background:var(--vocasync-surface);border:var(--vocasync-border-width) solid var(--vocasync-border);border-radius:var(--vocasync-radius);box-shadow:var(--vocasync-shadow-sm);color:var(--vocasync-text);font-family:var(--vocasync-font-family);font-size:var(--vocasync-font-size);font-weight:var(--vocasync-font-weight);line-height:var(--vocasync-line-height)}:where(.vocasync-player):focus-visible,:where(.vocasync-player__play-btn):focus-visible,:where(.vocasync-player__icon-btn):focus-visible,:where(.vocasync-player__speed-btn):focus-visible{outline:var(--vocasync-focus-width) solid var(--vocasync-focus-color);outline-offset:var(--vocasync-focus-offset)}:where(.vocasync-player__loading),:where(.vocasync-player__placeholder),:where(.vocasync-player__error){display:flex;align-items:center;justify-content:center;gap:calc(var(--vocasync-unit) * 2);padding:calc(var(--vocasync-unit) * 3);color:var(--vocasync-text-muted);font-size:var(--vocasync-font-size)}:where(.vocasync-player__controls){display:flex;align-items:center;gap:calc(var(--vocasync-gap) * var(--vocasync-density));flex-wrap:wrap}:where(.vocasync-player__loading)[hidden],:where(.vocasync-player__placeholder)[hidden],:where(.vocasync-player__error)[hidden],:where(.vocasync-player__controls)[hidden]{display:none}:where(.vocasync-player__retry-btn){padding:.25rem calc(var(--vocasync-unit) * 3);font:inherit;font-size:var(--vocasync-font-size-sm);color:var(--vocasync-text);background:var(--vocasync-surface-raised);border:var(--vocasync-border-width) solid var(--vocasync-border);border-radius:var(--vocasync-radius-control);cursor:pointer}:where(.vocasync-player__retry-btn):hover{border-color:var(--vocasync-accent)}:where(.vocasync-player__retry-btn):focus-visible{outline:var(--vocasync-focus-width) solid var(--vocasync-focus-color);outline-offset:var(--vocasync-focus-offset)}:where(.vocasync-player__spinner){width:1.25rem;height:1.25rem;border:2px solid var(--vocasync-border);border-top-color:var(--vocasync-accent);border-radius:50%;animation:vocasync-spin .75s linear infinite}@keyframes vocasync-spin{to{transform:rotate(360deg)}}:where(.vocasync-player__play-btn){display:flex;align-items:center;justify-content:center;flex-shrink:0;width:calc(var(--vocasync-control-size) * var(--vocasync-density));height:calc(var(--vocasync-control-size) * var(--vocasync-density));background:var(--vocasync-accent);color:var(--vocasync-accent-content);border:none;border-radius:var(--vocasync-radius-pill);cursor:pointer;transition:background-color var(--vocasync-transition-fast)}:where(.vocasync-player__play-btn):hover{background:var(--vocasync-accent-hover)}:where(.vocasync-icon){width:calc(var(--vocasync-icon-size) * var(--vocasync-density));height:calc(var(--vocasync-icon-size) * var(--vocasync-density))}:where(.vocasync-hidden){display:none}:where(.vocasync-player__icon-btn){display:flex;align-items:center;justify-content:center;width:calc(var(--vocasync-control-size-sm) * var(--vocasync-density));height:calc(var(--vocasync-control-size-sm) * var(--vocasync-density));color:var(--vocasync-text-muted);background:transparent;border:none;border-radius:var(--vocasync-radius-control);cursor:pointer;transition:color var(--vocasync-transition-fast),background-color var(--vocasync-transition-fast)}:where(.vocasync-player__icon-btn):hover{color:var(--vocasync-text);background:var(--vocasync-border)}:where(.vocasync-player__icon-btn)[data-highlighting=off]{color:var(--vocasync-text-faint)}:where(.vocasync-player__progress-section){display:flex;flex-direction:column;gap:calc(var(--vocasync-gap-sm) * var(--vocasync-density));flex:1;min-width:0}:where(.vocasync-player__time){display:flex;gap:calc(var(--vocasync-gap-sm) * var(--vocasync-density));font-size:var(--vocasync-font-size-sm);font-variant-numeric:var(--vocasync-numeric);color:var(--vocasync-text-muted)}:where(.vocasync-player__time-sep){color:var(--vocasync-text-faint)}:where(.vocasync-player__progress),:where(.vocasync-player__volume-slider){-webkit-appearance:none;appearance:none;width:100%;height:var(--vocasync-slider-height);background:var(--vocasync-track);border-radius:var(--vocasync-radius-pill);cursor:pointer}:where(.vocasync-player__progress){background-image:linear-gradient(to right,var(--vocasync-accent) var(--vocasync-played, 0%),transparent var(--vocasync-played, 0%)),linear-gradient(to right,var(--vocasync-buffered-color) var(--vocasync-buffered, 0%),transparent var(--vocasync-buffered, 0%));background-repeat:no-repeat}:where(.vocasync-player)[data-player-buffering] :where(.vocasync-player__progress){opacity:.6}:where(.vocasync-player__progress)::-webkit-slider-thumb,:where(.vocasync-player__volume-slider)::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--vocasync-slider-thumb-size);height:var(--vocasync-slider-thumb-size);background:var(--vocasync-accent);border:none;border-radius:50%;box-shadow:var(--vocasync-shadow);transition:transform var(--vocasync-transition-fast)}:where(.vocasync-player__progress)::-webkit-slider-thumb:hover,:where(.vocasync-player__volume-slider)::-webkit-slider-thumb:hover{transform:scale(1.1)}:where(.vocasync-player__progress)::-moz-range-thumb,:where(.vocasync-player__volume-slider)::-moz-range-thumb{width:var(--vocasync-slider-thumb-size);height:var(--vocasync-slider-thumb-size);background:var(--vocasync-accent);border:none;border-radius:50%;box-shadow:var(--vocasync-shadow)}:where(.vocasync-player__speed){position:relative}:where(.vocasync-player__speed-btn){display:flex;align-items:center;justify-content:center;min-width:2.5rem;height:1.75rem;padding:0 calc(var(--vocasync-unit) * 2);font-family:inherit;font-size:var(--vocasync-font-size-sm);font-weight:var(--vocasync-font-weight-medium);color:var(--vocasync-text-muted);background:var(--vocasync-surface-raised);border:var(--vocasync-border-width) solid var(--vocasync-border);border-radius:var(--vocasync-radius-control);cursor:pointer;transition:color var(--vocasync-transition-fast),border-color var(--vocasync-transition-fast)}:where(.vocasync-player__speed-btn):hover{color:var(--vocasync-text);border-color:var(--vocasync-accent)}:where(.vocasync-player__speed-menu){position:absolute;bottom:100%;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:.125rem;padding:calc(var(--vocasync-gap-sm) * var(--vocasync-density));margin-bottom:calc(var(--vocasync-unit) * 2);background:var(--vocasync-surface-raised);border:var(--vocasync-border-width) solid var(--vocasync-border);border-radius:var(--vocasync-radius-menu);box-shadow:var(--vocasync-shadow-lg);z-index:var(--vocasync-menu-z)}:where(.vocasync-player__speed-menu)[hidden]{display:none}:where(.vocasync-player__speed-menu) button{padding:.375rem calc(var(--vocasync-unit) * 3);font-family:inherit;font-size:var(--vocasync-font-size-sm);color:var(--vocasync-text-muted);background:transparent;border:none;border-radius:var(--vocasync-radius-control);cursor:pointer;white-space:nowrap;transition:color var(--vocasync-transition-fast),background-color var(--vocasync-transition-fast)}:where(.vocasync-player__speed-menu) button:hover{background:var(--vocasync-border);color:var(--vocasync-text)}:where(.vocasync-player__speed-menu) button[data-active]{background:var(--vocasync-accent);color:var(--vocasync-accent-content)}:where(.vocasync-player__volume){display:flex;align-items:center;gap:calc(var(--vocasync-gap-sm) * var(--vocasync-density))}:where(.vocasync-player__volume-slider){width:var(--vocasync-volume-width)}@media(max-width:40em){:where(.vocasync-player__volume-slider){display:none}}:where(.vocasync-mini-player){position:fixed;inset-block-end:var(--vocasync-dock-offset);inset-inline:var(--vocasync-dock-offset);display:flex;align-items:center;gap:calc(var(--vocasync-gap) * var(--vocasync-density));height:var(--vocasync-dock-height);padding:0 calc(var(--vocasync-padding) * var(--vocasync-density));background:var(--vocasync-surface-raised);color:var(--vocasync-text);border:var(--vocasync-border-width) solid var(--vocasync-border);border-radius:var(--vocasync-radius-pill);box-shadow:var(--vocasync-shadow-lg);z-index:var(--vocasync-dock-z);opacity:1;translate:0 0;transition:opacity var(--vocasync-transition),translate var(--vocasync-transition),display var(--vocasync-transition) allow-discrete}:where(.vocasync-mini-player)[hidden]{display:none;opacity:0;translate:0 100%}@starting-style{:where(.vocasync-mini-player){opacity:0;translate:0 100%}}:where(.vocasync-mini-player__play-btn){display:flex;align-items:center;justify-content:center;flex-shrink:0;width:calc(var(--vocasync-control-size-sm) * var(--vocasync-density));height:calc(var(--vocasync-control-size-sm) * var(--vocasync-density));background:var(--vocasync-accent);color:var(--vocasync-accent-content);border:none;border-radius:50%;cursor:pointer}:where(.vocasync-mini-player__play-btn) :where(.vocasync-icon){width:1rem;height:1rem}:where(.vocasync-mini-player__progress){flex:1;height:var(--vocasync-unit);background:var(--vocasync-track);border-radius:var(--vocasync-radius-pill);overflow:hidden}:where(.vocasync-mini-player__progress-bar){height:100%;background:var(--vocasync-accent);border-radius:var(--vocasync-radius-pill);transition:width .1s linear}:where(.vocasync-mini-player__time){font-size:var(--vocasync-font-size-sm);font-variant-numeric:var(--vocasync-numeric);color:var(--vocasync-text-muted);min-width:2.5rem}:where(.vocasync-mini-player__close-btn){display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;color:var(--vocasync-text-faint);background:transparent;border:none;border-radius:50%;cursor:pointer;transition:color var(--vocasync-transition-fast)}:where(.vocasync-mini-player__close-btn):hover{color:var(--vocasync-text)}:where(.vocasync-mini-player__close-btn) svg{width:1rem;height:1rem}@media(min-width:40em){:where(.vocasync-mini-player){inset-inline-start:auto;max-width:var(--vocasync-dock-width)}}@media(prefers-reduced-motion:reduce){:where(.vocasync-player) *,:where(.vocasync-mini-player),:where(.vocasync-mini-player) *{transition-duration:1ms;animation-duration:1ms;animation-iteration-count:1}}@media(forced-colors:active){:where(.vocasync-player),:where(.vocasync-mini-player),:where(.vocasync-player__speed-menu){border:1px solid CanvasText}:where(.vocasync-player__play-btn),:where(.vocasync-mini-player__play-btn){border:1px solid ButtonText}}}@layer vocasync.variants{:where(.vocasync-player)[data-variant=minimal]{background:none;border:none;box-shadow:none;padding:0;border-radius:0}:where(.vocasync-player)[data-variant=card]{gap:calc(var(--vocasync-padding) * var(--vocasync-density));padding:calc(var(--vocasync-padding) * var(--vocasync-density))}:where(.vocasync-player)[data-size=sm]{--vocasync-density: .85;--vocasync-font-size: .8125rem;--vocasync-font-size-sm: .6875rem}:where(.vocasync-player)[data-size=lg]{--vocasync-density: 1.2;--vocasync-font-size: 1rem;--vocasync-font-size-sm: .875rem}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--vocasync-accent: var(--color-primary);--vocasync-surface: var(--color-bg);--vocasync-text: var(--color-text);--vocasync-highlight: #f59e0b;--vocasync-radius: 10px;--color-bg: #fafafa;--color-text: #1a1a2e;--color-text-muted: #64748b;--color-primary: #6366f1;--color-primary-hover: #4f46e5;--color-border: #e2e8f0;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", Monaco, "Cascadia Mono", monospace;--max-width: 48rem;--header-height: 4rem}@media(prefers-color-scheme:dark){:root{--color-bg: #0f172a;--color-text: #f1f5f9;--color-text-muted: #94a3b8;--color-primary: #818cf8;--color-primary-hover: #a5b4fc;--color-border: #334155}}[data-astro-cid-37fxchfa]{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;scroll-behavior:smooth}body{min-height:100vh;display:flex;flex-direction:column}header[data-astro-cid-37fxchfa]{position:sticky;top:0;z-index:100;background-color:var(--color-bg);border-bottom:1px solid var(--color-border);backdrop-filter:blur(8px)}nav[data-astro-cid-37fxchfa]{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem;height:var(--header-height);display:flex;align-items:center;justify-content:space-between}.logo[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--color-text);font-weight:600;font-size:1.125rem}.logo-icon[data-astro-cid-37fxchfa]{font-size:1.5rem}.nav-links[data-astro-cid-37fxchfa]{display:flex;gap:1.5rem}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--color-text-muted);text-decoration:none;font-size:.875rem;transition:color .2s}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--color-primary)}main[data-astro-cid-37fxchfa]{flex:1;max-width:var(--max-width);margin:0 auto;padding:2rem 1.5rem;width:100%}footer[data-astro-cid-37fxchfa]{border-top:1px solid var(--color-border);padding:1.5rem;text-align:center;color:var(--color-text-muted);font-size:.875rem}footer[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--color-primary);text-decoration:none}footer[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{text-decoration:underline}footer[data-astro-cid-37fxchfa] .versions[data-astro-cid-37fxchfa]{margin-top:.5rem;font-family:var(--font-mono);font-size:.75rem;color:var(--color-text-muted);opacity:.85}@media(max-width:640px){.nav-links[data-astro-cid-37fxchfa]{gap:1rem}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:not(:first-child){display:none}}
