@jungherz-de/glasskit-elements 1.24.0 → 1.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -1
- package/README.md +15 -4
- package/SKILL.md +14 -3
- package/dist/glasskit-elements.esm.js +3 -3
- package/dist/glasskit-elements.js +3 -3
- package/dist/glasskit-elements.min.js +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
var GlassKitElements=function(t){"use strict";const e=":root,[data-theme=dark]{color-scheme:dark;--gl-color-primary:#f5a623;--gl-color-primary-dark:#d4692a;--gl-color-primary-mid:color-mix(in srgb, var(--gl-color-primary) 32%, var(--gl-color-primary-dark));--gl-color-bg-dark:#0e2530;--gl-color-bg-mid:#1a3d4e;--gl-color-bg-light:#1b3e50;--gl-color-text:#ffffff;--gl-color-text-muted:rgba(255, 255, 255, 0.60);--gl-color-text-on-light:#1a3a4a;--gl-color-text-heading:#ffffff;--gl-select-chevron:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E\");--gl-color-success:#34c759;--gl-color-error:#ff3b30;--gl-color-warning:#ffcc00;--gl-color-success-dark:#2da44e;--gl-color-error-dark:#d63027;--gl-color-on-primary:#ffffff;--gl-color-on-success:#ffffff;--gl-color-on-error:#ffffff;--gl-color-primary-on-surface:color-mix(in srgb, var(--gl-color-primary) 50%, #ffffff);--gl-color-success-on-surface:color-mix(in srgb, var(--gl-color-success) 62%, #ffffff);--gl-color-error-on-surface:color-mix(in srgb, var(--gl-color-error) 50%, #ffffff);--gl-color-warning-on-surface:color-mix(in srgb, var(--gl-color-warning) 80%, #ffffff);--gl-state-scrim:rgba(0, 0, 0, 0.30);--gl-color-primary-surface:color-mix(in srgb, var(--gl-color-primary) 25%, transparent);--gl-color-primary-border:var(--gl-border-warm);--gl-color-success-surface:color-mix(in srgb, var(--gl-color-success) 15%, transparent);--gl-color-success-border:color-mix(in srgb, var(--gl-color-success) 30%, transparent);--gl-color-error-surface:color-mix(in srgb, var(--gl-color-error) 15%, transparent);--gl-color-error-border:color-mix(in srgb, var(--gl-color-error) 30%, transparent);--gl-color-warning-surface:color-mix(in srgb, var(--gl-color-warning) 15%, transparent);--gl-color-warning-border:color-mix(in srgb, var(--gl-color-warning) 30%, transparent);--gl-surface-1:rgba(255, 255, 255, 0.08);--gl-surface-2:rgba(255, 255, 255, 0.10);--gl-surface-3:rgba(255, 255, 255, 0.14);--gl-surface-4:rgba(255, 255, 255, 0.16);--gl-surface-5:rgba(255, 255, 255, 0.22);--gl-surface-milk:rgba(255, 255, 255, 0.55);--gl-surface-milk-strong:rgba(255, 255, 255, 0.75);--gl-surface-overlay:rgba(0, 0, 0, 0.50);--gl-card-glow-top:rgba(255, 255, 255, 0.32);--gl-card-glow-mid:rgba(255, 255, 255, 0.22);--gl-card-glow-low:rgba(255, 255, 255, 0.14);--gl-card-glow-bottom:rgba(255, 255, 255, 0.08);--gl-card-icon-color:rgba(255, 255, 255, 0.8);--gl-card-text-color:rgba(255, 255, 255, 0.7);--gl-border-subtle:rgba(255, 255, 255, 0.18);--gl-border-medium:rgba(255, 255, 255, 0.30);--gl-border-strong:rgba(255, 255, 255, 0.40);--gl-border-milk:rgba(255, 255, 255, 0.60);--gl-border-warm:color-mix(in srgb, color-mix(in srgb, var(--gl-color-primary) 68%, #ffffff) 35%, transparent);--gl-border-focus:color-mix(in srgb, var(--gl-color-primary) 60%, transparent);--gl-icon-default:rgba(255, 255, 255, 0.6);--gl-icon-muted:rgba(255, 255, 255, 0.45);--gl-icon-strong:rgba(255, 255, 255, 0.8);--gl-icon-on-primary:var(--gl-color-on-primary, #ffffff);--gl-icon-on-secondary:#1a3a4a;--gl-icon-on-tertiary:rgba(255, 255, 255, 0.6);--gl-blur:24px;--gl-blur-light:16px;--gl-blur-soft:12px;--gl-blur-heavy:40px;--gl-radius-pill:50%;--gl-radius-full:9999px;--gl-radius-card:24px;--gl-radius-btn:16px;--gl-radius-input:14px;--gl-radius-sm:12px;--gl-radius-xs:8px;--gl-shadow-card:0 8px 32px rgba(0, 0, 0, 0.18);--gl-shadow-btn:0 4px 16px rgba(0, 0, 0, 0.12);--gl-shadow-btn-primary:0 6px 24px color-mix(in srgb, var(--gl-color-primary-mid) 35%, transparent),0 2px 8px rgba(0, 0, 0, 0.15);--gl-shadow-glow:0 2px 12px rgba(255, 255, 255, 0.08),0 4px 16px rgba(0, 0, 0, 0.15);--gl-shadow-modal:0 24px 80px rgba(0, 0, 0, 0.4),0 8px 32px rgba(0, 0, 0, 0.2);--gl-shadow-toast:0 8px 32px rgba(0, 0, 0, 0.25);--gl-shadow-focus:0 0 0 3px color-mix(in srgb, var(--gl-color-primary) 30%, transparent);--gl-inset-subtle:inset 0 1px 1px rgba(255, 255, 255, 0.10);--gl-inset-medium:inset 0 1px 1px rgba(255, 255, 255, 0.15);--gl-inset-strong:inset 0 1px 2px rgba(255, 255, 255, 0.25);--gl-inset-milk:inset 0 1px 2px rgba(255, 255, 255, 0.40);--gl-gloss-card:linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.5) 30%,\n rgba(255,255,255,0.6) 50%, rgba(255,255,255,0.5) 70%, transparent 100%);--gl-gloss-modal:linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.4) 30%,\n rgba(255,255,255,0.5) 50%, rgba(255,255,255,0.4) 70%, transparent 100%);--gl-gloss-progress:linear-gradient(to bottom, rgba(255,255,255,0.3) 0%, transparent 100%);--gl-range-thumb-border:2px solid rgba(255,255,255,0.5);--gl-bg-aurora-1:rgba(60, 160, 160, 0.25);--gl-bg-aurora-2:rgba(200, 140, 60, 0.12);--gl-bg-aurora-3:rgba(80, 180, 200, 0.18);--gl-bg-light-streak-1:rgba(90, 210, 200, 0.14);--gl-bg-light-streak-2:rgba(110, 200, 190, 0.10);--gl-bg-warm-glow:rgba(220, 160, 70, 0.10);--gl-space-2xs:4px;--gl-space-xs:8px;--gl-space-sm:12px;--gl-space-md:16px;--gl-space-lg:20px;--gl-space-xl:24px;--gl-space-2xl:32px;--gl-space-3xl:40px;--gl-space-4xl:56px;--gl-control-height:52px;--gl-btn-height:56px;--gl-btn-height-sm:44px;--gl-btn-height-lg:64px;--gl-textarea-min-height:120px;--gl-list-item-min-height:56px;--gl-toggle-width:52px;--gl-toggle-height:30px;--gl-toggle-thumb-size:22px;--gl-check-size:24px;--gl-modal-action-height:52px;--gl-font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display','Segoe UI',Roboto,Helvetica,Arial,sans-serif;--gl-font-size-xs:13px;--gl-font-size-sm:14px;--gl-font-size-base:15px;--gl-font-size-btn:16px;--gl-font-size-lg:18px;--gl-font-size-title:24px;--gl-font-size-modal:20px;--gl-font-weight-normal:400;--gl-font-weight-medium:500;--gl-font-weight-semibold:600;--gl-transition:all 0.25s ease;--gl-transition-fast:all 0.15s ease;--gl-transition-modal:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);--gl-tab-bar-height:82px;--gl-modal-max-width:340px;--gl-tab-bar-floating-bottom:16px;--gl-tab-bar-floating-gap:var(--gl-space-sm);--gl-tab-bar-floating-padding:6px 10px;--gl-tab-bar-floating-radius:var(--gl-radius-full);--gl-tab-bar-accessory-size:56px;--gl-tab-bar-spotlight-color:var(--gl-color-primary);--gl-placeholder:rgba(255, 255, 255, 0.35);--gl-accordion-body-color:var(--gl-color-text-muted);--gl-toggle-thumb-bg:linear-gradient(to bottom,\n rgba(255,255,255,0.9) 0%,\n rgba(255,255,255,0.7) 100%);--gl-range-track-bg:var(--gl-surface-2);--gl-range-track-border:var(--gl-border-subtle)}[data-theme=light]{color-scheme:light;--gl-color-primary:#e8852d;--gl-color-primary-dark:#c96a1e;--gl-color-primary-mid:color-mix(in srgb, var(--gl-color-primary) 52%, var(--gl-color-primary-dark));--gl-color-bg-dark:#e8ecf1;--gl-color-bg-mid:#f0f4f8;--gl-color-bg-light:#f5f7fa;--gl-color-text:#1a2a36;--gl-color-text-muted:rgba(26, 42, 54, 0.55);--gl-color-text-on-light:#1a3a4a;--gl-color-text-heading:#0f1f2a;--gl-select-chevron:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(26,42,54,0.55)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E\");--gl-color-success:#28a745;--gl-color-error:#dc3545;--gl-color-warning:#e6a800;--gl-color-success-dark:#1e7e34;--gl-color-error-dark:#b02a37;--gl-color-on-primary:#ffffff;--gl-color-on-success:#ffffff;--gl-color-on-error:#ffffff;--gl-color-primary-on-surface:color-mix(in srgb, var(--gl-color-primary) 60%, #000000);--gl-color-success-on-surface:color-mix(in srgb, var(--gl-color-success) 68%, #000000);--gl-color-error-on-surface:color-mix(in srgb, var(--gl-color-error) 82%, #000000);--gl-color-warning-on-surface:color-mix(in srgb, var(--gl-color-warning) 56%, #000000);--gl-state-scrim:rgba(255, 255, 255, 0.30);--gl-color-primary-surface:color-mix(in srgb, var(--gl-color-primary) 25%, transparent);--gl-color-primary-border:var(--gl-border-warm);--gl-color-success-surface:color-mix(in srgb, var(--gl-color-success) 15%, transparent);--gl-color-success-border:color-mix(in srgb, var(--gl-color-success) 30%, transparent);--gl-color-error-surface:color-mix(in srgb, var(--gl-color-error) 15%, transparent);--gl-color-error-border:color-mix(in srgb, var(--gl-color-error) 30%, transparent);--gl-color-warning-surface:color-mix(in srgb, var(--gl-color-warning) 15%, transparent);--gl-color-warning-border:color-mix(in srgb, var(--gl-color-warning) 30%, transparent);--gl-surface-1:rgba(255, 255, 255, 0.50);--gl-surface-2:rgba(255, 255, 255, 0.60);--gl-surface-3:rgba(255, 255, 255, 0.70);--gl-surface-4:rgba(255, 255, 255, 0.75);--gl-surface-5:rgba(255, 255, 255, 0.85);--gl-surface-milk:rgba(255, 255, 255, 0.85);--gl-surface-milk-strong:rgba(255, 255, 255, 0.92);--gl-surface-overlay:rgba(0, 0, 0, 0.25);--gl-card-glow-top:rgba(255, 255, 255, 0.90);--gl-card-glow-mid:rgba(255, 255, 255, 0.78);--gl-card-glow-low:rgba(255, 255, 255, 0.65);--gl-card-glow-bottom:rgba(255, 255, 255, 0.50);--gl-card-icon-color:rgba(26, 42, 54, 0.5);--gl-card-text-color:rgba(26, 42, 54, 0.6);--gl-border-subtle:rgba(0, 0, 0, 0.08);--gl-border-medium:rgba(0, 0, 0, 0.12);--gl-border-strong:rgba(0, 0, 0, 0.15);--gl-border-milk:rgba(0, 0, 0, 0.10);--gl-border-warm:color-mix(in srgb, var(--gl-color-primary) 30%, transparent);--gl-border-focus:color-mix(in srgb, var(--gl-color-primary) 50%, transparent);--gl-icon-default:rgba(26, 42, 54, 0.50);--gl-icon-muted:rgba(26, 42, 54, 0.35);--gl-icon-strong:rgba(26, 42, 54, 0.70);--gl-icon-on-primary:var(--gl-color-on-primary, #ffffff);--gl-icon-on-secondary:#1a3a4a;--gl-icon-on-tertiary:rgba(26, 42, 54, 0.50);--gl-shadow-card:0 4px 20px rgba(0, 0, 0, 0.06);--gl-shadow-btn:0 2px 10px rgba(0, 0, 0, 0.06);--gl-shadow-btn-primary:0 4px 16px color-mix(in srgb, var(--gl-color-primary) 25%, transparent),0 2px 6px rgba(0, 0, 0, 0.08);--gl-shadow-glow:0 2px 8px rgba(0, 0, 0, 0.05),0 4px 12px rgba(0, 0, 0, 0.04);--gl-shadow-modal:0 16px 48px rgba(0, 0, 0, 0.12),0 4px 16px rgba(0, 0, 0, 0.08);--gl-shadow-toast:0 4px 20px rgba(0, 0, 0, 0.10);--gl-shadow-focus:0 0 0 3px color-mix(in srgb, var(--gl-color-primary) 25%, transparent);--gl-inset-subtle:inset 0 1px 1px rgba(255, 255, 255, 0.60);--gl-inset-medium:inset 0 1px 1px rgba(255, 255, 255, 0.70);--gl-inset-strong:inset 0 1px 2px rgba(255, 255, 255, 0.80);--gl-inset-milk:inset 0 1px 2px rgba(255, 255, 255, 0.90);--gl-bg-aurora-1:rgba(100, 200, 220, 0.15);--gl-bg-aurora-2:rgba(240, 180, 100, 0.10);--gl-bg-aurora-3:rgba(120, 200, 230, 0.12);--gl-bg-light-streak-1:rgba(140, 230, 220, 0.10);--gl-bg-light-streak-2:rgba(160, 220, 210, 0.08);--gl-bg-warm-glow:rgba(240, 180, 100, 0.08);--gl-placeholder:rgba(26, 42, 54, 0.30);--gl-accordion-body-color:var(--gl-color-text-muted);--gl-toggle-thumb-bg:linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%);--gl-range-track-bg:var(--gl-surface-2);--gl-range-track-border:var(--gl-border-subtle)}[data-density=compact]{--gl-control-height:40px;--gl-control-padding-x:var(--gl-space-sm);--gl-btn-height:40px;--gl-btn-height-sm:32px;--gl-btn-height-lg:48px;--gl-textarea-min-height:88px;--gl-list-item-min-height:48px;--gl-list-item-padding-y:10px;--gl-toggle-width:44px;--gl-toggle-height:26px;--gl-toggle-thumb-size:18px;--gl-check-size:20px;--gl-modal-action-height:44px}[data-surface=solid],[data-surface=solid] [data-theme=dark]{--gl-surface-1:color-mix(in srgb, #ffffff 8%, var(--gl-color-bg-mid));--gl-surface-2:color-mix(in srgb, #ffffff 10%, var(--gl-color-bg-mid));--gl-surface-3:color-mix(in srgb, #ffffff 14%, var(--gl-color-bg-mid));--gl-surface-4:color-mix(in srgb, #ffffff 16%, var(--gl-color-bg-mid));--gl-surface-5:color-mix(in srgb, #ffffff 22%, var(--gl-color-bg-mid));--gl-surface-milk:color-mix(in srgb, #ffffff 55%, var(--gl-color-bg-mid));--gl-surface-milk-strong:color-mix(in srgb, #ffffff 75%, var(--gl-color-bg-mid));--gl-card-glow-top:color-mix(in srgb, #ffffff 32%, var(--gl-color-bg-mid));--gl-card-glow-mid:color-mix(in srgb, #ffffff 22%, var(--gl-color-bg-mid));--gl-card-glow-low:color-mix(in srgb, #ffffff 14%, var(--gl-color-bg-mid));--gl-card-glow-bottom:color-mix(in srgb, #ffffff 8%, var(--gl-color-bg-mid));--gl-toggle-thumb-bg:linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%);--gl-shadow-glow:0 4px 16px rgba(0, 0, 0, 0.15);--gl-blur:0px;--gl-blur-light:0px;--gl-blur-soft:0px;--gl-blur-heavy:0px;--gl-inset-subtle:inset 0 0 0 transparent;--gl-inset-medium:inset 0 0 0 transparent;--gl-inset-strong:inset 0 0 0 transparent;--gl-inset-milk:inset 0 0 0 transparent;--gl-gloss-card:none;--gl-gloss-modal:none;--gl-gloss-progress:none;--gl-range-thumb-border:2px solid transparent}[data-surface=solid] [data-theme=light],[data-surface=solid][data-theme=light],[data-theme=light] [data-surface=solid]{--gl-surface-1:color-mix(in srgb, #ffffff 50%, var(--gl-color-bg-mid));--gl-surface-2:color-mix(in srgb, #ffffff 60%, var(--gl-color-bg-mid));--gl-surface-3:color-mix(in srgb, #ffffff 70%, var(--gl-color-bg-mid));--gl-surface-4:color-mix(in srgb, #ffffff 75%, var(--gl-color-bg-mid));--gl-surface-5:color-mix(in srgb, #ffffff 85%, var(--gl-color-bg-mid));--gl-surface-milk:color-mix(in srgb, #ffffff 85%, var(--gl-color-bg-mid));--gl-surface-milk-strong:color-mix(in srgb, #ffffff 92%, var(--gl-color-bg-mid));--gl-card-glow-top:color-mix(in srgb, #ffffff 90%, var(--gl-color-bg-mid));--gl-card-glow-mid:color-mix(in srgb, #ffffff 78%, var(--gl-color-bg-mid));--gl-card-glow-low:color-mix(in srgb, #ffffff 65%, var(--gl-color-bg-mid));--gl-card-glow-bottom:color-mix(in srgb, #ffffff 50%, var(--gl-color-bg-mid));--gl-shadow-glow:0 2px 8px rgba(0, 0, 0, 0.05),0 4px 12px rgba(0, 0, 0, 0.04);--gl-inset-subtle:inset 0 0 0 transparent;--gl-inset-medium:inset 0 0 0 transparent;--gl-inset-strong:inset 0 0 0 transparent;--gl-inset-milk:inset 0 0 0 transparent}",s="[class*=gl-],[class*=glass-],[class*=glass-]::after,[class*=glass-]::before{box-sizing:border-box}",i=".glass-bg{background:radial-gradient(ellipse at 20% 40%,var(--gl-bg-aurora-1) 0,transparent 55%),radial-gradient(ellipse at 80% 65%,var(--gl-bg-aurora-2) 0,transparent 50%),radial-gradient(ellipse at 50% 20%,var(--gl-bg-aurora-3) 0,transparent 50%),linear-gradient(170deg,var(--gl-color-bg-light) 0,var(--gl-color-bg-mid) 50%,var(--gl-color-bg-dark) 100%);position:relative;min-height:100vh;overflow-x:hidden;font-family:var(--gl-font-family);color:var(--gl-color-text);-webkit-font-smoothing:antialiased;transition:background .4s,color .3s;isolation:isolate}.glass-bg::before{content:'';position:absolute;top:20%;left:-30%;width:160%;height:55%;background:radial-gradient(ellipse at 35% 45%,var(--gl-bg-light-streak-1) 0,transparent 50%),radial-gradient(ellipse at 65% 55%,var(--gl-bg-light-streak-2) 0,transparent 45%);transform:rotate(-8deg);pointer-events:none;z-index:-1}.glass-bg::after{content:'';position:absolute;top:40%;right:-20%;width:70%;height:50%;background:radial-gradient(ellipse at center,var(--gl-bg-warm-glow) 0,transparent 65%);pointer-events:none;z-index:-1}.glass-bg>*{position:relative}.glass-bg--has-tab-bar{padding-bottom:var(--gl-tab-bar-height)}.glass-bg--has-tab-bar-floating{padding-bottom:calc(var(--gl-tab-bar-accessory-size) + var(--gl-tab-bar-floating-bottom) + var(--gl-space-md))}.glass-nav{display:flex;justify-content:space-between;align-items:center;padding:0 var(--gl-space-xs)}.glass-pill{width:46px;height:46px;border-radius:var(--gl-radius-pill);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-strong);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--gl-transition);color:var(--gl-color-text);box-shadow:var(--gl-shadow-glow),var(--gl-inset-medium);outline:0;-webkit-tap-highlight-color:transparent}.glass-pill:hover{background:var(--gl-surface-5);transform:scale(1.05)}.glass-pill:active{transform:scale(.95)}.glass-pill:disabled,.glass-pill[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-pill:disabled:is(:hover,:active),.glass-pill[aria-disabled=true]:is(:hover,:active){background:var(--gl-surface-3);transform:none}.glass-pill ::slotted(svg),.glass-pill svg{width:20px;height:20px;fill:none;stroke:var(--gl-color-text);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.glass-title{text-align:center;color:var(--gl-color-text-heading);font-size:var(--gl-font-size-title);font-weight:var(--gl-font-weight-semibold);line-height:1.3;text-shadow:0 2px 12px rgba(0,0,0,.15);letter-spacing:-.3px}.glass-card{background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-card);padding:var(--gl-space-3xl) var(--gl-space-xl) var(--gl-space-2xl);box-shadow:var(--gl-shadow-card),var(--gl-inset-strong)}.glass-card--glow{position:relative;overflow:hidden;background:linear-gradient(to bottom,var(--gl-card-glow-top) 0,var(--gl-card-glow-mid) 25%,var(--gl-card-glow-low) 55%,var(--gl-card-glow-bottom) 100%)}.glass-card--glow::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:var(--gl-gloss-card);z-index:1}.glass-card__icon{display:flex;align-items:center;justify-content:center;margin:0 auto var(--gl-space-lg)}.glass-card__icon svg{width:64px;height:64px;stroke:var(--gl-card-icon-color);stroke-width:1.2;fill:none}.glass-card__text{color:var(--gl-card-text-color);font-size:var(--gl-font-size-base);font-weight:var(--gl-font-weight-normal);line-height:1.55;text-align:center}.glass-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:var(--gl-btn-height,56px);border:none;border-radius:var(--gl-radius-btn);font-family:var(--gl-font-family);font-size:var(--gl-font-size-btn);font-weight:var(--gl-font-weight-semibold);cursor:pointer;transition:var(--gl-transition);outline:0;-webkit-tap-highlight-color:transparent}a.glass-btn{display:inline-flex;text-decoration:none}.glass-btn[hidden]{display:none}.glass-btn ::slotted(svg),.glass-btn svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-btn--primary{background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-mid) 50%,var(--gl-color-primary-dark) 100%);color:var(--gl-color-on-primary,#fff);border:1px solid var(--gl-border-warm);box-shadow:var(--gl-shadow-btn-primary),var(--gl-inset-strong)}.glass-btn--primary ::slotted(svg),.glass-btn--primary svg{fill:var(--gl-icon-on-primary);stroke:var(--gl-icon-on-primary);stroke-width:0}.glass-btn--primary:hover{transform:translateY(-1px)}.glass-btn--primary:active{transform:translateY(1px)}.glass-btn--secondary{background:linear-gradient(to bottom,var(--gl-surface-milk-strong) 0,var(--gl-surface-milk) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-milk);color:var(--gl-color-text-on-light);box-shadow:var(--gl-shadow-btn),var(--gl-inset-milk)}.glass-btn--secondary ::slotted(svg),.glass-btn--secondary svg{fill:none;stroke:var(--gl-icon-on-secondary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-btn--secondary:hover{transform:translateY(-1px)}.glass-btn--secondary:active{transform:translateY(1px)}.glass-btn--tertiary{background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);color:var(--gl-color-text-muted);box-shadow:0 4px 12px rgba(0,0,0,.1),var(--gl-inset-subtle)}.glass-btn--tertiary ::slotted(svg),.glass-btn--tertiary svg{fill:none;stroke:var(--gl-icon-on-tertiary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-btn--tertiary:hover{background:var(--gl-surface-4);color:var(--gl-color-text);transform:translateY(-1px)}.glass-btn--tertiary:active{transform:translateY(1px)}.glass-btn:disabled,.glass-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-btn:disabled:is(:hover,:active),.glass-btn[aria-disabled=true]:is(:hover,:active){transform:none}.glass-btn--tertiary:disabled:hover,.glass-btn--tertiary[aria-disabled=true]:hover{background:var(--gl-surface-2);color:var(--gl-color-text-muted)}.glass-btn--sm{height:var(--gl-btn-height-sm,44px);font-size:var(--gl-font-size-sm);border-radius:var(--gl-radius-sm)}.glass-btn--lg{height:var(--gl-btn-height-lg,64px);font-size:var(--gl-font-size-lg)}.glass-btn--auto{width:auto;padding:0 var(--gl-space-xl)}.glass-status{background:var(--gl-surface-1);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);padding:var(--gl-space-md) var(--gl-space-lg);display:flex;align-items:center;gap:var(--gl-space-sm);box-shadow:0 4px 12px rgba(0,0,0,.08),var(--gl-inset-subtle)}.glass-status ::slotted(svg),.glass-status svg{width:20px;height:20px;flex-shrink:0;stroke:var(--gl-icon-muted);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-status p{color:var(--gl-color-text-muted);font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-normal);line-height:1.45}.glass-input-group{display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-label{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-strong);padding-inline-start:var(--gl-space-2xs)}.glass-input{width:100%;height:var(--gl-control-height,52px);padding:0 var(--gl-control-padding-x,var(--gl-space-md));background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-input);color:var(--gl-color-text);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);transition:var(--gl-transition);outline:0;box-shadow:var(--gl-inset-subtle);-webkit-tap-highlight-color:transparent}.glass-input::placeholder{color:var(--gl-placeholder)}.glass-input[type=date],.glass-input[type=datetime-local],.glass-input[type=month],.glass-input[type=time]{-webkit-appearance:none;appearance:none}.glass-input::-webkit-date-and-time-value{text-align:start}.glass-input:focus{border-color:var(--gl-border-focus);background:var(--gl-surface-3);box-shadow:var(--gl-shadow-focus),var(--gl-inset-medium)}.glass-input:disabled{opacity:.4;cursor:not-allowed}.glass-input--error{border-color:var(--gl-color-error)}.glass-input--error:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--gl-color-error) 25%,transparent),var(--gl-inset-medium)}.glass-input-wrap{display:grid;grid-template-columns:minmax(0,1fr);align-items:center}.glass-input-wrap>*{grid-area:1/1}.glass-input-wrap>.glass-input{transition:var(--gl-transition),padding 0s}.glass-input-wrap__prefix,.glass-input-wrap__suffix{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--gl-space-2xs);color:var(--gl-color-text-muted);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);white-space:nowrap;pointer-events:none}.glass-input-wrap__prefix{justify-self:start;margin-inline-start:var(--gl-control-padding-x,var(--gl-space-md))}.glass-input-wrap__suffix{justify-self:end;margin-inline-end:var(--gl-control-padding-x,var(--gl-space-md))}.glass-input-wrap__prefix[hidden],.glass-input-wrap__suffix[hidden]{display:none}.glass-input-wrap__prefix :is(:enabled,a[href],[tabindex]):not(:disabled),.glass-input-wrap__suffix :is(:enabled,a[href],[tabindex]):not(:disabled){pointer-events:auto}.glass-input-wrap__prefix ::slotted(svg),.glass-input-wrap__prefix svg,.glass-input-wrap__suffix ::slotted(svg),.glass-input-wrap__suffix svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:var(--gl-icon-muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-input-wrap--prefix>.glass-input{padding-inline-start:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-prefix-size,18px) + var(--gl-space-xs))}.glass-input-wrap--suffix>.glass-input{padding-inline-end:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-suffix-size,18px) + var(--gl-space-xs))}.glass-input-wrap:has(> .glass-input-wrap__prefix:not([hidden]))>.glass-input{padding-inline-start:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-prefix-size,18px) + var(--gl-space-xs))}.glass-input-wrap:has(> .glass-input-wrap__suffix:not([hidden]))>.glass-input{padding-inline-end:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-suffix-size,18px) + var(--gl-space-xs))}.glass-hint{font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted);padding-inline-start:var(--gl-space-2xs)}.glass-hint--error{color:var(--gl-color-error)}.glass-textarea{width:100%;min-height:var(--gl-textarea-min-height,120px);padding:var(--gl-space-md) var(--gl-control-padding-x,var(--gl-space-md));background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-input);color:var(--gl-color-text);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);line-height:1.5;resize:vertical;transition:var(--gl-transition);outline:0;box-shadow:var(--gl-inset-subtle)}.glass-textarea::placeholder{color:var(--gl-placeholder)}.glass-textarea:focus{border-color:var(--gl-border-focus);background:var(--gl-surface-3);box-shadow:var(--gl-shadow-focus),var(--gl-inset-medium)}.glass-select{width:100%;height:var(--gl-control-height,52px);padding:0 var(--gl-space-3xl) 0 var(--gl-control-padding-x,var(--gl-space-md));background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-input);color:var(--gl-color-text);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);transition:var(--gl-transition);outline:0;box-shadow:var(--gl-inset-subtle);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:var(--gl-select-chevron, url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E\"));background-repeat:no-repeat;background-position:right 16px center}.glass-select:dir(rtl){padding:0 var(--gl-control-padding-x,var(--gl-space-md)) 0 var(--gl-space-3xl);background-position:left 16px center}.glass-select:focus{border-color:var(--gl-border-focus);box-shadow:var(--gl-shadow-focus),var(--gl-inset-medium)}.glass-select option{background:var(--gl-color-bg-mid);color:var(--gl-color-text)}.glass-select:disabled,.glass-textarea:disabled{opacity:.4;cursor:not-allowed}.glass-search{position:relative;display:flex;align-items:center}.glass-search__icon{position:absolute;inset-inline-start:var(--gl-space-md);width:18px;height:18px;stroke:var(--gl-icon-muted)!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;fill:none!important;pointer-events:none;z-index:2}.glass-search .glass-input{padding-inline-start:44px;border-radius:var(--gl-radius-full)}.glass-toggle{display:inline-flex;align-items:flex-start;gap:var(--gl-space-sm);cursor:pointer;-webkit-tap-highlight-color:transparent}.glass-toggle__input{position:absolute;z-index:1;opacity:0;cursor:inherit;width:var(--gl-toggle-width,52px);height:var(--gl-toggle-height,30px);margin:0;font:inherit;margin-top:max(0px,calc((1lh - var(--gl-toggle-height,30px))/ 2))}.glass-toggle__track{position:relative;width:var(--gl-toggle-width,52px);height:var(--gl-toggle-height,30px);background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-full);transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle);flex-shrink:0;margin-top:max(0px,calc((1lh - var(--gl-toggle-height,30px))/ 2))}.glass-toggle__thumb{position:absolute;top:calc((var(--gl-toggle-height,30px) - var(--gl-toggle-thumb-size,22px))/ 2 - 1px);left:calc((var(--gl-toggle-height,30px) - var(--gl-toggle-thumb-size,22px))/ 2 - 1px);width:var(--gl-toggle-thumb-size,22px);height:var(--gl-toggle-thumb-size,22px);border-radius:var(--gl-radius-pill);background:var(--gl-toggle-thumb-bg);box-shadow:0 2px 6px rgba(0,0,0,.2),var(--gl-inset-milk);transition:var(--gl-transition)}.glass-toggle__input:checked+.glass-toggle__track{background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border-color:var(--gl-border-warm)}.glass-toggle__input:checked+.glass-toggle__track .glass-toggle__thumb{transform:translateX(calc(var(--gl-toggle-width,52px) - var(--gl-toggle-height,30px)))}.glass-toggle__thumb:dir(rtl){left:auto;right:calc((var(--gl-toggle-height,30px) - var(--gl-toggle-thumb-size,22px))/ 2 - 1px)}.glass-toggle__input:checked+.glass-toggle__track .glass-toggle__thumb:dir(rtl){transform:translateX(calc(var(--gl-toggle-height,30px) - var(--gl-toggle-width,52px)))}.glass-toggle__input:focus-visible+.glass-toggle__track{box-shadow:var(--gl-shadow-focus)}.glass-toggle__input:disabled{cursor:not-allowed}.glass-toggle__input:disabled+.glass-toggle__track,.glass-toggle__input:disabled~.glass-toggle__label{opacity:.45;cursor:not-allowed}.glass-toggle:has(> .glass-toggle__input:disabled){cursor:not-allowed}.glass-toggle__label{font-size:var(--gl-font-size-base);color:var(--gl-color-text);user-select:none;margin-top:max(0px,calc((var(--gl-toggle-height,30px) - 1lh)/ 2))}.glass-checkbox__label:empty,.glass-radio__label:empty,.glass-toggle__label:empty{display:none}.glass-checkbox{display:inline-flex;align-items:flex-start;gap:var(--gl-space-sm);cursor:pointer;-webkit-tap-highlight-color:transparent}.glass-checkbox__input{position:absolute;z-index:1;opacity:0;cursor:inherit;width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);margin:0;font:inherit;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-checkbox__box{width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);border-radius:var(--gl-radius-xs);background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1.5px solid var(--gl-border-medium);display:flex;align-items:center;justify-content:center;transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle);flex-shrink:0;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-checkbox__box svg{width:14px;height:14px;stroke:var(--gl-color-on-primary,#ffffff);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform:scale(.5);transition:var(--gl-transition-fast)}.glass-checkbox__input:checked+.glass-checkbox__box{background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border-color:var(--gl-border-warm)}.glass-checkbox__input:checked+.glass-checkbox__box svg{opacity:1;transform:scale(1)}.glass-checkbox__input:focus-visible+.glass-checkbox__box{box-shadow:var(--gl-shadow-focus)}.glass-checkbox__input:disabled{cursor:not-allowed}.glass-checkbox__input:disabled+.glass-checkbox__box,.glass-checkbox__input:disabled~.glass-checkbox__label{opacity:.45;cursor:not-allowed}.glass-checkbox:has(> .glass-checkbox__input:disabled){cursor:not-allowed}.glass-checkbox__label{font-size:var(--gl-font-size-base);color:var(--gl-color-text);user-select:none;margin-top:max(0px,calc((var(--gl-check-size,24px) - 1lh)/ 2))}.glass-radio{display:inline-flex;align-items:flex-start;gap:var(--gl-space-sm);cursor:pointer;-webkit-tap-highlight-color:transparent}.glass-radio__input{position:absolute;z-index:1;opacity:0;cursor:inherit;width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);margin:0;font:inherit;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-radio__circle{width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);border-radius:var(--gl-radius-pill);background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-soft));border:1.5px solid var(--gl-border-medium);display:flex;align-items:center;justify-content:center;transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle);flex-shrink:0;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-radio__dot{width:10px;height:10px;border-radius:var(--gl-radius-pill);background:#fff;opacity:0;transform:scale(0);transition:var(--gl-transition-fast)}.glass-radio__input:checked+.glass-radio__circle{background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border-color:var(--gl-border-warm)}.glass-radio__input:checked+.glass-radio__circle .glass-radio__dot{opacity:1;transform:scale(1)}.glass-radio__input:focus-visible+.glass-radio__circle{box-shadow:var(--gl-shadow-focus)}.glass-radio__input:disabled{cursor:not-allowed}.glass-radio__input:disabled+.glass-radio__circle,.glass-radio__input:disabled~.glass-radio__label{opacity:.45;cursor:not-allowed}.glass-radio:has(> .glass-radio__input:disabled){cursor:not-allowed}.glass-radio__label{font-size:var(--gl-font-size-base);color:var(--gl-color-text);user-select:none;margin-top:max(0px,calc((var(--gl-check-size,24px) - 1lh)/ 2))}.glass-range-group{display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-range-header{display:flex;justify-content:space-between;align-items:baseline}.glass-range-value{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-primary);font-variant-numeric:tabular-nums}.glass-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:var(--gl-radius-full);background:var(--gl-range-track-bg);border:1px solid var(--gl-range-track-border);outline:0;cursor:pointer}.glass-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:26px;height:26px;border-radius:var(--gl-radius-pill);background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border:var(--gl-range-thumb-border);box-shadow:0 2px 8px color-mix(in srgb,var(--gl-color-primary-mid) 35%,transparent),var(--gl-inset-strong);margin-top:-2px;cursor:pointer;transition:var(--gl-transition)}.glass-range::-webkit-slider-thumb:hover{transform:scale(1.1)}.glass-range::-moz-range-thumb{width:26px;height:26px;border-radius:var(--gl-radius-pill);background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border:var(--gl-range-thumb-border);box-shadow:0 2px 8px color-mix(in srgb,var(--gl-color-primary-mid) 35%,transparent);cursor:pointer}.glass-range::-moz-range-track{height:6px;border-radius:var(--gl-radius-full);background:var(--gl-range-track-bg);border:1px solid var(--gl-range-track-border)}.glass-range:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-range:disabled{opacity:.4;cursor:not-allowed}.glass-range:disabled::-webkit-slider-thumb{cursor:not-allowed;transform:none}.glass-range:disabled::-moz-range-thumb{cursor:not-allowed}.glass-progress{width:100%;display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-progress__header{display:flex;justify-content:space-between;align-items:baseline}.glass-progress__label{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-strong)}.glass-progress__value{font-size:var(--gl-font-size-xs);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-muted);font-variant-numeric:tabular-nums}.glass-progress__track{width:100%;height:8px;border-radius:var(--gl-radius-full);background:var(--gl-surface-2);border:1px solid var(--gl-border-subtle);overflow:hidden;box-shadow:var(--gl-inset-subtle)}.glass-progress__fill{height:100%;border-radius:var(--gl-radius-full);background:linear-gradient(90deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--gl-color-primary) 30%,transparent),var(--gl-inset-strong);transition:width .5s cubic-bezier(.4, 0, .2, 1);position:relative}.glass-progress__fill::after{content:'';position:absolute;top:0;left:0;right:0;height:50%;border-radius:var(--gl-radius-full);background:var(--gl-gloss-progress)}.glass-progress--sm .glass-progress__track{height:4px}.glass-progress--lg .glass-progress__track{height:12px}.glass-progress--success .glass-progress__fill{background:linear-gradient(90deg,var(--gl-color-success) 0,var(--gl-color-success-dark,#2da44e) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--gl-color-success) 30%,transparent),var(--gl-inset-strong)}.glass-progress--error .glass-progress__fill{background:linear-gradient(90deg,var(--gl-color-error) 0,var(--gl-color-error-dark,#d63027) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--gl-color-error) 30%,transparent),var(--gl-inset-strong)}.glass-progress__fill:dir(rtl){scale:-1 1}.glass-modal-overlay{position:fixed;inset:0;background:var(--gl-surface-overlay);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));display:flex;align-items:center;justify-content:center;padding:var(--gl-space-lg);z-index:1000;opacity:0;pointer-events:none;transition:var(--gl-transition-modal);font-family:var(--gl-font-family);-webkit-font-smoothing:antialiased}.glass-modal-overlay.is-active{opacity:1;pointer-events:auto}dialog.glass-modal-overlay{width:auto;height:auto;max-width:none;max-height:none;margin:0;border:0;color:inherit}dialog.glass-modal-overlay:not([open]){display:none}dialog.glass-modal-overlay::backdrop{background:0 0}.glass-modal{width:100%;max-width:var(--gl-modal-max-width,340px);background:linear-gradient(to bottom,var(--gl-card-glow-top) 0,var(--gl-card-glow-bottom) 100%);backdrop-filter:blur(var(--gl-blur-heavy));-webkit-backdrop-filter:blur(var(--gl-blur-heavy));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-card);overflow:hidden;box-shadow:var(--gl-shadow-modal);transform:scale(.9) translateY(20px);transition:var(--gl-transition-modal);position:relative}.glass-modal-overlay.is-active .glass-modal{transform:scale(1) translateY(0)}.glass-modal::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:var(--gl-gloss-modal)}.glass-modal__header{padding:var(--gl-space-xl) var(--gl-space-xl) var(--gl-space-sm);text-align:center}.glass-modal__title{font-size:var(--gl-font-size-modal);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text)}.glass-modal__body{padding:var(--gl-space-sm) var(--gl-space-xl) var(--gl-space-xl);text-align:center}.glass-modal__body p{color:var(--gl-color-text-muted);font-size:var(--gl-font-size-base);line-height:1.55}.glass-modal__footer{display:flex;border-top:1px solid var(--gl-border-subtle)}.glass-modal__action{flex:1;height:var(--gl-modal-action-height,52px);background:0 0;border:none;font-family:var(--gl-font-family);font-size:var(--gl-font-size-btn);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text-muted);cursor:pointer;transition:var(--gl-transition-fast);outline:0}.glass-modal__action:hover{background:var(--gl-surface-1)}.glass-modal__action:disabled{opacity:.45;cursor:not-allowed}.glass-modal__action:disabled:hover{background:0 0}.glass-modal__action+.glass-modal__action{border-inline-start:1px solid var(--gl-border-subtle)}.glass-modal__action--primary{color:var(--gl-color-primary);font-weight:var(--gl-font-weight-semibold)}.glass-modal__action--danger{color:var(--gl-color-error);font-weight:var(--gl-font-weight-semibold)}.glass-toast{position:fixed;top:var(--gl-toast-top,var(--gl-space-4xl));left:50%;transform:translateX(-50%) translateY(-20px);min-width:280px;max-width:340px;padding:var(--gl-space-md) var(--gl-space-lg);background:linear-gradient(to bottom,var(--gl-surface-4) 0,var(--gl-surface-2) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1px solid var(--gl-border-medium);border-radius:var(--gl-radius-btn);display:flex;align-items:center;gap:var(--gl-space-sm);box-shadow:var(--gl-shadow-toast),var(--gl-inset-medium);z-index:1100;opacity:0;pointer-events:none;transition:var(--gl-transition-modal);font-family:var(--gl-font-family);-webkit-font-smoothing:antialiased}.glass-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}.glass-toast__icon{width:22px;height:22px;flex-shrink:0;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-toast__icon ::slotted(svg){display:block;width:100%;height:100%}.glass-toast--success .glass-toast__icon{stroke:var(--gl-color-success)}.glass-toast--error .glass-toast__icon{stroke:var(--gl-color-error)}.glass-toast--warning .glass-toast__icon{stroke:var(--gl-color-warning)}.glass-toast__text{flex:1 1 auto;min-width:0;font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text);line-height:1.4}.glass-toast:has(.glass-toast__action){width:max-content;max-width:min(480px,calc(100% - 2 * var(--gl-space-md)))}.glass-toast--success{--gl-toast-action-surface:var(--gl-color-success-surface);--gl-toast-action-border:var(--gl-color-success-border);--gl-toast-action-ink:var(--gl-color-success-on-surface)}.glass-toast--error{--gl-toast-action-surface:var(--gl-color-error-surface);--gl-toast-action-border:var(--gl-color-error-border);--gl-toast-action-ink:var(--gl-color-error-on-surface)}.glass-toast--warning{--gl-toast-action-surface:var(--gl-color-warning-surface);--gl-toast-action-border:var(--gl-color-warning-border);--gl-toast-action-ink:var(--gl-color-warning-on-surface)}.glass-toast__action,.glass-toast__close{-webkit-appearance:none;appearance:none;flex:none;position:relative;font:inherit;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-toast__action{height:32px;padding:0 14px;border:1px solid var(--gl-toast-action-border,var(--gl-color-primary-border));border-radius:var(--gl-radius-full);background:linear-gradient(var(--gl-toast-action-surface,var(--gl-color-primary-surface)),var(--gl-toast-action-surface,var(--gl-color-primary-surface))),linear-gradient(var(--gl-state-scrim),var(--gl-state-scrim)),var(--gl-state-scrim);color:var(--gl-toast-action-ink,var(--gl-color-primary-on-surface));font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-semibold);white-space:nowrap}.glass-toast__action::after{content:\"\";position:absolute;inset:-6px 0}.glass-toast__action:hover{box-shadow:inset 0 0 0 100px color-mix(in srgb,var(--gl-toast-action-ink,var(--gl-color-primary-on-surface)) 10%,transparent)}.glass-toast__action:active{transform:scale(.96)}.glass-toast__close{width:28px;height:28px;margin-block:0;margin-inline:-4px -8px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:0 0;color:var(--gl-color-text-muted)}.glass-toast__close::after{content:\"\";position:absolute;inset:-8px}.glass-toast__close:hover{background:var(--gl-surface-3);color:var(--gl-color-text)}.glass-toast__close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.glass-toast__action:focus-visible,.glass-toast__close:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-tab-bar{position:fixed;bottom:0;left:0;right:0;height:var(--gl-tab-bar-height);background:linear-gradient(to bottom,var(--gl-surface-3) 0,var(--gl-surface-1) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border-top:1px solid var(--gl-border-subtle);display:flex;justify-content:space-around;align-items:flex-start;padding-top:var(--gl-space-xs);padding-bottom:env(safe-area-inset-bottom,8px);z-index:900;box-shadow:0 -4px 20px rgba(0,0,0,.08),var(--gl-inset-subtle)}.glass-tab-bar__item{display:flex;flex-direction:column;align-items:center;gap:var(--gl-space-2xs);padding:var(--gl-space-2xs) var(--gl-space-sm);background:0 0;border:none;cursor:pointer;transition:var(--gl-transition);outline:0;-webkit-tap-highlight-color:transparent;min-width:60px}.glass-tab-bar__icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;position:relative}.glass-tab-bar__icon svg{width:24px;height:24px;fill:none;stroke:var(--gl-icon-muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:var(--gl-transition)}.glass-tab-bar__label{font-size:10px;font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-muted);transition:var(--gl-transition);letter-spacing:.2px}.glass-tab-bar__item.is-active .glass-tab-bar__icon svg{stroke:var(--gl-color-primary);filter:drop-shadow(0 0 6px color-mix(in srgb, var(--gl-color-primary) 35%, transparent))}.glass-tab-bar__item.is-active .glass-tab-bar__label{color:var(--gl-color-primary)}.glass-tab-bar__item.is-active .glass-tab-bar__icon::after{content:'';position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:var(--gl-radius-pill);background:var(--gl-color-primary);box-shadow:0 0 6px color-mix(in srgb,var(--gl-color-primary) 50%,transparent)}.glass-tab-bar__item:not(.is-active):hover .glass-tab-bar__icon svg{stroke:var(--gl-icon-default)}.glass-tab-bar__item:not(.is-active):hover .glass-tab-bar__label{color:var(--gl-icon-default)}.glass-tab-bar__badge{position:absolute;top:-4px;inset-inline-end:-8px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--gl-radius-full);background:var(--gl-color-error-dark,#d63027);color:#fff;font-size:10px;font-weight:var(--gl-font-weight-semibold);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px color-mix(in srgb,var(--gl-color-error) 40%,transparent)}.glass-tab-bar-dock{position:fixed;left:50%;bottom:calc(var(--gl-tab-bar-floating-bottom) + env(safe-area-inset-bottom,0px));transform:translateX(-50%);display:flex;align-items:center;gap:var(--gl-tab-bar-floating-gap);z-index:900;max-width:calc(100vw - 2 * var(--gl-space-md))}.glass-tab-bar-dock--accessory-left{flex-direction:row-reverse}.glass-tab-bar.glass-tab-bar--floating{position:static;left:auto;right:auto;bottom:auto;height:auto;width:max-content;padding:var(--gl-tab-bar-floating-padding);border-radius:var(--gl-tab-bar-floating-radius);border:1px solid var(--gl-border-subtle);background:linear-gradient(to bottom,var(--gl-surface-3) 0,var(--gl-surface-1) 100%);box-shadow:0 8px 32px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.08),var(--gl-inset-subtle);display:flex;justify-content:flex-start;align-items:center;gap:var(--gl-space-2xs)}.glass-tab-bar--floating .glass-tab-bar__item{position:relative;border-radius:var(--gl-radius-full);padding:var(--gl-space-2xs) var(--gl-space-sm);min-width:auto;align-items:center}.glass-tab-bar--floating .glass-tab-bar__item>*{position:relative;z-index:1}.glass-tab-bar--floating .glass-tab-bar__item.is-active::before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at center,color-mix(in srgb,var(--gl-tab-bar-spotlight-color) 28%,transparent) 0,color-mix(in srgb,var(--gl-tab-bar-spotlight-color) 10%,transparent) 55%,transparent 100%);pointer-events:none;z-index:0}.glass-tab-bar--floating .glass-tab-bar__item.is-active .glass-tab-bar__icon::after{display:none}.glass-tab-bar__accessory{width:var(--gl-tab-bar-accessory-size);height:var(--gl-tab-bar-accessory-size);border-radius:var(--gl-radius-pill);background:linear-gradient(to bottom,var(--gl-surface-3) 0,var(--gl-surface-1) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1px solid var(--gl-border-subtle);box-shadow:0 8px 32px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.08),var(--gl-inset-subtle);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--gl-transition);outline:0;padding:0;-webkit-tap-highlight-color:transparent;flex-shrink:0}.glass-tab-bar__accessory ::slotted(svg),.glass-tab-bar__accessory svg{width:22px;height:22px;fill:none;stroke:var(--gl-icon-default);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:var(--gl-transition)}.glass-tab-bar__accessory:where(:not(:disabled,[aria-disabled=true])):hover{transform:translateY(-1px)}.glass-tab-bar__accessory:where(:not(:disabled,[aria-disabled=true])):hover ::slotted(svg),.glass-tab-bar__accessory:where(:not(:disabled,[aria-disabled=true])):hover svg{stroke:var(--gl-icon-strong)}.glass-tab-bar__accessory:disabled,.glass-tab-bar__accessory[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-tab-bar__accessory:focus-visible{box-shadow:0 8px 32px rgba(0,0,0,.18),var(--gl-shadow-focus),var(--gl-inset-subtle)}.glass-tab-bar__accessory--accent{background:linear-gradient(135deg,var(--gl-color-primary) 0,color-mix(in srgb,var(--gl-color-primary) 70%,transparent) 100%);border-color:color-mix(in srgb,var(--gl-color-primary) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--gl-color-primary) 35%,transparent),var(--gl-inset-medium)}.glass-tab-bar__accessory--accent ::slotted(svg),.glass-tab-bar__accessory--accent svg{stroke:var(--gl-color-on-primary,#ffffff)}.glass-tab-bar__accessory--accent:hover ::slotted(svg),.glass-tab-bar__accessory--accent:hover svg{stroke:var(--gl-color-on-primary,#ffffff)}.glass-tab-bar__accessory--success{background:linear-gradient(135deg,var(--gl-color-success) 0,color-mix(in srgb,var(--gl-color-success) 70%,transparent) 100%);border-color:color-mix(in srgb,var(--gl-color-success) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--gl-color-success) 35%,transparent),var(--gl-inset-medium)}.glass-tab-bar__accessory--success ::slotted(svg),.glass-tab-bar__accessory--success svg{stroke:var(--gl-color-on-success,#ffffff)}.glass-tab-bar__accessory--error{background:linear-gradient(135deg,var(--gl-color-error) 0,color-mix(in srgb,var(--gl-color-error) 70%,transparent) 100%);border-color:color-mix(in srgb,var(--gl-color-error) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--gl-color-error) 35%,transparent),var(--gl-inset-medium)}.glass-tab-bar__accessory--error ::slotted(svg),.glass-tab-bar__accessory--error svg{stroke:var(--gl-color-on-error,#ffffff)}.glass-accordion{display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-accordion__item{background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);overflow:hidden;transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle)}.glass-accordion__item.is-open{background:var(--gl-surface-3);border-color:var(--gl-border-medium);box-shadow:0 4px 16px rgba(0,0,0,.1),var(--gl-inset-medium)}.glass-accordion__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--gl-space-sm);padding:var(--gl-space-md) var(--gl-space-lg);background:0 0;border:none;cursor:pointer;font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text);text-align:start;outline:0;transition:var(--gl-transition);-webkit-tap-highlight-color:transparent}.glass-accordion__trigger:hover{color:var(--gl-color-primary)}.glass-accordion__trigger-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.glass-accordion__trigger-icon svg{width:18px;height:18px;fill:none;stroke:var(--gl-icon-default);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s cubic-bezier(.4, 0, .2, 1)}.glass-accordion__item.is-open .glass-accordion__trigger-icon svg{transform:rotate(180deg);stroke:var(--gl-color-primary)}.glass-accordion__content{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.4, 0, .2, 1)}.glass-accordion__item.is-open .glass-accordion__content{max-height:500px}.glass-accordion__body{padding:0 var(--gl-space-lg) var(--gl-space-lg);color:var(--gl-accordion-body-color);font-size:var(--gl-font-size-sm);line-height:1.6}.glass-badge{--gl-badge-accent:var(--gl-color-primary);--gl-badge-accent-text:var(--gl-color-primary-on-surface, var(--gl-color-primary));display:inline-flex;align-items:center;gap:var(--gl-space-2xs);padding:var(--gl-space-2xs) var(--gl-space-sm);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-full);font-size:var(--gl-font-size-xs);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text);box-shadow:var(--gl-inset-subtle)}.glass-badge--primary{--gl-badge-accent:var(--gl-color-primary);--gl-badge-accent-text:var(--gl-color-primary-on-surface, var(--gl-color-primary));background:linear-gradient(135deg,var(--gl-color-primary-surface,rgba(245,166,35,.25)) 0,color-mix(in srgb,var(--gl-color-primary-dark) 20%,transparent) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-primary-border,var(--gl-border-warm));color:var(--gl-color-primary-on-surface,var(--gl-color-primary))}.glass-badge--success{--gl-badge-accent:var(--gl-color-success);--gl-badge-accent-text:var(--gl-color-success-on-surface, var(--gl-color-success));background:linear-gradient(var(--gl-color-success-surface,rgba(52,199,89,.15)) 0,var(--gl-color-success-surface,rgba(52,199,89,.15)) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-success-border,rgba(52,199,89,.3));color:var(--gl-color-success-on-surface,var(--gl-color-success))}.glass-badge--error{--gl-badge-accent:var(--gl-color-error);--gl-badge-accent-text:var(--gl-color-error-on-surface, var(--gl-color-error));background:linear-gradient(var(--gl-color-error-surface,rgba(255,59,48,.15)) 0,var(--gl-color-error-surface,rgba(255,59,48,.15)) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-error-border,rgba(255,59,48,.3));color:var(--gl-color-error-on-surface,var(--gl-color-error))}.glass-badge--warning{--gl-badge-accent:var(--gl-color-warning);--gl-badge-accent-text:var(--gl-color-warning-on-surface, var(--gl-color-warning));background:linear-gradient(var(--gl-color-warning-surface,rgba(255,204,0,.15)) 0,var(--gl-color-warning-surface,rgba(255,204,0,.15)) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-warning-border,rgba(255,204,0,.3));color:var(--gl-color-warning-on-surface,var(--gl-color-warning))}.glass-badge--interactive{font-family:inherit;-webkit-appearance:none;appearance:none;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-badge--interactive:hover{border-color:color-mix(in srgb,var(--gl-badge-accent) 45%,var(--gl-border-subtle));box-shadow:var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 12%,transparent)}.glass-badge--interactive:active{transform:scale(.96)}.glass-badge--interactive:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-inset-subtle)}.glass-badge--selected{border-color:color-mix(in srgb,var(--gl-badge-accent) 55%,transparent);color:var(--gl-badge-accent-text);box-shadow:var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 22%,transparent)}.glass-badge--interactive.glass-badge--selected:hover{box-shadow:var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 30%,transparent)}.glass-badge--interactive.glass-badge--selected:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 22%,transparent)}.glass-divider{height:1px;border:none;background:linear-gradient(90deg,transparent 0,var(--gl-border-subtle) 20%,var(--gl-border-medium) 50%,var(--gl-border-subtle) 80%,transparent 100%)}.glass-avatar{width:44px;height:44px;border-radius:var(--gl-radius-pill);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1.5px solid var(--gl-border-strong);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:var(--gl-shadow-glow),var(--gl-inset-medium);flex-shrink:0;font-size:var(--gl-font-size-btn);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text)}.glass-avatar ::slotted(img),.glass-avatar img{width:100%;height:100%;object-fit:cover}.glass-avatar--sm{width:32px;height:32px;font-size:var(--gl-font-size-xs)}.glass-avatar--lg{width:56px;height:56px;font-size:var(--gl-font-size-lg)}.glass-theme-toggle{width:46px;height:46px;border-radius:var(--gl-radius-pill);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-strong);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--gl-transition);box-shadow:var(--gl-shadow-glow),var(--gl-inset-medium);outline:0;-webkit-tap-highlight-color:transparent}.glass-theme-toggle:hover{background:var(--gl-surface-5);transform:scale(1.05)}.glass-theme-toggle:active{transform:scale(.95)}.glass-theme-toggle svg{width:20px;height:20px;fill:none;stroke:var(--gl-color-text);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-theme-toggle .icon-sun{display:none}.glass-theme-toggle .icon-moon,[data-theme=light] .glass-theme-toggle .icon-sun{display:block}[data-theme=light] .glass-theme-toggle .icon-moon{display:none}.glass-popover-anchor{position:relative;display:inline-block}.glass-popover{position:absolute;top:calc(100% + var(--gl-space-xs));left:50%;transform:translateX(-50%) translateY(-4px) scale(.96);transform-origin:top center;min-width:220px;padding:var(--gl-space-sm);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1px solid var(--gl-border-medium);border-radius:var(--gl-radius-card);box-shadow:var(--gl-shadow-card),var(--gl-inset-strong);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .18s cubic-bezier(.2,.8,.2,1),visibility 0s linear .18s;z-index:50}.glass-popover.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0) scale(1);transition:opacity .18s,transform .22s cubic-bezier(.2,.8,.2,1),visibility linear}.glass-popover--top{top:auto;bottom:calc(100% + var(--gl-space-xs));transform-origin:bottom center}.glass-popover--start{inset-inline-start:0;inset-inline-end:auto;transform:translateY(-4px) scale(.96);transform-origin:top left}.glass-popover--start:dir(rtl){transform-origin:top right}.glass-popover--start.is-open{transform:translateY(0) scale(1)}.glass-popover--end{inset-inline-start:auto;inset-inline-end:0;transform:translateY(-4px) scale(.96);transform-origin:top right}.glass-popover--end:dir(rtl){transform-origin:top left}.glass-popover--end.is-open{transform:translateY(0) scale(1)}.glass-list{background:var(--gl-surface-1);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);box-shadow:0 4px 12px rgba(0,0,0,.08),var(--gl-inset-subtle);overflow:hidden;display:flex;flex-direction:column;width:100%;margin:0;padding:0;list-style:none}.glass-list--flush{border-radius:0;border-left:none;border-right:none;margin-left:calc(var(--gl-space-lg) * -1);margin-right:calc(var(--gl-space-lg) * -1)}.glass-list--bare{background:0 0;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;box-shadow:none}.glass-list__section-header{padding:var(--gl-space-xs) var(--gl-space-lg) var(--gl-space-2xs);font-size:var(--gl-font-size-xs);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-muted);text-transform:uppercase;letter-spacing:.3px}.glass-list__item{position:relative;display:flex;align-items:center;gap:var(--gl-space-sm);padding:var(--gl-list-item-padding-y,var(--gl-space-md)) var(--gl-space-lg);min-height:var(--gl-list-item-min-height,56px);color:var(--gl-color-text);font-size:var(--gl-font-size-base);text-decoration:none;background:0 0;border:none;width:100%;text-align:start;font-family:inherit;list-style:none}.glass-list__item:not(:last-child)::after{content:'';position:absolute;inset-inline-start:calc(var(--gl-space-lg) + 28px + var(--gl-space-sm));inset-inline-end:var(--gl-space-lg);bottom:0;height:1px;background:var(--gl-border-subtle);pointer-events:none}.glass-list__item:not(:has(.glass-list__leading:not([hidden]))):not(:last-child)::after{inset-inline-start:var(--gl-space-lg)}.glass-list__item:has(.glass-list__leading--lg:not([hidden])):not(:last-child)::after{inset-inline-start:calc(var(--gl-space-lg) + 40px + var(--gl-space-sm))}.glass-list__item--center{justify-content:center;text-align:center;white-space:var(--gl-list-title-white-space,nowrap);overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.glass-list__item--center>.glass-list__title{white-space:var(--gl-list-title-white-space,nowrap);overflow:hidden;text-overflow:ellipsis}.glass-list__item--interactive{cursor:pointer;transition:background .15s}.glass-list__item--interactive:focus-visible,.glass-list__item--interactive:hover{background:var(--gl-surface-2);outline:0}.glass-list__item--interactive:active{background:var(--gl-surface-3)}.glass-list__item--interactive:disabled,.glass-list__item--interactive[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-list__item--interactive:disabled:is(:hover,:active),.glass-list__item--interactive[aria-disabled=true]:is(:hover,:active){background:0 0}.glass-list__item--danger{color:var(--gl-color-error)}.glass-list__item--danger .glass-list__leading,.glass-list__item--danger .glass-list__title{color:inherit}.glass-list__item--accent{color:var(--gl-color-primary)}.glass-list__item--accent .glass-list__leading,.glass-list__item--accent .glass-list__title{color:inherit}.glass-list__leading{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--gl-icon-strong)}.glass-list__leading[hidden],.glass-list__trailing[hidden]{display:none}.glass-list__leading ::slotted(svg),.glass-list__leading svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-list__leading--lg{width:40px;height:40px;border-radius:var(--gl-radius-xs);overflow:hidden}.glass-list__leading--lg ::slotted(svg),.glass-list__leading--lg svg{width:32px;height:32px}.glass-list__leading--lg ::slotted(img),.glass-list__leading--lg img{width:100%;height:100%;object-fit:cover;display:block}.glass-list__content{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:2px;overflow:hidden}.glass-list__title{font-size:var(--gl-font-size-base);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text);white-space:var(--gl-list-title-white-space,nowrap);overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.glass-list__subtitle{font-size:var(--gl-font-size-sm);color:var(--gl-color-text-muted);white-space:var(--gl-list-subtitle-white-space,nowrap);overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.glass-list__subtitle--wrap{white-space:normal;display:-webkit-box;-webkit-line-clamp:var(--gl-list-subtitle-lines,3);-webkit-box-orient:vertical;overflow:hidden}.glass-list__subtitle[hidden]{display:none}.glass-list__trailing{flex-shrink:0;display:flex;align-items:center;gap:var(--gl-space-xs);color:var(--gl-color-text-muted);font-size:var(--gl-font-size-sm)}.glass-list__trailing ::slotted(svg),.glass-list__trailing svg{width:18px;height:18px;stroke:var(--gl-icon-muted);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-list__value{color:var(--gl-color-text-muted);font-size:var(--gl-font-size-sm);white-space:nowrap}.glass-skeleton{display:flex;flex-direction:column;gap:10px}.glass-skeleton__line{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--gl-surface-1) 0,var(--gl-surface-4) 50%,var(--gl-surface-1) 100%);background-size:200% 100%;animation:1.4s ease-in-out infinite glass-skeleton}.glass-skeleton__line--title{height:18px}@keyframes glass-skeleton{from{background-position:200% 0}to{background-position:-200% 0}}.glass-table-wrap{overflow-x:auto;border-radius:var(--gl-radius-sm)}.glass-table{width:100%;border-collapse:collapse;font-size:var(--gl-font-size-sm);color:var(--gl-color-text)}.glass-table th{text-align:start;padding:8px 10px;white-space:nowrap;font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text-muted);border-bottom:1px solid var(--gl-border-medium)}.glass-table td{padding:9px 10px;vertical-align:top;border-bottom:1px solid var(--gl-border-subtle)}.glass-table tbody tr:last-child td{border-bottom:0}.glass-table tbody tr:hover td{background:var(--gl-surface-1)}.glass-table__num{text-align:end;font-variant-numeric:tabular-nums}.glass-table__muted{color:var(--gl-color-text-muted)}.glass-prose{font-size:var(--gl-font-size-base);line-height:1.6;color:var(--gl-color-text)}.glass-prose>:first-child{margin-top:0}.glass-prose>:last-child{margin-bottom:0}.glass-prose h1,.glass-prose h2,.glass-prose h3{color:var(--gl-color-text-heading);line-height:1.25;margin:1.2em 0 .4em}.glass-prose h1{font-size:var(--gl-font-size-title)}.glass-prose h2{font-size:var(--gl-font-size-modal)}.glass-prose h3{font-size:var(--gl-font-size-lg)}.glass-prose blockquote,.glass-prose ol,.glass-prose p,.glass-prose pre,.glass-prose table,.glass-prose ul{margin:0 0 .9em}.glass-prose ol,.glass-prose ul{padding-inline-start:1.3em}.glass-prose strong{color:var(--gl-color-text-heading)}.glass-prose a{color:var(--gl-color-primary);text-decoration:underline;text-underline-offset:2px}.glass-prose code{font-family:ui-monospace,'SF Mono',Menlo,monospace;font-size:.9em;background:var(--gl-surface-2);padding:1px 5px;border-radius:4px}.glass-prose pre{padding:12px 14px;overflow-x:auto;background:var(--gl-surface-1);border-radius:var(--gl-radius-sm)}.glass-prose pre code{background:0 0;padding:0}.glass-prose blockquote{padding:8px 14px;border-inline-start:3px solid var(--gl-color-primary);background:var(--gl-surface-1);border-start-start-radius:0;border-end-start-radius:0;border-start-end-radius:var(--gl-radius-xs);border-end-end-radius:var(--gl-radius-xs)}.glass-prose img{max-width:100%;height:auto;border-radius:var(--gl-radius-sm)}.glass-prose hr{height:1px;border:0;margin:1.2em 0;background:var(--gl-border-subtle)}.glass-prose table{width:100%;border-collapse:collapse}.glass-prose td,.glass-prose th{padding:6px 8px;text-align:start;border-bottom:1px solid var(--gl-border-subtle)}.glass-segmented{display:inline-flex;gap:4px;padding:4px;max-width:100%;background:var(--gl-surface-1);border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);box-shadow:var(--gl-inset-subtle)}.glass-segmented--full{display:flex}.glass-segmented--full .glass-segmented__item{flex:1 1 0}.glass-segmented--scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.glass-segmented--scroll::-webkit-scrollbar{display:none}.glass-segmented--wrap{flex-wrap:wrap}.glass-segmented__item{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:0;border-radius:var(--gl-radius-sm);background:0 0;color:var(--gl-color-text-muted);font-family:inherit;font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);white-space:nowrap;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-segmented__item:hover{color:var(--gl-color-text)}.glass-segmented__item[aria-pressed=true]{background:var(--gl-surface-5);color:var(--gl-color-text-heading);box-shadow:var(--gl-shadow-btn)}.glass-segmented__item:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-segmented__item[aria-pressed=true]:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-shadow-btn)}.glass-segmented__item:disabled{opacity:.45;cursor:not-allowed}.glass-segmented__dot{width:10px;height:10px;border-radius:50%;background:var(--gl-segmented-tone,currentColor)}.glass-segmented__item--success{--gl-segmented-tone:var(--gl-color-success)}.glass-segmented__item--warning{--gl-segmented-tone:var(--gl-color-warning)}.glass-segmented__item--error{--gl-segmented-tone:var(--gl-color-error)}.glass-steps{display:flex;align-items:center;gap:6px;margin:0;padding:0;list-style:none;min-width:0;container-type:inline-size}.glass-steps__item{display:flex;align-items:center;gap:6px;flex:0 1 auto;min-width:0;font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted);white-space:nowrap}.glass-steps__num{flex:none;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gl-border-medium);font-size:11px;font-weight:var(--gl-font-weight-semibold)}.glass-steps__num svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.glass-steps__label{min-width:0;overflow:hidden;text-overflow:ellipsis}.glass-steps__item--done .glass-steps__num{background:var(--gl-color-success-surface);border-color:var(--gl-color-success-border);color:var(--gl-color-success-on-surface)}.glass-steps__item--current{color:var(--gl-color-text-heading)}.glass-steps__item--current .glass-steps__num{background:var(--gl-color-primary);border-color:transparent;color:var(--gl-color-on-primary)}.glass-steps__line{flex:1 1 8px;min-width:8px;height:1px;background:var(--gl-border-subtle)}@container (max-width:360px){.glass-steps__label{display:none}.glass-steps__item--current .glass-steps__label{display:inline}}.glass-sheet-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;background:var(--gl-surface-overlay);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));font-family:var(--gl-font-family);-webkit-font-smoothing:antialiased;opacity:0;transition:var(--gl-transition-modal);transition-property:opacity}.glass-sheet-overlay[hidden]{display:none}.glass-sheet-overlay.is-active{opacity:1}.glass-sheet{width:min(100%,560px);max-height:88dvh;overflow:auto;padding:8px var(--gl-space-lg) calc(var(--gl-space-lg) + env(safe-area-inset-bottom,0px));background:linear-gradient(to bottom,var(--gl-card-glow-top) 0,var(--gl-card-glow-bottom) 100%);backdrop-filter:blur(var(--gl-blur-heavy));-webkit-backdrop-filter:blur(var(--gl-blur-heavy));color:var(--gl-color-text);border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-card) var(--gl-radius-card) 0 0;box-shadow:var(--gl-shadow-modal)}.glass-sheet-overlay .glass-sheet{transform:translateY(100%);transition:var(--gl-transition-modal);transition-property:transform}.glass-sheet-overlay.is-active .glass-sheet{transform:translateY(0)}.glass-sheet--inline{border-radius:var(--gl-radius-card);box-shadow:var(--gl-shadow-card)}.glass-sheet__grip{width:40px;height:4px;margin:4px auto 12px;border-radius:2px;background:var(--gl-border-strong)}.glass-sheet__title{margin:0 0 8px;font-size:var(--gl-font-size-modal);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-heading)}.glass-sheet__body{font-size:var(--gl-font-size-base);line-height:1.55}.glass-sheet__actions{display:flex;flex-direction:column;gap:8px;margin-top:16px}@media (prefers-reduced-motion:reduce){.glass-skeleton__line{animation:none}.glass-sheet-overlay,.glass-sheet-overlay .glass-sheet{transition:none}}.glass-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 16px;text-align:center}.glass-empty__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--gl-surface-2);color:var(--gl-icon-default)}.glass-empty__icon ::slotted(svg),.glass-empty__icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-empty__title{margin:4px 0 0;font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-heading)}.glass-empty__text{margin:0;max-width:38ch;font-size:var(--gl-font-size-sm);line-height:1.55;color:var(--gl-color-text-muted)}.glass-empty__action{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px}.glass-date-strip{display:flex;gap:6px;padding:4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.glass-date-strip::-webkit-scrollbar{display:none}.glass-date-strip__day{-webkit-appearance:none;appearance:none;flex:1 0 44px;min-width:44px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 6px;border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-input);background:var(--gl-surface-1);color:var(--gl-color-text);font-family:inherit;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-date-strip__day:hover{background:var(--gl-surface-3)}.glass-date-strip__day[aria-pressed=true]{--gl-date-strip-ink:var(--gl-color-on-primary);background:var(--gl-color-primary);color:var(--gl-color-on-primary);border-color:transparent;box-shadow:var(--gl-shadow-btn-primary)}.glass-date-strip__day:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-date-strip__day[aria-pressed=true]:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-shadow-btn-primary)}.glass-date-strip__day:disabled,.glass-date-strip__day[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-date-strip__day:disabled:hover,.glass-date-strip__day[aria-disabled=true]:hover{background:var(--gl-surface-1)}.glass-date-strip__day--today .glass-date-strip__num{text-decoration:underline;text-underline-offset:3px}.glass-date-strip__wd{font-size:var(--gl-font-size-xs);opacity:.75;text-transform:uppercase;letter-spacing:.04em}.glass-date-strip__num{font-size:var(--gl-font-size-lg);font-weight:var(--gl-font-weight-semibold);line-height:1.1}.glass-date-strip__mark{width:6px;height:6px;margin-top:2px;border-radius:50%;background:var(--gl-date-strip-tone,transparent)}.glass-date-strip__mark--primary{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-primary))}.glass-date-strip__mark--success{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-success))}.glass-date-strip__mark--warning{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-warning))}.glass-date-strip__mark--error{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-error))}.glass-calendar{display:block}.glass-calendar__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.glass-calendar__title{flex:1 1 auto;min-width:0;text-align:center;font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glass-calendar__nav{-webkit-appearance:none;appearance:none;flex:none;width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-full);background:var(--gl-surface-1);color:var(--gl-color-text);font-family:inherit;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-calendar__nav:hover{background:var(--gl-surface-3)}.glass-calendar__nav:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-calendar__nav:disabled{opacity:.45;cursor:not-allowed}.glass-calendar__nav:disabled:hover{background:var(--gl-surface-1)}.glass-calendar__nav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.glass-calendar__wd{padding:4px 0;text-align:center;font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted);text-transform:uppercase;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glass-calendar__day{-webkit-appearance:none;appearance:none;aspect-ratio:1;min-width:0;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid transparent;border-radius:var(--gl-radius-sm);background:0 0;color:var(--gl-color-text);font-family:inherit;font-size:var(--gl-font-size-sm);cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-calendar__day:hover{background:var(--gl-surface-2)}.glass-calendar__day--other{opacity:.35}.glass-calendar__day--today{border-color:var(--gl-border-warm)}.glass-calendar__day[aria-pressed=true]{--gl-calendar-ink:var(--gl-color-on-primary);background:var(--gl-color-primary);color:var(--gl-color-on-primary)}.glass-calendar__day:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-calendar__day:disabled,.glass-calendar__day[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-calendar__day:disabled:hover,.glass-calendar__day[aria-disabled=true]:hover{background:0 0}.glass-calendar__marks{display:flex;gap:2px;height:5px}.glass-calendar__mark{width:5px;height:5px;border-radius:50%;background:var(--gl-calendar-tone,transparent)}.glass-calendar__mark--primary{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-primary))}.glass-calendar__mark--success{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-success))}.glass-calendar__mark--warning{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-warning))}.glass-calendar__mark--error{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-error))}.glass-image-picker{display:flex;align-items:center;gap:14px}.glass-image-picker__preview{flex:none;width:72px;height:72px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-input);background:var(--gl-surface-2);color:var(--gl-icon-muted);overflow:hidden}.glass-image-picker__preview--round{border-radius:50%}.glass-image-picker__preview img{display:block;width:100%;height:100%;object-fit:cover}.glass-image-picker__preview svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-image-picker__meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.glass-image-picker__label{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-strong);overflow-wrap:anywhere}.glass-image-picker__hint{font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted)}.glass-image-picker__actions{display:flex;flex-wrap:wrap;gap:8px}.gl-stack{display:flex;flex-direction:column}.gl-row{display:flex;flex-direction:row;align-items:center}.gl-stack--2xs{gap:var(--gl-space-2xs)}.gl-stack--xs{gap:var(--gl-space-xs)}.gl-stack--sm{gap:var(--gl-space-sm)}.gl-stack--md{gap:var(--gl-space-md)}.gl-stack--lg{gap:var(--gl-space-lg)}.gl-stack--xl{gap:var(--gl-space-xl)}.gl-row--xs{gap:var(--gl-space-xs)}.gl-row--sm{gap:var(--gl-space-sm)}.gl-row--md{gap:var(--gl-space-md)}.gl-text-center{text-align:center}.gl-text-muted{color:var(--gl-color-text-muted)}.gl-text-sm{font-size:var(--gl-font-size-sm)}.gl-mt-sm{margin-top:var(--gl-space-sm)}.gl-mt-md{margin-top:var(--gl-space-md)}.gl-mt-lg{margin-top:var(--gl-space-lg)}.gl-mt-xl{margin-top:var(--gl-space-xl)}.gl-mb-sm{margin-bottom:var(--gl-space-sm)}.gl-mb-md{margin-bottom:var(--gl-space-md)}.gl-mb-lg{margin-bottom:var(--gl-space-lg)}.gl-mb-xl{margin-bottom:var(--gl-space-xl)}.gl-px{padding-left:var(--gl-space-lg);padding-right:var(--gl-space-lg)}.gl-w-full{width:100%}.gl-flex-1{flex:1}svg.glass-icon--fill{fill:currentColor;stroke:none}@media print{.glass-calendar__day[aria-pressed=true],.glass-calendar__mark,.glass-checkbox__box,.glass-date-strip__day[aria-pressed=true],.glass-date-strip__mark,.glass-progress__fill,.glass-radio__circle,.glass-range,.glass-segmented__dot,.glass-steps__item--current .glass-steps__num,.glass-toggle__track{-webkit-print-color-adjust:exact;print-color-adjust:exact}}\n",r=s+i,a=s+e+i;(new CSSStyleSheet).replaceSync(a);(new CSSStyleSheet).replaceSync(e);const l=new CSSStyleSheet;l.replaceSync(r);const o="__glkDefaultTokensInjected",n="data-glk-defaults";let g=null;function c(){if(!g)return;const t="off"!==document.documentElement.getAttribute(n),e=document.adoptedStyleSheets;t!==e.includes(g)&&(document.adoptedStyleSheets=t?[...e,g]:e.filter(t=>t!==g))}!function(){if("undefined"==typeof document)return;if(globalThis[o])return;globalThis[o]=!0;const t=e.replace(/color-scheme\s*:[^;}]*;?/g,"");g=new CSSStyleSheet,g.replaceSync(`@layer glasskit-defaults { ${t} }`),c()}();const d=new Set;function h(){return document.documentElement.getAttribute("data-theme")||"dark"}function p(){return document.documentElement.getAttribute("data-density")}function u(){return document.documentElement.getAttribute("data-surface")}if("undefined"!=typeof window&&"undefined"!=typeof MutationObserver){new MutationObserver(t=>{t.some(t=>"data-theme"===t.attributeName)&&function(){const t=h();for(const e of d)e._syncTheme(t)}(),t.some(t=>"data-density"===t.attributeName)&&function(){const t=p();for(const e of d)e._syncDensity(t)}(),t.some(t=>"data-surface"===t.attributeName)&&function(){const t=u();for(const e of d)e._syncSurface(t)}(),t.some(t=>t.attributeName===n)&&c()}).observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme","data-density","data-surface",n]})}const b='\n .glk-wrapper { display: contents; }\n .glk-wrapper[data-theme="dark"] { color-scheme: dark; }\n .glk-wrapper[data-theme="light"] { color-scheme: light; }\n',_=new CSSStyleSheet;_.replaceSync(`\n :host { display: block; }\n :host([hidden]) { display: none; }\n ${b}\n`);const v=new CSSStyleSheet;v.replaceSync(`\n :host { display: inline-block; }\n :host([hidden]) { display: none; }\n ${b}\n`);const m=new CSSStyleSheet;m.replaceSync("\n .glass-checkbox, .glass-radio, .glass-toggle { vertical-align: top; }\n");let f=null,x=!1;function y(t,e){x||"undefined"==typeof window||(x=!0,window.addEventListener("pointerdown",t=>{f=t.composedPath()[0]},{capture:!0,passive:!0}));const s=s=>{if(s.composedPath()[0]!==t)return;if(s.isTrusted&&f===t)return;const i=e();i&&!i.disabled&&(s.stopImmediatePropagation(),i.click())};return t.addEventListener("click",s),()=>t.removeEventListener("click",s)}class k extends HTMLElement{static get displayInline(){return!1}static get hostStyles(){return null}static get observesLightDom(){return!1}static get delegatesFocus(){return!1}static get observedAttributes(){return[]}constructor(){super(),this._initialized=!1,this._shadow=this.attachShadow({mode:"open",delegatesFocus:this.constructor.delegatesFocus});const t=this.constructor.displayInline?v:_,e=[l,t],s=this.constructor.hostStyles;s&&e.push(s),this._shadow.adoptedStyleSheets=e}connectedCallback(){this._initialized?(this._syncTheme(h()),this._syncDensity(p()),this._syncSurface(u())):(this._upgradeProperties(),this._initialized=!0,this._wrapper=document.createElement("div"),this._wrapper.className="glk-wrapper",this._wrapper.setAttribute("data-theme",h()),this._syncDensity(p()),this._syncSurface(u()),this._shadow.appendChild(this._wrapper),this.render(),this.constructor.formAssociated&&this._syncDisabled()),this.setupEvents(),d.add(this),this.constructor.observesLightDom&&(this._lightDomObserver??=new MutationObserver(t=>this.projectLightDom(t)),this._lightDomObserver.observe(this,{childList:!0,subtree:!0,characterData:!0}))}_upgradeProperties(){for(const t of Object.keys(this)){let e=Object.getPrototypeOf(this),s=null;for(;e&&e!==HTMLElement.prototype;){const i=Object.getOwnPropertyDescriptor(e,t);if(i){s=i.set;break}e=Object.getPrototypeOf(e)}if(!s)continue;const i=this[t];delete this[t],this[t]=i}}disconnectedCallback(){d.delete(this),this._lightDomObserver?.disconnect(),this.teardownEvents()}attributeChangedCallback(t,e,s){this._initialized&&e!==s&&this.onAttributeChanged(t,e,s)}_syncTheme(t){this._wrapper&&this._wrapper.setAttribute("data-theme",t)}_syncDensity(t){this._wrapper&&(t?this._wrapper.setAttribute("data-density",t):this._wrapper.removeAttribute("data-density"))}_syncSurface(t){this._wrapper&&(t?this._wrapper.setAttribute("data-surface",t):this._wrapper.removeAttribute("data-surface"))}render(){}setupEvents(){}teardownEvents(){}onAttributeChanged(t,e,s){}projectLightDom(){}refresh(){this.projectLightDom()}get _actuallyDisabled(){return this.matches(":disabled")}formDisabledCallback(){this._initialized&&this._syncDisabled()}_syncDisabled(){this.applyDisabled(this._actuallyDisabled)}applyDisabled(t){}takeTitle(t=this.getAttribute("title")){return null!==t&&(this._title=t,this.removeAttribute("title"),!0)}getBoolAttr(t){return this.hasAttribute(t)}setBoolAttr(t,e){e?this.setAttribute(t,""):this.removeAttribute(t)}createElement(t,e=[],s={}){const i=document.createElement(t);e.length&&i.classList.add(...e);for(const[t,e]of Object.entries(s))i.setAttribute(t,e);return i}emit(t,e=null,{cancelable:s=!1}={}){return this.dispatchEvent(new CustomEvent(t,{bubbles:!0,composed:!0,cancelable:s,detail:e}))}}class w extends k{static formAssociated=!0;static get delegatesFocus(){return!0}constructor(){super(),this._internals=this.attachInternals()}attributeChangedCallback(t,e,s){super.attributeChangedCallback(t,e,s),this._initialized&&this.syncValidity()}get disabled(){return this.getBoolAttr("disabled")}set disabled(t){this.setBoolAttr("disabled",t)}_syncDisabled(){super._syncDisabled(),this.syncValidity()}get form(){return this._internals.form}get validationMessage(){return this._internals.validationMessage}get validity(){return this._internals.validity}get willValidate(){return this._internals.willValidate}checkValidity(){return this._internals.checkValidity()}reportValidity(){return this._internals.reportValidity()}formResetCallback(){this.resetValue()}formStateRestoreCallback(t,e){this.restoreValue(t)}resetValue(){}restoreValue(t){}setFormValue(t){this._internals.setFormValue(t),this.syncValidity()}setValidity(t,e,s){this._internals.setValidity(t,e,s)}get _validityField(){return null}syncValidity(){const t=this._validityField;if(!t)return;const e=t.validationMessage;t.willValidate&&!t.validity.valid&&e?this._internals.setValidity(t.validity,e,t):this._internals.setValidity({})}}class A extends k{render(){const t=this.createElement("nav",["glass-nav"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t)}}customElements.define("glk-nav",A);const E=["aria-expanded","aria-haspopup","aria-pressed"];class C extends k{static get observedAttributes(){return["label","disabled",...E]}render(){this._btn=this.createElement("button",["glass-pill"]),this.getBoolAttr("disabled")&&(this._btn.disabled=!0);const t=this.getAttribute("label");t&&this._btn.setAttribute("aria-label",t);for(const t of E)this._forward(t);this._btn.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._btn)}setupEvents(){this._onClick=()=>{this.getBoolAttr("disabled")||this.emit("glk-click")},this._btn.addEventListener("click",this._onClick)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick)}onAttributeChanged(t){if(this._btn)switch(t){case"label":this._btn.setAttribute("aria-label",this.getAttribute("label")||"");break;case"disabled":this._btn.disabled=this.getBoolAttr("disabled");break;default:E.includes(t)&&this._forward(t)}}_forward(t){const e=this.getAttribute(t);null===e?this._btn.removeAttribute(t):this._btn.setAttribute(t,e)}}customElements.define("glk-pill",C);class L extends k{static get observedAttributes(){return["static","floating"]}render(){const t=this.createElement("nav",["glass-tab-bar"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t),this._nav=t,this.getBoolAttr("floating")&&t.classList.add("glass-tab-bar--floating"),this.getBoolAttr("static")&&this._applyStatic()}onAttributeChanged(t){this._nav&&("static"===t?this._applyStatic():"floating"===t&&this._nav.classList.toggle("glass-tab-bar--floating",this.getBoolAttr("floating")))}_applyStatic(){this._nav.style.position="relative",this._nav.style.borderRadius="16px"}setupEvents(){this._onTabSelect=t=>{this.querySelectorAll("glk-tab-item").forEach(e=>{e!==t.target&&e.removeAttribute("active")}),this.emit("glk-tab-change",{tab:t.target})},this.addEventListener("glk-tab-select",this._onTabSelect)}teardownEvents(){this.removeEventListener("glk-tab-select",this._onTabSelect)}}customElements.define("glk-tab-bar",L);class z extends k{static get observedAttributes(){return["label","active","badge"]}static get observesLightDom(){return!0}render(){this._btn=this.createElement("button",["glass-tab-bar__item"]),this.getBoolAttr("active")&&this._btn.classList.add("is-active"),this._iconEl=this.createElement("span",["glass-tab-bar__icon"]),this._labelEl=this.createElement("span",["glass-tab-bar__label"]),this._labelEl.textContent=this.getAttribute("label")||"";const t=this.getAttribute("badge");t&&(this._badgeEl=this.createElement("span",["glass-tab-bar__badge"]),this._badgeEl.textContent=t,this._iconEl.appendChild(this._badgeEl)),this._btn.appendChild(this._iconEl),this._btn.appendChild(this._labelEl),this._wrapper.appendChild(this._btn),requestAnimationFrame(()=>this.projectLightDom())}projectLightDom(){const t=this.querySelector("svg"),e=t?t.outerHTML:"";if(e===this._iconSignature)return;if(this._iconSignature=e,this._iconClone?.remove(),this._iconClone=null,!t)return;const s=t.cloneNode(!0);s.removeAttribute("width"),s.removeAttribute("height"),s.removeAttribute("stroke"),s.removeAttribute("stroke-width"),s.removeAttribute("stroke-linecap"),s.removeAttribute("stroke-linejoin"),s.removeAttribute("fill"),this._iconEl.insertBefore(s,this._iconEl.firstChild),this._iconClone=s}setupEvents(){this._onClick=()=>{this.setAttribute("active",""),this.emit("glk-tab-select")},this._btn.addEventListener("click",this._onClick)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick)}onAttributeChanged(t){if(this._btn)switch(t){case"active":this._btn.classList.toggle("is-active",this.getBoolAttr("active"));break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"badge":{const t=this.getAttribute("badge");t?(this._badgeEl||(this._badgeEl=this.createElement("span",["glass-tab-bar__badge"]),this._iconEl.appendChild(this._badgeEl)),this._badgeEl.textContent=t):this._badgeEl&&(this._badgeEl.remove(),this._badgeEl=null);break}}}}customElements.define("glk-tab-item",z);class S extends k{static get observedAttributes(){return["accessory-left","static"]}render(){this._dock=this.createElement("div",["glass-tab-bar-dock"]),this.getBoolAttr("accessory-left")&&this._dock.classList.add("glass-tab-bar-dock--accessory-left"),this._dock.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._dock),this.getBoolAttr("static")&&this._applyStatic()}onAttributeChanged(t){this._dock&&("accessory-left"===t?this._dock.classList.toggle("glass-tab-bar-dock--accessory-left",this.getBoolAttr("accessory-left")):"static"===t&&this._applyStatic())}_applyStatic(){this.getBoolAttr("static")?(this._dock.style.position="relative",this._dock.style.left="auto",this._dock.style.bottom="auto",this._dock.style.transform="none",this._dock.style.justifyContent="center"):(this._dock.style.position="",this._dock.style.left="",this._dock.style.bottom="",this._dock.style.transform="",this._dock.style.justifyContent="")}}customElements.define("glk-tab-dock",S);const B=["accent","success","error"];class V extends k{static get observedAttributes(){return["label","disabled","variant"]}render(){this._btn=this.createElement("button",["glass-tab-bar__accessory"]),this.getBoolAttr("disabled")&&(this._btn.disabled=!0);const t=this.getAttribute("label");t&&this._btn.setAttribute("aria-label",t),this._applyVariant(),this._btn.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._btn)}_applyVariant(){if(!this._btn)return;for(const t of B)this._btn.classList.remove(`glass-tab-bar__accessory--${t}`);const t=this.getAttribute("variant");t&&B.includes(t)&&this._btn.classList.add(`glass-tab-bar__accessory--${t}`)}setupEvents(){this._onClick=()=>{this.getBoolAttr("disabled")||this.emit("glk-click")},this._btn.addEventListener("click",this._onClick)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick)}onAttributeChanged(t){if(this._btn)switch(t){case"label":this._btn.setAttribute("aria-label",this.getAttribute("label")||"");break;case"disabled":this._btn.disabled=this.getBoolAttr("disabled");break;case"variant":this._applyVariant()}}}customElements.define("glk-tab-accessory",V);class T extends k{static get observedAttributes(){return["steps","current","label"]}render(){this._list=this.createElement("ol",["glass-steps"],{part:"steps"}),this._wrapper.appendChild(this._list),this._build(),this._applyLabel()}_build(){const t=this.steps,e=this.current;this._list.replaceChildren(),t.forEach((s,i)=>{const r=this.createElement("li",["glass-steps__item"]);i<e&&r.classList.add("glass-steps__item--done"),i===e&&(r.classList.add("glass-steps__item--current"),r.setAttribute("aria-current","step"));const a=this.createElement("span",["glass-steps__num"]);i<e?a.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M5 12l5 5 9-10"/></svg>':a.textContent=String(i+1);const l=this.createElement("span",["glass-steps__label"]);l.textContent=s,r.append(a,l),this._list.appendChild(r),i<t.length-1&&this._list.appendChild(this.createElement("li",["glass-steps__line"],{"aria-hidden":"true"}))})}_applyLabel(){const t=this.getAttribute("label");t?this._list.setAttribute("aria-label",t):this._list.removeAttribute("aria-label")}onAttributeChanged(t){this._list&&("label"===t?this._applyLabel():this._build())}get current(){return Number(this.getAttribute("current"))||0}set current(t){this.setAttribute("current",String(Number(t)||0))}get steps(){return(this.getAttribute("steps")||"").split(",").map(t=>t.trim()).filter(Boolean)}set steps(t){this.setAttribute("steps",Array.isArray(t)?t.join(","):String(t??""))}}customElements.define("glk-steps",T);const F=t=>String(t).padStart(2,"0"),D=t=>`${t.getFullYear()}-${F(t.getMonth()+1)}-${F(t.getDate())}`;function j(t){const e=/^(\d{4})-(\d{2})(?:-(\d{2}))?$/.exec(String(t??"").trim());if(!e)return null;const s=new Date(Number(e[1]),Number(e[2])-1,Number(e[3]??1));return Number.isNaN(s.getTime())?null:s}const M=(t,e)=>new Date(t.getFullYear(),t.getMonth(),t.getDate()+e);function O(t){try{const e=JSON.parse(t||"{}");return e&&"object"==typeof e&&!Array.isArray(e)?e:{}}catch{return{}}}function q(t,e){if(t)return t;for(let t=e;t;){const e=t.closest?.("[lang]");if(e){const t=e.getAttribute("lang").trim();if(t)return t;break}const s=t.getRootNode?.();t="undefined"!=typeof ShadowRoot&&s instanceof ShadowRoot?s.host:null}return"undefined"!=typeof navigator&&navigator.language||"en"}const N=new Map;function I(t){let e=N.get(t);if(!e){try{e={weekday:new Intl.DateTimeFormat(t,{weekday:"short"}),day:new Intl.DateTimeFormat(t,{weekday:"long",day:"numeric",month:"long",year:"numeric"}),month:new Intl.DateTimeFormat(t,{month:"long",year:"numeric"})}}catch{return I("en")}N.set(t,e)}return e}const G=(t,e)=>t.weekday.format(e).replace(/\.$/,"");const H=t=>"string"==typeof t&&/^[a-z][a-z0-9-]*$/.test(t);function R(t,e,s){if(!e||!t.clientWidth)return!1;const i=t.getBoundingClientRect(),r=e.getBoundingClientRect(),a=r.left+r.width/2-(i.left+t.clientLeft+t.clientWidth/2),l=s&&!matchMedia("(prefers-reduced-motion: reduce)").matches;return t.scrollBy({left:a,behavior:l?"smooth":"instant"}),!0}const P={ArrowLeft:-1,ArrowRight:1,Home:-1/0,End:1/0};function $(t){return H(t)?{tone:t,disabled:!1}:t&&"object"==typeof t?{tone:H(t.tone)?t.tone:"",disabled:Boolean(t.disabled)}:{tone:"",disabled:!1}}class Y extends k{static get observedAttributes(){return["start","days","value","today","marks","locale","label"]}render(){this._strip=this.createElement("div",["glass-date-strip"],{role:"group",part:"strip"}),this._wrapper.appendChild(this._strip),this._build(),this._applyLabel()}_build(){const t=I(q(this.getAttribute("locale"),this)),e=O(this.getAttribute("marks")),s=j(this.getAttribute("start"))??new Date,i=this.getAttribute("today")||D(new Date),r=Math.max(1,Math.floor(Number(this.getAttribute("days")))||7);this._strip.replaceChildren();for(let a=0;a<r;a+=1){const r=M(s,a),l=D(r),o=$(e[l]),n=this.createElement("button",["glass-date-strip__day"],{type:"button","data-value":l,"aria-label":t.day.format(r)});l===i&&n.classList.add("glass-date-strip__day--today"),o.disabled&&(n.disabled=!0);const g=this.createElement("span",["glass-date-strip__wd"]);g.textContent=G(t,r);const c=this.createElement("span",["glass-date-strip__num"]);c.textContent=String(r.getDate());const d=this.createElement("span",["glass-date-strip__mark"]);o.tone&&d.classList.add(`glass-date-strip__mark--${o.tone}`),n.append(g,c,d),this._strip.appendChild(n)}this._syncValue()}_chips(){return[...this._strip.querySelectorAll("button[data-value]")]}_syncValue(){const t=this.value;let e=null;for(const s of this._chips()){const i=s.dataset.value===t;s.setAttribute("aria-pressed",String(i)),i&&(e=s)}const s=this._chips();this._setTabStop(e??s.find(t=>!t.disabled)??s[0]),this._reveal(this._revealedAt?"smooth":"instant")}_setTabStop(t){for(const e of this._chips())e.tabIndex=e===t?0:-1}_reveal(t="instant"){const e=this._strip.querySelector('[aria-pressed="true"]');R(this._strip,e,"smooth"===t)&&(this._revealedAt=this._strip.clientWidth)}_applyLabel(){const t=this.getAttribute("label");t?this._strip.setAttribute("aria-label",t):this._strip.removeAttribute("aria-label")}setupEvents(){this._onClick=t=>{const e=t.target.closest("button[data-value]");if(!e||e.disabled||"true"===e.getAttribute("aria-disabled"))return;this._setTabStop(e);const{value:s}=e.dataset;s!==this.value&&(this.value=s,this.emit("glk-change",{value:s}))},this._onKeydown=t=>{const e=P[t.key];if(void 0===e)return;const s=this._chips().filter(t=>!t.disabled),i=s.indexOf(t.target.closest("button[data-value]"));if(i<0)return;const r=Number.isFinite(e)?Math.min(s.length-1,Math.max(0,i+e)):e<0?0:s.length-1;t.preventDefault(),this._setTabStop(s[r]),s[r].focus()},this._onResize=()=>{this._strip.clientWidth!==this._revealedAt&&this._reveal("instant")},this._strip.addEventListener("click",this._onClick),this._strip.addEventListener("keydown",this._onKeydown),this._resizeObserver=new ResizeObserver(this._onResize),this._resizeObserver.observe(this._strip)}teardownEvents(){this._strip?.removeEventListener("click",this._onClick),this._strip?.removeEventListener("keydown",this._onKeydown),this._resizeObserver?.disconnect(),this._resizeObserver=null}onAttributeChanged(t){this._strip&&("value"===t?this._syncValue():"label"===t?this._applyLabel():this._build())}get value(){return this.getAttribute("value")??""}set value(t){null==t||""===t?this.removeAttribute("value"):this.setAttribute("value",String(t))}get marks(){return O(this.getAttribute("marks"))}set marks(t){this.setAttribute("marks","string"==typeof t?t:JSON.stringify(t??{}))}get locale(){return q(this.getAttribute("locale"),this)}set locale(t){t?this.setAttribute("locale",t):this.removeAttribute("locale")}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}}customElements.define("glk-date-strip",Y);const K=new CSSStyleSheet;K.replaceSync("\n :host([fill]) { display: grid; min-width: 0; }\n :host([fill]) .glass-card { display: flex; flex-direction: column; min-width: 0; min-height: 0; }\n");class W extends k{static get observedAttributes(){return["glow","fill"]}static get hostStyles(){return K}render(){this._card=this.createElement("div",this._computeClasses(),{part:"card"}),this._card.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._card)}onAttributeChanged(t){"glow"===t&&this._card&&(this._card.className=this._computeClasses().join(" "))}_computeClasses(){const t=["glass-card"];return this.getBoolAttr("glow")&&t.push("glass-card--glow"),t}get glow(){return this.getBoolAttr("glow")}set glow(t){this.setBoolAttr("glow",t)}get fill(){return this.getBoolAttr("fill")}set fill(t){this.setBoolAttr("fill",t)}}customElements.define("glk-card",W);const U=["primary","success","warning","error"];class X extends k{static get displayInline(){return!0}static get observedAttributes(){return["variant","interactive","selected"]}render(){this._slot=document.createElement("slot"),this._mount()}_mount(){const t=this.getBoolAttr("interactive"),e=this.createElement(t?"button":"span",this._computeClasses());t&&(e.type="button",e.setAttribute("aria-pressed",String(this.getBoolAttr("selected")))),e.appendChild(this._slot),this._badge?(this._badge.removeEventListener("click",this._onClick),this._badge.replaceWith(e)):this._wrapper.appendChild(e),this._badge=e,this._onClick&&e.addEventListener("click",this._onClick)}setupEvents(){this._onClick=()=>{this.getBoolAttr("interactive")&&this.emit("glk-click")},this._badge.addEventListener("click",this._onClick)}teardownEvents(){this._badge?.removeEventListener("click",this._onClick),this._onClick=null}onAttributeChanged(t){if(this._badge)switch(t){case"interactive":this._mount();break;case"variant":case"selected":this._badge.className=this._computeClasses().join(" "),"BUTTON"===this._badge.tagName&&this._badge.setAttribute("aria-pressed",String(this.getBoolAttr("selected")))}}_computeClasses(){const t=["glass-badge"],e=this.getAttribute("variant");return e&&U.includes(e)&&t.push(`glass-badge--${e}`),this.getBoolAttr("interactive")&&t.push("glass-badge--interactive"),this.getBoolAttr("selected")&&t.push("glass-badge--selected"),t}get variant(){return this.getAttribute("variant")}set variant(t){this.setAttribute("variant",t)}get interactive(){return this.getBoolAttr("interactive")}set interactive(t){this.setBoolAttr("interactive",t)}get selected(){return this.getBoolAttr("selected")}set selected(t){this.setBoolAttr("selected",t)}}customElements.define("glk-badge",X);const J=["sm","lg"];class Q extends k{static get displayInline(){return!0}static get observedAttributes(){return["size","src","alt"]}render(){this._avatar=this.createElement("div",this._computeClasses()),this._updateContent(),this._wrapper.appendChild(this._avatar)}onAttributeChanged(t){this._avatar&&("size"===t?this._avatar.className=this._computeClasses().join(" "):"src"!==t&&"alt"!==t||this._updateContent())}_updateContent(){const t=this.getAttribute("src");if(this._avatar.innerHTML="",t){const e=this.createElement("img",[],{src:t,alt:this.getAttribute("alt")||""});this._avatar.appendChild(e)}else this._avatar.appendChild(document.createElement("slot"))}_computeClasses(){const t=["glass-avatar"],e=this.getAttribute("size");return e&&J.includes(e)&&t.push(`glass-avatar--${e}`),t}get size(){return this.getAttribute("size")}set size(t){this.setAttribute("size",t)}get src(){return this.getAttribute("src")}set src(t){this.setAttribute("src",t)}}customElements.define("glk-avatar",Q);class Z extends k{static get observedAttributes(){return[]}render(){const t=this.createElement("div",["glass-title"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t)}}customElements.define("glk-title",Z);class tt extends k{render(){const t=this.createElement("div",["glass-divider"]);this._wrapper.appendChild(t)}}customElements.define("glk-divider",tt);class et extends k{static get observedAttributes(){return["message"]}render(){this._container=this.createElement("div",["glass-status"]),this._iconSlot=this.createElement("span",[]),this._iconSlot.appendChild(this.createElement("slot",[],{name:"icon"})),this._messageEl=this.createElement("p",[]),this._messageEl.textContent=this.getAttribute("message")||"",this._container.appendChild(this._iconSlot),this._container.appendChild(this._messageEl),this._wrapper.appendChild(this._container)}onAttributeChanged(t){"message"===t&&this._messageEl&&(this._messageEl.textContent=this.getAttribute("message")||"")}get message(){return this.getAttribute("message")}set message(t){this.setAttribute("message",t)}}customElements.define("glk-status",et);class st extends k{static get observedAttributes(){return["title","text"]}render(){const t=this.createElement("div",["glass-empty"],{part:"empty"}),e=this.createElement("span",["glass-empty__icon"],{part:"icon"}),s=document.createElement("slot");s.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="9"/><path d="M8 12h8"/></svg>',e.appendChild(s),this._titleEl=this.createElement("p",["glass-empty__title"],{part:"title"}),this._textEl=this.createElement("p",["glass-empty__text"],{part:"text"});const i=this.createElement("div",["glass-empty__action"],{part:"action"});i.appendChild(this.createElement("slot",[],{name:"action"})),t.append(e,this._titleEl,this._textEl,i),this._wrapper.appendChild(t),this.takeTitle(),this._update()}_update(){const t=this._title||"",e=this.getAttribute("text")||"";this._titleEl.textContent=t,this._titleEl.hidden=!t,this._textEl.textContent=e,this._textEl.hidden=!e}onAttributeChanged(t,e,s){("title"!==t||this.takeTitle(s))&&this._titleEl&&this._update()}_applyTitle(){this._titleEl&&this._update()}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get text(){return this.getAttribute("text")||""}set text(t){t?this.setAttribute("text",t):this.removeAttribute("text")}}customElements.define("glk-empty",st);const it=["primary","secondary","tertiary"],rt=["sm","md","lg","auto"],at=["aria-expanded","aria-haspopup","aria-pressed"];class lt extends k{static get observedAttributes(){return["variant","size","type",...at]}static formAssociated=!0;constructor(){super(),this._internals=this.attachInternals()}render(){this._btn=this.createElement("button",this._computeClasses(),{type:this.getAttribute("type")||"button"});for(const t of at)this._forward(t);this._btn.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._btn)}setupEvents(){this._onClick=t=>{if(this._actuallyDisabled)return t.preventDefault(),void t.stopPropagation();this.emit("glk-click"),this._activateForm(t)},this._btn.addEventListener("click",this._onClick),this._unforwardClicks=y(this,()=>this._btn)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick),this._unforwardClicks?.()}_activateForm(t){const e=this.getAttribute("type"),s=this._internals.form;if(!s||"submit"!==e&&"reset"!==e)return;const{reset:i,requestSubmit:r}=HTMLFormElement.prototype;setTimeout(()=>{if(t.defaultPrevented||this._internals.form!==s)return;if("reset"===e)return void i.call(s);const a=t=>{Object.defineProperty(t,"submitter",{configurable:!0,get:()=>this})};s.addEventListener("submit",a,{capture:!0});try{r.call(s)}finally{s.removeEventListener("submit",a,{capture:!0})}})}onAttributeChanged(t){if(this._btn)switch(t){case"variant":case"size":this._btn.className=this._computeClasses().join(" ");break;case"type":this._btn.setAttribute("type",this.getAttribute("type")||"button");break;default:at.includes(t)&&this._forward(t)}}applyDisabled(t){this._btn.disabled=t}_forward(t){const e=this.getAttribute(t);null===e?this._btn.removeAttribute(t):this._btn.setAttribute(t,e)}_computeClasses(){const t=["glass-btn"],e=this.getAttribute("variant");e&&it.includes(e)&&t.push(`glass-btn--${e}`);const s=this.getAttribute("size");return s&&rt.includes(s)&&t.push(`glass-btn--${s}`),t}get variant(){return this.getAttribute("variant")}set variant(t){this.setAttribute("variant",t)}get size(){return this.getAttribute("size")}set size(t){this.setAttribute("size",t)}get disabled(){return this.getBoolAttr("disabled")}set disabled(t){this.setBoolAttr("disabled",t)}get type(){return this.getAttribute("type")||"button"}set type(t){this.setAttribute("type",t)}get form(){return this._internals.form}}customElements.define("glk-button",lt);const ot=["min","max","step","minlength","maxlength","pattern","autocomplete","inputmode"],nt=new CSSStyleSheet;nt.replaceSync("\n .glass-input-wrap__prefix ::slotted(:enabled),\n .glass-input-wrap__prefix ::slotted(a[href]),\n .glass-input-wrap__prefix ::slotted([tabindex]:not(:disabled)),\n .glass-input-wrap__suffix ::slotted(:enabled),\n .glass-input-wrap__suffix ::slotted(a[href]),\n .glass-input-wrap__suffix ::slotted([tabindex]:not(:disabled)) { pointer-events: auto; }\n");class gt extends w{static get observedAttributes(){return["label","type","placeholder","error","hint","readonly","name","value","required",...ot]}static get hostStyles(){return nt}render(){const t=this.createElement("div",["glass-input-group"]);this._labelEl=this.createElement("label",["glass-label"],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._input=this.createElement("input",this._computeInputClasses(),{id:"field",type:this.getAttribute("type")||"text"});const e=this.getAttribute("placeholder");e&&this._input.setAttribute("placeholder",e);const s=this.getAttribute("name");s&&this._input.setAttribute("name",s);const i=this._pendingValue??this.getAttribute("value");this._pendingValue=void 0,i&&(this._input.value=i),this.getBoolAttr("readonly")&&(this._input.readOnly=!0),this.getBoolAttr("required")&&(this._input.required=!0);for(const t of ot)this._forward(t);this._box=this.createElement("div",["glass-input-wrap"],{part:"box"}),this._prefix=this._createAffix("prefix"),this._suffix=this._createAffix("suffix"),this._box.append(this._prefix,this._input,this._suffix),this._hintEl=this.createElement("span",this._computeHintClasses(),{id:"hint"}),this._hintEl.textContent=this.getAttribute("hint")||"",t.appendChild(this._labelEl),t.appendChild(this._box),this.getAttribute("hint")&&t.appendChild(this._hintEl),this._group=t,this._wrapper.appendChild(t),this._applyDescription(),this._syncFormValue()}_createAffix(t){const e=this.createElement("span",[`glass-input-wrap__${t}`],{id:t,part:t,hidden:""});return e.appendChild(this.createElement("slot",[],{name:t})),e}setupEvents(){this._onInput=()=>{this._syncFormValue(),this.emit("glk-input",{value:this._input.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._onChangeNative=()=>{this.emit("glk-change",{value:this._input.value}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._input.addEventListener("input",this._onInput),this._input.addEventListener("change",this._onChangeNative),this._onSlotChange=()=>this._applyAffixes(),this._box.addEventListener("slotchange",this._onSlotChange),this._affixObserver=new ResizeObserver(t=>{for(const e of t){const t=e.borderBoxSize?.[0]?.inlineSize??e.contentRect.width;this._box.style.setProperty(`--gl-input-${e.target.id}-size`,`${t}px`)}}),this._affixObserver.observe(this._prefix),this._affixObserver.observe(this._suffix),this._applyAffixes()}teardownEvents(){this._input?.removeEventListener("input",this._onInput),this._input?.removeEventListener("change",this._onChangeNative),this._box?.removeEventListener("slotchange",this._onSlotChange),this._affixObserver?.disconnect()}onAttributeChanged(t){if(this._input)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"type":this._input.setAttribute("type",this.getAttribute("type")||"text");break;case"placeholder":this._input.setAttribute("placeholder",this.getAttribute("placeholder")||"");break;case"error":this._input.className=this._computeInputClasses().join(" "),this._hintEl.className=this._computeHintClasses().join(" "),this._applyDescription();break;case"hint":this._hintEl.textContent=this.getAttribute("hint")||"",this.getAttribute("hint")&&!this._hintEl.parentNode&&this._group.appendChild(this._hintEl),this._applyDescription();break;case"readonly":this._input.readOnly=this.getBoolAttr("readonly");break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._input.value=this.getAttribute("value")||"",this._syncFormValue();break;case"required":this._input.required=this.getBoolAttr("required");break;default:ot.includes(t)&&this._forward(t)}}applyDisabled(t){this._input.disabled=t}_applyAffixes(){for(const t of[this._prefix,this._suffix]){const e=t.firstElementChild.assignedNodes().length>0;t.hidden=!e,this._box.classList.toggle(`glass-input-wrap--${t.id}`,e)}this._applyDescription()}_applyDescription(){const t=[this._prefix,this._suffix].filter(t=>t&&!t.hidden).map(t=>t.id);this.getAttribute("hint")&&t.push("hint"),t.length?this._input.setAttribute("aria-describedby",t.join(" ")):this._input.removeAttribute("aria-describedby"),this.getBoolAttr("error")?this._input.setAttribute("aria-invalid","true"):this._input.removeAttribute("aria-invalid")}_forward(t){const e=this.getAttribute(t);null===e?this._input.removeAttribute(t):this._input.setAttribute(t,e)}_computeInputClasses(){const t=["glass-input"];return this.getBoolAttr("error")&&t.push("glass-input--error"),t}_computeHintClasses(){const t=["glass-hint"];return this.getBoolAttr("error")&&t.push("glass-hint--error"),t}get _validityField(){return this._input}_syncFormValue(){this.setFormValue(this._input.value)}resetValue(){this._input.value=this.getAttribute("value")||"",this._syncFormValue()}get value(){return this._input?this._input.value:this._pendingValue??this.getAttribute("value")??""}set value(t){const e=null==t?"":String(t);this._input?(this._input.value=e,this._syncFormValue()):this._pendingValue=e}get readOnly(){return this.getBoolAttr("readonly")}set readOnly(t){this.setBoolAttr("readonly",t)}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}}customElements.define("glk-input",gt);class ct extends w{static get observedAttributes(){return["label","placeholder","rows","readonly","name","value","required"]}render(){const t=this.createElement("div",["glass-input-group"]);this._labelEl=this.createElement("label",["glass-label"],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._textarea=this.createElement("textarea",["glass-textarea"],{id:"field"});const e=this.getAttribute("placeholder");e&&this._textarea.setAttribute("placeholder",e);const s=this.getAttribute("rows");s&&this._textarea.setAttribute("rows",s);const i=this.getAttribute("name");i&&this._textarea.setAttribute("name",i);const r=this._pendingValue??this.getAttribute("value");this._pendingValue=void 0,r&&(this._textarea.value=r),this.getBoolAttr("readonly")&&(this._textarea.readOnly=!0),this.getBoolAttr("required")&&(this._textarea.required=!0),t.appendChild(this._labelEl),t.appendChild(this._textarea),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onInput=()=>{this._syncFormValue(),this.emit("glk-input",{value:this._textarea.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._textarea.addEventListener("input",this._onInput)}teardownEvents(){this._textarea?.removeEventListener("input",this._onInput)}onAttributeChanged(t){if(this._textarea)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"placeholder":this._textarea.setAttribute("placeholder",this.getAttribute("placeholder")||"");break;case"rows":this._textarea.setAttribute("rows",this.getAttribute("rows")||"");break;case"readonly":this._textarea.readOnly=this.getBoolAttr("readonly");break;case"name":this._textarea.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._textarea.value=this.getAttribute("value")||"",this._syncFormValue();break;case"required":this._textarea.required=this.getBoolAttr("required")}}applyDisabled(t){this._textarea.disabled=t}get _validityField(){return this._textarea}_syncFormValue(){this.setFormValue(this._textarea.value)}resetValue(){this._textarea.value=this.getAttribute("value")||"",this._syncFormValue()}get value(){return this._textarea?this._textarea.value:this._pendingValue??this.getAttribute("value")??""}set value(t){const e=null==t?"":String(t);this._textarea?(this._textarea.value=e,this._syncFormValue()):this._pendingValue=e}get readOnly(){return this.getBoolAttr("readonly")}set readOnly(t){this.setBoolAttr("readonly",t)}}customElements.define("glk-textarea",ct);class dt extends w{static get observedAttributes(){return["label","name","value","required"]}static get observesLightDom(){return!0}render(){const t=this.createElement("div",["glass-input-group"]);this._labelEl=this.createElement("label",["glass-label"],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._select=this.createElement("select",["glass-select"],{id:"field"}),void 0===this._wanted&&(this._wanted=this.getAttribute("value"));const e=this.getAttribute("name");e&&this._select.setAttribute("name",e),this.getBoolAttr("required")&&(this._select.required=!0),t.appendChild(this._labelEl),t.appendChild(this._select),this._wrapper.appendChild(t),requestAnimationFrame(()=>this.projectLightDom())}projectLightDom(){const t=[...this.querySelectorAll("option")].map(t=>t.outerHTML).join("");if(t===this._optionSignature)return;this._optionSignature=t;const e=this._select.selectedIndex>=0?this._select.value:null;this._moveOptions(),this._applyValue(this._wanted)||this._applyValue(e),this._syncFormValue()}_moveOptions(){this._select.innerHTML="";this.querySelectorAll("option").forEach(t=>{this._select.appendChild(t.cloneNode(!0))})}_applyValue(t){return null!==t&&(!![...this._select.options].some(e=>e.value===t)&&(this._select.value=t,!0))}setupEvents(){this._onChange=()=>{this._wanted=null,this._syncFormValue(),this.emit("glk-change",{value:this._select.value}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._select.addEventListener("change",this._onChange)}teardownEvents(){this._select?.removeEventListener("change",this._onChange)}onAttributeChanged(t){if(this._select)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._select.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._wanted=this.getAttribute("value"),this._applyValue(this._wanted),this._syncFormValue();break;case"required":this._select.required=this.getBoolAttr("required")}}applyDisabled(t){this._select.disabled=t}get _validityField(){return this._select}_syncFormValue(){this.setFormValue(this._select.value)}resetValue(){this._wanted=this.getAttribute("value"),this._applyValue(this._wanted)||(this._select.selectedIndex=0),this._syncFormValue()}get value(){return this._select?.options.length?this._select.value:this._wanted??this.getAttribute("value")??""}set value(t){this._wanted=null==t?"":String(t),this._select&&(this._applyValue(this._wanted),this._syncFormValue())}}customElements.define("glk-select",dt);class ht extends w{static get observedAttributes(){return["placeholder","name","value","label"]}render(){const t=this.createElement("div",["glass-search"]),e=this.createElement("span",["glass-search__icon"]);e.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>',this._input=this.createElement("input",["glass-input"],{type:"search"});const s=this.getAttribute("placeholder");s&&this._input.setAttribute("placeholder",s),this._applyLabel();const i=this.getAttribute("name");i&&this._input.setAttribute("name",i);const r=this._pendingValue??this.getAttribute("value");this._pendingValue=void 0,r&&(this._input.value=r),t.appendChild(e),t.appendChild(this._input),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onInput=()=>{this._syncFormValue(),this.emit("glk-input",{value:this._input.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._input.addEventListener("input",this._onInput)}teardownEvents(){this._input?.removeEventListener("input",this._onInput)}onAttributeChanged(t){if(this._input)switch(t){case"placeholder":this._input.setAttribute("placeholder",this.getAttribute("placeholder")||"");break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._input.value=this.getAttribute("value")||"",this._syncFormValue();break;case"label":this._applyLabel()}}applyDisabled(t){this._input.disabled=t}_applyLabel(){const t=this.getAttribute("label");t?this._input.setAttribute("aria-label",t):this._input.removeAttribute("aria-label")}_syncFormValue(){this.setFormValue(this._input.value)}resetValue(){this._input.value=this.getAttribute("value")||"",this._syncFormValue()}get value(){return this._input?this._input.value:this._pendingValue??this.getAttribute("value")??""}set value(t){const e=null==t?"":String(t);this._input?(this._input.value=e,this._syncFormValue()):this._pendingValue=e}}customElements.define("glk-search",ht);class pt extends w{static get observedAttributes(){return["checked","label","name","value","required"]}static get hostStyles(){return m}render(){const t=this.createElement("label",["glass-toggle"]);this._input=this.createElement("input",["glass-toggle__input"],{type:"checkbox",role:"switch"});const e=this.getAttribute("name");e&&this._input.setAttribute("name",e);const s=this.createElement("span",["glass-toggle__track"]),i=this.createElement("span",["glass-toggle__thumb"]);s.appendChild(i),this._labelEl=this.createElement("span",["glass-toggle__label"]),this._labelEl.textContent=this.getAttribute("label")||"",t.appendChild(this._input),t.appendChild(s),t.appendChild(this._labelEl),this.getBoolAttr("checked")&&(this._input.checked=!0),this.getBoolAttr("required")&&(this._input.required=!0),this._defaultChecked=this.getBoolAttr("checked"),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onChange=()=>{this._syncing=!0,this.setBoolAttr("checked",this._input.checked),this._syncing=!1,this._syncFormValue(),this.emit("glk-change",{checked:this._input.checked}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._input.addEventListener("change",this._onChange),this._unforwardClicks=y(this,()=>this._input)}teardownEvents(){this._input?.removeEventListener("change",this._onChange),this._unforwardClicks?.()}onAttributeChanged(t){if(!this._syncing&&this._input)switch(t){case"checked":this._input.checked=this.getBoolAttr("checked"),this._syncFormValue();break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"required":this._input.required=this.getBoolAttr("required")}}applyDisabled(t){this._input.disabled=t}get _validityField(){return this._input}_syncFormValue(){const t=this.getAttribute("value")||"on";this.setFormValue(this._input.checked?t:null)}resetValue(){this._input.checked=this._defaultChecked,this.setBoolAttr("checked",this._defaultChecked),this._syncFormValue()}restoreValue(t){t&&(this._input.checked=!0,this.setBoolAttr("checked",!0))}get checked(){return this._input?this._input.checked:this.getBoolAttr("checked")}set checked(t){this._input&&(this._input.checked=t),this.setBoolAttr("checked",t),this._input&&this._syncFormValue()}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}get value(){return this.getAttribute("value")||"on"}set value(t){this.setAttribute("value",t)}get label(){return this.getAttribute("label")}set label(t){this.setAttribute("label",t)}}customElements.define("glk-toggle",pt);class ut extends w{static get observedAttributes(){return["checked","label","name","value","required"]}static get hostStyles(){return m}render(){const t=this.createElement("label",["glass-checkbox"]);this._input=this.createElement("input",["glass-checkbox__input"],{type:"checkbox"});const e=this.getAttribute("name");e&&this._input.setAttribute("name",e);const s=this.createElement("span",["glass-checkbox__box"]);s.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>',this._labelEl=this.createElement("span",["glass-checkbox__label"]),this._labelEl.textContent=this.getAttribute("label")||"",t.appendChild(this._input),t.appendChild(s),t.appendChild(this._labelEl),this.getBoolAttr("checked")&&(this._input.checked=!0),this.getBoolAttr("required")&&(this._input.required=!0),this._defaultChecked=this.getBoolAttr("checked"),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onChange=()=>{this._syncing=!0,this.setBoolAttr("checked",this._input.checked),this._syncing=!1,this._syncFormValue(),this.emit("glk-change",{checked:this._input.checked}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._input.addEventListener("change",this._onChange),this._unforwardClicks=y(this,()=>this._input)}teardownEvents(){this._input?.removeEventListener("change",this._onChange),this._unforwardClicks?.()}onAttributeChanged(t){if(!this._syncing&&this._input)switch(t){case"checked":this._input.checked=this.getBoolAttr("checked"),this._syncFormValue();break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"required":this._input.required=this.getBoolAttr("required")}}applyDisabled(t){this._input.disabled=t}get _validityField(){return this._input}_syncFormValue(){const t=this.getAttribute("value")||"on";this.setFormValue(this._input.checked?t:null)}resetValue(){this._input.checked=this._defaultChecked,this.setBoolAttr("checked",this._defaultChecked),this._syncFormValue()}get checked(){return this._input?this._input.checked:this.getBoolAttr("checked")}set checked(t){this._input&&(this._input.checked=t),this.setBoolAttr("checked",t),this._input&&this._syncFormValue()}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}get value(){return this.getAttribute("value")||"on"}set value(t){this.setAttribute("value",t)}}customElements.define("glk-checkbox",ut);const bt={ArrowDown:1,ArrowRight:1,ArrowUp:-1,ArrowLeft:-1};function _t(t){return(void 0!==t.form?t.form:t.closest("form"))??null}function vt(t){const e=t.filter(t=>!t._actuallyDisabled);if(!e.length)return;const s=e.find(t=>t.checked)||e[0];for(const e of t)e._input&&(e._input.tabIndex=e===s?0:-1)}class mt extends w{static get observedAttributes(){return["checked","label","name","value","required"]}static get hostStyles(){return m}render(){const t=this.createElement("label",["glass-radio"]);this._input=this.createElement("input",["glass-radio__input"],{type:"radio"});const e=this.getAttribute("name");e&&this._input.setAttribute("name",e);const s=this.getAttribute("value");s&&this._input.setAttribute("value",s);const i=this.createElement("span",["glass-radio__circle"]),r=this.createElement("span",["glass-radio__dot"]);i.appendChild(r),this._labelEl=this.createElement("span",["glass-radio__label"]),this._labelEl.textContent=this.getAttribute("label")||"",t.appendChild(this._input),t.appendChild(i),t.appendChild(this._labelEl),this.getBoolAttr("checked")&&(this._input.checked=!0),this._defaultChecked=this.getBoolAttr("checked"),this._wrapper.appendChild(t),this._syncFormValue(),this._input.checked&&this._uncheckPeers(),vt(this._group())}setupEvents(){this._onChange=()=>this._applyChange(),this._onKeyDown=t=>{const e=bt[t.key];if(!e||t.ctrlKey||t.metaKey||t.altKey)return;const s=this._group().filter(t=>!t._actuallyDisabled);if(s.length<2)return;t.preventDefault();const i=s[(s.indexOf(this)+e+s.length)%s.length];i._input.focus(),i._input.checked=!0,i._applyChange()},this._input.addEventListener("change",this._onChange),this._input.addEventListener("keydown",this._onKeyDown),this._unforwardClicks=y(this,()=>this._input)}teardownEvents(){this._input?.removeEventListener("change",this._onChange),this._input?.removeEventListener("keydown",this._onKeyDown),this._unforwardClicks?.()}_applyChange(){this._input.checked&&this._uncheckPeers(),this._syncing=!0,this.setBoolAttr("checked",this._input.checked),this._syncing=!1,this._syncFormValue(),vt(this._group()),this.emit("glk-change",{checked:this._input.checked,value:this._input.value}),this.dispatchEvent(new Event("change",{bubbles:!0}))}_group(){const t=this.getAttribute("name"),e=this.getRootNode();if(!t||"function"!=typeof e?.querySelectorAll)return[this];const s=_t(this);return[...e.querySelectorAll("glk-radio")].filter(e=>e.getAttribute("name")===t&&_t(e)===s)}_uncheckPeers(){for(const t of this._group())t!==this&&t.checked&&(t.checked=!1)}get _validityField(){return this._input}syncValidity(){const t=this._group(),e=t.some(t=>t.hasAttribute("required"))&&!t.some(t=>t.checked);for(const s of t)s._input&&(s._input.required=e,super.syncValidity.call(s))}onAttributeChanged(t){if(!this._syncing&&this._input)switch(t){case"checked":this._input.checked=this.getBoolAttr("checked"),this._input.checked&&this._uncheckPeers(),this._syncFormValue(),vt(this._group());break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||""),vt(this._group());break;case"value":this._input.setAttribute("value",this.getAttribute("value")||""),this._syncFormValue()}}applyDisabled(t){this._input.disabled=t,vt(this._group())}_syncFormValue(){const t=this.getAttribute("value")||"";this.setFormValue(this._input.checked?t:null)}resetValue(){this._input.checked=this._defaultChecked,this.setBoolAttr("checked",this._defaultChecked),this._syncFormValue(),vt(this._group())}get checked(){return this._input?this._input.checked:this.getBoolAttr("checked")}set checked(t){this._input&&(this._input.checked=t),t&&this._uncheckPeers(),this.setBoolAttr("checked",t),this._input&&this._syncFormValue(),vt(this._group())}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}get value(){return this.getAttribute("value")}set value(t){this.setAttribute("value",t)}}customElements.define("glk-radio",mt);class ft extends w{static get observedAttributes(){return["label","min","max","value","step","name"]}render(){const t=this.createElement("div",["glass-range-group"]),e=this.createElement("div",["glass-range-header"]);this._labelEl=this.createElement("label",[],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._valueEl=this.createElement("span",["glass-range-value"]),e.appendChild(this._labelEl),e.appendChild(this._valueEl),this._input=this.createElement("input",["glass-range"],{id:"field",type:"range",min:this.getAttribute("min")||"0",max:this.getAttribute("max")||"100",value:this.getAttribute("value")||"50"});const s=this.getAttribute("step");s&&this._input.setAttribute("step",s);const i=this.getAttribute("name");i&&this._input.setAttribute("name",i),this._defaultValue=this._input.value,void 0!==this._pendingValue&&(this._input.value=this._pendingValue),this._pendingValue=void 0,this._updateValueDisplay(),t.appendChild(e),t.appendChild(this._input),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onInput=()=>{this._updateValueDisplay(),this._syncFormValue(),this.emit("glk-input",{value:this._input.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._input.addEventListener("input",this._onInput)}teardownEvents(){this._input?.removeEventListener("input",this._onInput)}onAttributeChanged(t){if(this._input)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"min":this._input.min=this.getAttribute("min")||"0";break;case"max":this._input.max=this.getAttribute("max")||"100";break;case"value":this._input.value=this.getAttribute("value")||"50",this._updateValueDisplay(),this._syncFormValue();break;case"step":this._input.step=this.getAttribute("step")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"")}}applyDisabled(t){this._input.disabled=t}_updateValueDisplay(){this._valueEl.textContent=`${this._input.value}%`}_syncFormValue(){this.setFormValue(this._input.value)}resetValue(){this._input.value=this._defaultValue,this._updateValueDisplay(),this._syncFormValue()}get value(){return this._input?this._input.value:this._pendingValue??this.getAttribute("value")??"50"}set value(t){const e=null==t?"":String(t);this._input?(this._input.value=e,this._updateValueDisplay(),this._syncFormValue()):this._pendingValue=e}}customElements.define("glk-range",ft);const xt=["success","warning","error"],yt=["scroll","wrap"];function kt(t){try{const e=JSON.parse(t||"[]");return Array.isArray(e)?e:[]}catch{return[]}}class wt extends w{static get observedAttributes(){return["options","value","full","overflow","label"]}static get delegatesFocus(){return!1}render(){this._group=this.createElement("div",["glass-segmented"],{role:"group",part:"group"}),this._wrapper.appendChild(this._group),this._initialValue=this.value,this._build(),this._applyLayout(),this._applyLabel()}_build(){this._group.replaceChildren();for(const t of kt(this.getAttribute("options"))){const e=String(t.value??""),s=this.createElement("button",["glass-segmented__item"],{type:"button","data-value":e});xt.includes(t.tone)&&(s.classList.add(`glass-segmented__item--${t.tone}`),s.appendChild(this.createElement("span",["glass-segmented__dot"]))),s.appendChild(document.createTextNode(t.label??e)),this._group.appendChild(s)}this.applyDisabled(this._actuallyDisabled),this._syncValue()}applyDisabled(t){const e=this.options;this._group.querySelectorAll("button[data-value]").forEach((s,i)=>{s.disabled=t||Boolean(e[i]?.disabled)})}_syncValue(){const t=this.value;for(const e of this._group.querySelectorAll("button[data-value]"))e.setAttribute("aria-pressed",String(e.dataset.value===t));this.setFormValue(t),this._reveal(this._revealedAt?"smooth":"instant")}_applyLayout(){const t=this.overflow;this._group.classList.toggle("glass-segmented--full",this.getBoolAttr("full"));for(const e of yt)this._group.classList.toggle(`glass-segmented--${e}`,t===e);this._reveal("instant")}_reveal(t){if("scroll"!==this.overflow)return;const e=this._group.querySelector('[aria-pressed="true"]');R(this._group,e,"smooth"===t)&&(this._revealedAt=this._group.clientWidth)}_applyLabel(){const t=this.getAttribute("label");t?this._group.setAttribute("aria-label",t):this._group.removeAttribute("aria-label")}setupEvents(){this._onClick=t=>{const e=t.target.closest("button[data-value]");if(!e||e.disabled)return;const{value:s}=e.dataset;s!==this.value&&(this.value=s,this.emit("glk-change",{value:s}))},this._onResize=()=>{this._group.clientWidth!==this._revealedAt&&this._reveal("instant")},this._group.addEventListener("click",this._onClick),this._resizeObserver=new ResizeObserver(this._onResize),this._resizeObserver.observe(this._group)}teardownEvents(){this._group?.removeEventListener("click",this._onClick),this._resizeObserver?.disconnect(),this._resizeObserver=null}onAttributeChanged(t){if(this._group)switch(t){case"value":this._syncValue();break;case"options":this._build();break;case"full":case"overflow":this._applyLayout();break;case"label":this._applyLabel()}}resetValue(){this.value=this._initialValue}restoreValue(t){"string"==typeof t&&(this.value=t)}get value(){return this.getAttribute("value")??""}set value(t){null==t?this.removeAttribute("value"):this.setAttribute("value",String(t))}get options(){return kt(this.getAttribute("options"))}set options(t){this.setAttribute("options","string"==typeof t?t:JSON.stringify(t??[]))}get full(){return this.getBoolAttr("full")}set full(t){this.setBoolAttr("full",t)}get overflow(){const t=this.getAttribute("overflow");return yt.includes(t)?t:""}set overflow(t){t?this.setAttribute("overflow",String(t)):this.removeAttribute("overflow")}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}}customElements.define("glk-segmented",wt);const At={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7},Et=/^\d{4}-\d{2}$/;function Ct(t){return(Array.isArray(t)?t:[t]).filter(H).slice(0,3)}class Lt extends w{static get observedAttributes(){return["month","value","today","min","max","marks","locale","week-start","label","prev-label","next-label"]}static get delegatesFocus(){return!1}render(){this._root=this.createElement("div",["glass-calendar"],{part:"calendar"});const t=this.createElement("div",["glass-calendar__head"],{part:"head"});this._prev=this.createElement("button",["glass-calendar__nav"],{type:"button"}),this._prev.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M15 6l-6 6 6 6"/></svg>',this._title=this.createElement("div",["glass-calendar__title"],{part:"title","aria-live":"polite"}),this._next=this.createElement("button",["glass-calendar__nav"],{type:"button"}),this._next.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M9 6l6 6-6 6"/></svg>',t.append(this._prev,this._title,this._next),this._grid=this.createElement("div",["glass-calendar__grid"],{role:"group",part:"grid"}),this._root.append(t,this._grid),this._wrapper.appendChild(this._root),this._initialValue=this.value,this._applyLabels(),this._build()}get _todayIso(){return this.getAttribute("today")||D(new Date)}_build(){const t=q(this.getAttribute("locale"),this),e=I(t),s=this.month,i=j(s),r=this.hasAttribute("week-start")?Number(this.getAttribute("week-start")):NaN;this._weekStart=Number.isInteger(r)&&r>=0&&r<=6?r:function(t){try{const e=new Intl.Locale(t),s="function"==typeof e.getWeekInfo?e.getWeekInfo():e.weekInfo;if(s&&s.firstDay>=1&&s.firstDay<=7)return s.firstDay%7}catch{}return 1}(t);const a=O(this.getAttribute("marks")),l=this._todayIso,o=this.getAttribute("min")||"",n=this.getAttribute("max")||"";this._shown=s,this._title.textContent=e.month.format(i),this._grid.replaceChildren();const g=(i.getDay()-this._weekStart+7)%7;for(let t=0;t<7;t+=1){const s=this.createElement("span",["glass-calendar__wd"],{"aria-hidden":"true"});s.textContent=G(e,M(i,t-g)),this._grid.appendChild(s)}for(let t=0;t<42;t+=1){const s=M(i,t-g),r=D(s),c=this.createElement("button",["glass-calendar__day"],{type:"button","data-value":r,"aria-label":e.day.format(s)});s.getMonth()!==i.getMonth()&&c.classList.add("glass-calendar__day--other"),r===l&&c.classList.add("glass-calendar__day--today"),(o&&r<o||n&&r>n)&&c.setAttribute("aria-disabled","true");const d=this.createElement("span");d.textContent=String(s.getDate());const h=this.createElement("span",["glass-calendar__marks"]);for(const t of Ct(a[r]))h.appendChild(this.createElement("span",["glass-calendar__mark",`glass-calendar__mark--${t}`]));c.append(d,h),this._grid.appendChild(c)}this.applyDisabled(this._actuallyDisabled),this._syncValue()}applyDisabled(t){for(const e of[this._prev,this._next,...this._days()])e.disabled=t}_days(){return[...this._grid.querySelectorAll("button[data-value]")]}_dayFor(t){return this._grid.querySelector(`button[data-value="${t}"]`)}_syncValue(){const t=this.value;let e=null;for(const s of this._days()){const i=s.dataset.value===t;s.setAttribute("aria-pressed",String(i)),i&&(e=s)}const s=this._todayIso,i=s.startsWith(this._shown)?this._dayFor(s):this._dayFor(`${this._shown}-01`);this._setTabStop(e??i??this._days()[0]),this.setFormValue(t)}_setTabStop(t){for(const e of this._days())e.tabIndex=e===t?0:-1}_applyLabels(){const t=this.getAttribute("label");t?this._grid.setAttribute("aria-label",t):this._grid.removeAttribute("aria-label"),this._prev.setAttribute("aria-label",this.getAttribute("prev-label")||"Previous month"),this._next.setAttribute("aria-label",this.getAttribute("next-label")||"Next month")}_show(t){this.month=t,this.emit("glk-month",{month:t})}_shift(t){const e=j(this.month),s=new Date(e.getFullYear(),e.getMonth()+t,1);this._show(D(s).slice(0,7))}_focusDay(t){const e=D(t);e.startsWith(this._shown)||this._show(e.slice(0,7));const s=this._dayFor(e);s&&(this._setTabStop(s),s.focus())}_pick(t){t!==this.value&&(this.value=t,this.emit("glk-change",{value:t}))}setupEvents(){this._onPrev=()=>this._shift(-1),this._onNext=()=>this._shift(1),this._onClick=t=>{const e=t.target.closest("button[data-value]");e&&(this._setTabStop(e),"true"!==e.getAttribute("aria-disabled")&&this._pick(e.dataset.value))},this._onKeydown=t=>{const e=t.target.closest("button[data-value]");if(!e)return;const s=j(e.dataset.value),i=(s.getDay()-this._weekStart+7)%7;let r;if(t.key in At)r=M(s,At[t.key]);else if("Home"===t.key)r=M(s,-i);else if("End"===t.key)r=M(s,6-i);else{if("PageUp"!==t.key&&"PageDown"!==t.key)return;{const e="PageUp"===t.key?-1:1,i=new Date(s.getFullYear(),s.getMonth()+e+1,0).getDate();r=new Date(s.getFullYear(),s.getMonth()+e,Math.min(s.getDate(),i))}}t.preventDefault(),this._focusDay(r)},this._prev.addEventListener("click",this._onPrev),this._next.addEventListener("click",this._onNext),this._grid.addEventListener("click",this._onClick),this._grid.addEventListener("keydown",this._onKeydown)}teardownEvents(){this._prev?.removeEventListener("click",this._onPrev),this._next?.removeEventListener("click",this._onNext),this._grid?.removeEventListener("click",this._onClick),this._grid?.removeEventListener("keydown",this._onKeydown)}onAttributeChanged(t){if(this._grid)switch(t){case"value":{const t=this.value;t&&!t.startsWith(this._shown)?this.month=t.slice(0,7):this._syncValue();break}case"label":case"prev-label":case"next-label":this._applyLabels();break;default:this._build()}}resetValue(){this.value=this._initialValue}restoreValue(t){"string"==typeof t&&(this.value=t)}get month(){const t=this.getAttribute("month");if(t&&Et.test(t)&&j(t))return t;const e=this.value;return(e&&j(e)?e:this._todayIso).slice(0,7)}set month(t){t&&Et.test(String(t))?this.setAttribute("month",String(t)):this.removeAttribute("month")}get value(){return this.getAttribute("value")??""}set value(t){null==t||""===t?this.removeAttribute("value"):this.setAttribute("value",String(t))}get marks(){return O(this.getAttribute("marks"))}set marks(t){this.setAttribute("marks","string"==typeof t?t:JSON.stringify(t??{}))}get locale(){return q(this.getAttribute("locale"),this)}set locale(t){t?this.setAttribute("locale",t):this.removeAttribute("locale")}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}}customElements.define("glk-calendar",Lt);function zt(t){const e=t.slice(t.indexOf(",")+1),s=e.endsWith("==")?2:e.endsWith("=")?1:0;return Math.floor(3*e.length/4)-s}class St extends k{static get observedAttributes(){return["src","label","hint","round","max","type","quality","accept","choose-label","change-label","remove-label"]}constructor(){super(),this._src=""}render(){this._src=this.getAttribute("src")||"",this._root=this.createElement("div",["glass-image-picker"],{part:"picker",role:"group"}),this._preview=this.createElement("div",["glass-image-picker__preview"],{part:"preview"});const t=this.createElement("div",["glass-image-picker__meta"],{part:"meta"});this._label=this.createElement("span",["glass-image-picker__label"],{part:"label",id:"label"}),this._hint=this.createElement("span",["glass-image-picker__hint"],{part:"hint",id:"hint"});const e=this.createElement("div",["glass-image-picker__actions"],{part:"actions"});this._choose=this.createElement("button",["glass-btn","glass-btn--secondary","glass-btn--sm","glass-btn--auto"],{type:"button"}),this._remove=this.createElement("button",["glass-btn","glass-btn--tertiary","glass-btn--sm","glass-btn--auto"],{type:"button"}),this._input=this.createElement("input",[],{type:"file",tabindex:"-1"}),this._input.hidden=!0,e.append(this._choose,this._remove,this._input),t.append(this._label,this._hint,e),this._root.append(this._preview,t),this._wrapper.appendChild(this._root),this._update()}get _max(){return Math.max(1,Math.floor(Number(this.getAttribute("max")))||1024)}get _type(){return this.getAttribute("type")||"image/jpeg"}get _quality(){const t=Number(this.getAttribute("quality"));return this.hasAttribute("quality")&&t>=0&&t<=1?t:.82}_update(){if(!this._root)return;const t=this.getAttribute("label")||"",e=this.getAttribute("hint")||"";this._preview.classList.toggle("glass-image-picker__preview--round",this.getBoolAttr("round")),this._src?this._img&&this._img.getAttribute("src")===this._src||(this._img=this.createElement("img",[],{alt:"",src:this._src}),this._preview.replaceChildren(this._img)):(this._img=null,this._preview.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><rect x="3" y="5" width="18" height="14" rx="2"/><circle cx="9" cy="10" r="2"/><path d="M21 15l-5-4-8 8"/></svg>'),this._label.textContent=t,this._label.hidden=!t,this._hint.textContent=e,this._hint.hidden=!e,t?this._root.setAttribute("aria-labelledby","label"):this._root.removeAttribute("aria-labelledby"),e?this._root.setAttribute("aria-describedby","hint"):this._root.removeAttribute("aria-describedby"),this._choose.textContent=this._src?this.getAttribute("change-label")||"Change":this.getAttribute("choose-label")||"Choose",this._remove.textContent=this.getAttribute("remove-label")||"Remove",this._remove.hidden=!this._src,this._input.accept=this.getAttribute("accept")||"image/*"}async _pick(t){if(t)try{const e=await createImageBitmap(t,{imageOrientation:"from-image"}),s=Math.min(1,this._max/Math.max(e.width,e.height)),i=document.createElement("canvas");i.width=Math.max(1,Math.round(e.width*s)),i.height=Math.max(1,Math.round(e.height*s));const r=i.getContext("2d");"image/jpeg"===this._type&&(r.fillStyle="#fff",r.fillRect(0,0,i.width,i.height)),r.drawImage(e,0,0,i.width,i.height),e.close();const a=i.toDataURL(this._type,this._quality);this.src=a,this.emit("glk-change",{dataUrl:a,width:i.width,height:i.height,size:zt(a)})}catch(e){this.emit("glk-error",{message:e?.message||String(e),name:t.name})}}setupEvents(){this._onChoose=()=>this._input.click(),this._onChange=t=>{const e=t.target.files?.[0];t.target.value="",this._pick(e)},this._onRemove=()=>{this.src="",this._choose.focus(),this.emit("glk-change",{dataUrl:"",width:0,height:0,size:0})},this._choose.addEventListener("click",this._onChoose),this._input.addEventListener("change",this._onChange),this._remove.addEventListener("click",this._onRemove)}teardownEvents(){this._choose?.removeEventListener("click",this._onChoose),this._input?.removeEventListener("change",this._onChange),this._remove?.removeEventListener("click",this._onRemove)}onAttributeChanged(t,e,s){"src"===t&&(this._src=s||""),this._update()}get src(){return this._src}set src(t){this._src=t||"",this._update()}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}get round(){return this.getBoolAttr("round")}set round(t){this.setBoolAttr("round",t)}}customElements.define("glk-image-picker",St);const Bt=["success","error"],Vt=["sm","lg"];class Tt extends k{static get observedAttributes(){return["value","label","variant","size"]}render(){this._container=this.createElement("div",this._computeClasses());const t=this.createElement("div",["glass-progress__header"]);this._labelEl=this.createElement("span",["glass-progress__label"]),this._labelEl.textContent=this.getAttribute("label")||"",this._valueEl=this.createElement("span",["glass-progress__value"]),t.appendChild(this._labelEl),t.appendChild(this._valueEl);const e=this.createElement("div",["glass-progress__track"]);this._fill=this.createElement("div",["glass-progress__fill"]),e.appendChild(this._fill),this._container.appendChild(t),this._container.appendChild(e),this._updateValue(),this._wrapper.appendChild(this._container)}onAttributeChanged(t){if(this._container)switch(t){case"value":this._updateValue();break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"variant":case"size":this._container.className=this._computeClasses().join(" ")}}_updateValue(){const t=Math.min(100,Math.max(0,parseInt(this.getAttribute("value")||"0",10)));this._fill.style.width=`${t}%`,this._valueEl.textContent=`${t}%`}_computeClasses(){const t=["glass-progress"],e=this.getAttribute("variant");e&&Bt.includes(e)&&t.push(`glass-progress--${e}`);const s=this.getAttribute("size");return s&&Vt.includes(s)&&t.push(`glass-progress--${s}`),t}get value(){return this.getAttribute("value")}set value(t){this.setAttribute("value",String(t))}}customElements.define("glk-progress",Tt);class Ft extends k{static get observedAttributes(){return["open","title"]}static get observesLightDom(){return!0}render(){this._overlay=this.createElement("dialog",["glass-modal-overlay"],{part:"overlay"});const t=this.createElement("div",["glass-modal"],{part:"modal"}),e=this.createElement("div",["glass-modal__header"],{part:"header"});this._titleEl=this.createElement("h2",["glass-modal__title"],{id:"title"}),this.takeTitle(),this._applyTitle(),e.appendChild(this._titleEl);const s=this.createElement("div",["glass-modal__body"],{part:"body"});s.appendChild(document.createElement("slot")),this._footer=this.createElement("div",["glass-modal__footer"],{part:"footer"}),t.appendChild(e),t.appendChild(s),t.appendChild(this._footer),requestAnimationFrame(()=>this.projectLightDom()),this._overlay.appendChild(t),this._wrapper.appendChild(this._overlay)}projectLightDom(){const t=[...this.querySelectorAll('[slot="actions"] button')],e=t.map(t=>t.outerHTML).join("");e!==this._footerSignature&&(this._footerSignature=e,this._footer.innerHTML="",t.forEach((t,e)=>{const s=t.cloneNode(!0);s.addEventListener("click",()=>{this.querySelectorAll('[slot="actions"] button')[e]?.click()}),this._footer.appendChild(s)}))}setupEvents(){this._onOverlayClick=t=>{t.target===this._overlay&&this._dismiss()},this._overlay.addEventListener("click",this._onOverlayClick),this._onCancel=t=>{t.preventDefault(),this._dismiss()},this._overlay.addEventListener("cancel",this._onCancel),this._onClose=()=>{this._overlay.open||(this._overlay.classList.remove("is-active"),this.open&&this._dismiss())},this._overlay.addEventListener("close",this._onClose),this.open&&this._show()}teardownEvents(){this._overlay?.removeEventListener("click",this._onOverlayClick),this._overlay?.removeEventListener("cancel",this._onCancel),this._overlay?.removeEventListener("close",this._onClose),clearTimeout(this._closeTimer),this._overlay?.removeEventListener("transitionend",this._onFaded),this._overlay?.classList.remove("is-active"),this._overlay?.open&&this._overlay.close()}onAttributeChanged(t,e,s){if(this._overlay)switch(t){case"open":if(!this.isConnected)return;this.open?this._show():this._hide();break;case"title":this.takeTitle(s)&&this._applyTitle()}}_show(){const t=this._overlay;clearTimeout(this._closeTimer),t.removeEventListener("transitionend",this._onFaded),t.open||(t.showModal(),(this._footer.querySelector("[autofocus]")||this.querySelector("[autofocus]"))?.focus()),t.offsetHeight,requestAnimationFrame(()=>{this.open&&t.classList.add("is-active")})}_hide(){const t=this._overlay;t.classList.remove("is-active"),this._onFaded=e=>{e&&e.target!==t||(clearTimeout(this._closeTimer),t.removeEventListener("transitionend",this._onFaded),!this.open&&t.open&&t.close())},!t.open||"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches?this._onFaded():(t.addEventListener("transitionend",this._onFaded),this._closeTimer=setTimeout(this._onFaded,400))}_dismiss(){this.removeAttribute("open"),this.emit("glk-close")}show(){this.setAttribute("open","")}close(){this.removeAttribute("open")}_applyTitle(){this._titleEl&&(this._titleEl.textContent=this._title||"",this._title?this._overlay.setAttribute("aria-labelledby","title"):this._overlay.removeAttribute("aria-labelledby"))}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}}customElements.define("glk-modal",Ft);const Dt=["success","error","warning"],jt={success:'<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><polyline points="22 4 12 14.01 9 11.01"/></svg>',error:'<svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="10"/><line x1="15" y1="9" x2="9" y2="15"/><line x1="9" y1="9" x2="15" y2="15"/></svg>',warning:'<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>'};class Mt extends k{static get observedAttributes(){return["message","variant","duration","visible","action-label","action-value","dismissible","close-label"]}render(){this._toast=this.createElement("div",this._computeClasses(),{role:"status","aria-live":"polite"}),this._iconEl=this.createElement("span",["glass-toast__icon"]),this._iconSlot=this.createElement("slot",[],{name:"icon"}),this._iconEl.appendChild(this._iconSlot),this._textEl=this.createElement("span",["glass-toast__text"]),this._textEl.textContent=this.getAttribute("message")||"",this._actionBtn=this.createElement("button",["glass-toast__action"],{type:"button"}),this._closeBtn=this.createElement("button",["glass-toast__close"],{type:"button"}),this._closeBtn.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M6 6l12 12M18 6L6 18"/></svg>',this._updateIcon(),this._toast.append(this._iconEl,this._textEl),this._wrapper.appendChild(this._toast),this._syncControls(),this.getBoolAttr("visible")&&this._show()}setupEvents(){this._onClick=t=>{const e=t.composedPath();e.includes(this._closeBtn)?this._close():e.includes(this._actionBtn)&&this._takeAction()},this._onKeydown=t=>{"Escape"===t.key&&this._hasButtons()&&(t.stopPropagation(),this._close())},this._onHold=t=>{"focusin"!==t.type||this._toast.contains(t.relatedTarget)||(this._returnFocus=t.relatedTarget),this._hasButtons()&&(this._held=!0,clearTimeout(this._timer))},this._onRelease=t=>{"focusout"===t.type&&this._toast.contains(t.relatedTarget)||(this._held=this._toast.matches(":hover")||this._toast.contains(this._shadow.activeElement),this._held||this._arm())},this._toast.addEventListener("click",this._onClick),this._toast.addEventListener("keydown",this._onKeydown),this._toast.addEventListener("pointerenter",this._onHold),this._toast.addEventListener("focusin",this._onHold),this._toast.addEventListener("pointerleave",this._onRelease),this._toast.addEventListener("focusout",this._onRelease)}teardownEvents(){clearTimeout(this._timer),this._toast&&(this._toast.removeEventListener("click",this._onClick),this._toast.removeEventListener("keydown",this._onKeydown),this._toast.removeEventListener("pointerenter",this._onHold),this._toast.removeEventListener("focusin",this._onHold),this._toast.removeEventListener("pointerleave",this._onRelease),this._toast.removeEventListener("focusout",this._onRelease))}onAttributeChanged(t){if(this._toast)switch(t){case"message":this._textEl.textContent=this.getAttribute("message")||"";break;case"variant":this._toast.className=this._computeClasses().join(" "),this._updateIcon();break;case"visible":this.getBoolAttr("visible")?this._show():this._hide();break;case"action-label":case"action-value":case"dismissible":case"close-label":this._syncControls()}}_computeClasses(){const t=["glass-toast"],e=this.getAttribute("variant");return e&&Dt.includes(e)&&t.push(`glass-toast--${e}`),this.getBoolAttr("visible")&&t.push("is-visible"),t}_updateIcon(){this._iconSlot.innerHTML=jt[this.getAttribute("variant")]||jt.success}_hasButtons(){return this._actionBtn.isConnected||this._closeBtn.isConnected}_syncControls(){const t=this.getAttribute("action-label");t?(this._actionBtn.textContent=t,this._actionBtn.isConnected||this._textEl.after(this._actionBtn)):this._actionBtn.remove(),t||this.getBoolAttr("dismissible")?this._closeBtn.isConnected||this._toast.appendChild(this._closeBtn):this._closeBtn.remove(),this._closeBtn.setAttribute("aria-label",this.getAttribute("close-label")||"Close"),this._syncInert()}_syncInert(){const t=!this.getBoolAttr("visible");this._actionBtn.inert=t,this._closeBtn.inert=t}_duration(){const t=this.getAttribute("duration");return null!==t&&""!==t.trim()&&Number.isFinite(Number(t))?Number(t):this.getAttribute("action-label")?0:3e3}_arm(){clearTimeout(this._timer);const t=this._duration();t>0&&!this._held&&this.getBoolAttr("visible")&&(this._timer=setTimeout(()=>{this.removeAttribute("visible"),this.emit("glk-dismiss")},t))}_show(){this._toast.classList.add("is-visible"),this._syncInert(),this._arm()}_hide(){if(this._toast.classList.remove("is-visible"),clearTimeout(this._timer),this._held=!1,this._toast.contains(this._shadow.activeElement)){const t=this._returnFocus;t?.isConnected&&t.focus({preventScroll:!0}),this._toast.contains(this._shadow.activeElement)&&this._shadow.activeElement.blur()}this._returnFocus=null,this._syncInert()}_close(){this.removeAttribute("visible"),this.emit("glk-close")}_takeAction(){const t=this.getAttribute("action-label")||"",e=this.getAttribute("action-value")??t,s=this._shown;this.emit("glk-action",{action:e,label:t},{cancelable:!0})&&this._shown===s&&this.removeAttribute("visible")}show(t,e,s){if(this._shown=(this._shown??0)+1,t&&this.setAttribute("message",t),e&&"object"==typeof e){const t=e;"variant"in t&&this._setOrRemove("variant",t.variant),t.action?(this.setAttribute("action-label",String(t.action.label??t.action.value??"")),this._setOrRemove("action-value",t.action.value)):(this.removeAttribute("action-label"),this.removeAttribute("action-value")),"duration"in t?this._setOrRemove("duration",t.duration):t.action&&this.removeAttribute("duration"),"dismissible"in t&&this.setBoolAttr("dismissible",t.dismissible)}else e&&this.setAttribute("variant",e),s&&this.setAttribute("duration",String(s));this.getBoolAttr("visible")?this._show():this.setAttribute("visible","")}_setOrRemove(t,e){null==e||""===e?this.removeAttribute(t):this.setAttribute(t,String(e))}dismiss(){this.removeAttribute("visible")}get dismissible(){return this.getBoolAttr("dismissible")}set dismissible(t){this.setBoolAttr("dismissible",t)}}customElements.define("glk-toast",Mt);const Ot=["top","bottom","start","end"];class qt extends k{static get observedAttributes(){return["open","placement"]}render(){this._anchor=this.createElement("div",["glass-popover-anchor"]),this._triggerSlot=document.createElement("slot"),this._triggerSlot.setAttribute("name","trigger"),this._anchor.appendChild(this._triggerSlot),this._popover=this.createElement("div",["glass-popover"]),this._applyPlacement(),this.getBoolAttr("open")&&this._popover.classList.add("is-open");const t=document.createElement("slot");this._popover.appendChild(t),this._anchor.appendChild(this._popover),this._wrapper.appendChild(this._anchor)}_applyPlacement(){if(!this._popover)return;Ot.forEach(t=>this._popover.classList.remove(`glass-popover--${t}`));const t=this.getAttribute("placement")||"bottom";"bottom"!==t&&Ot.includes(t)&&this._popover.classList.add(`glass-popover--${t}`)}_applyExpanded(){const t=String(this.getBoolAttr("open"));for(const e of this._triggerSlot.assignedElements())e.setAttribute("aria-expanded",t)}setupEvents(){this._onSlotChange=()=>this._applyExpanded(),this._triggerSlot.addEventListener("slotchange",this._onSlotChange),this._applyExpanded(),this._onTriggerClick=t=>{t.composedPath().some(t=>t instanceof Element&&t.getAttribute&&"trigger"===t.getAttribute("slot"))&&(t.stopPropagation(),this.toggle())},this.addEventListener("click",this._onTriggerClick),this._onDocClick=t=>{if(!this.getBoolAttr("open"))return;t.composedPath().includes(this)||this.close()},document.addEventListener("click",this._onDocClick),this._onKeydown=t=>{"Escape"===t.key&&this.getBoolAttr("open")&&this.close()},document.addEventListener("keydown",this._onKeydown)}teardownEvents(){this._triggerSlot?.removeEventListener("slotchange",this._onSlotChange),this.removeEventListener("click",this._onTriggerClick),document.removeEventListener("click",this._onDocClick),document.removeEventListener("keydown",this._onKeydown)}onAttributeChanged(t){if(this._popover)switch(t){case"open":{const t=this.getBoolAttr("open");this._popover.classList.toggle("is-open",t),this._applyExpanded(),this.emit(t?"glk-open":"glk-close");break}case"placement":this._applyPlacement()}}show(){this.setAttribute("open","")}close(){this.removeAttribute("open")}toggle(){this.getBoolAttr("open")?this.close():this.show()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}get placement(){return this.getAttribute("placement")||"bottom"}set placement(t){Ot.includes(t)&&this.setAttribute("placement",t)}}customElements.define("glk-popover",qt);class Nt extends k{static get observedAttributes(){return["open","inline","title"]}render(){this._overlay=this.createElement("div",[],{part:"overlay"}),this._panel=this.createElement("div",["glass-sheet"],{role:"dialog",part:"sheet"}),this._panel.appendChild(this.createElement("div",["glass-sheet__grip"],{"aria-hidden":"true"})),this._titleEl=this.createElement("h2",["glass-sheet__title"],{part:"title"});const t=this.createElement("div",["glass-sheet__body"],{part:"body"});t.appendChild(document.createElement("slot"));const e=this.createElement("div",["glass-sheet__actions"],{part:"actions"});e.appendChild(this.createElement("slot",[],{name:"actions"})),this._panel.append(this._titleEl,t,e),this._overlay.appendChild(this._panel),this._wrapper.appendChild(this._overlay),this.takeTitle(),this._applyTitle(),this._applyMode()}_applyTitle(){if(!this._titleEl)return;const t=this._title||"";this._titleEl.textContent=t,this._titleEl.hidden=!t,t?this._panel.setAttribute("aria-label",t):this._panel.removeAttribute("aria-label")}_applyMode(){const t=this.inline;this._overlay.classList.toggle("glass-sheet-overlay",!t),this._panel.classList.toggle("glass-sheet--inline",t),this._panel.setAttribute("aria-modal",String(!t)),clearTimeout(this._hideTimer),t?(this._overlay.classList.remove("is-active"),this._overlay.hidden=!1):this.open?this._show():(this._overlay.classList.remove("is-active"),this._overlay.hidden=!0)}_show(){clearTimeout(this._hideTimer),this._panel.removeEventListener("transitionend",this._onHidden),this._overlay.hidden=!1,this._overlay.offsetHeight,requestAnimationFrame(()=>{this.open&&!this.inline&&this._overlay.classList.add("is-active")})}_hide(){this._overlay.classList.remove("is-active"),this._onHidden=()=>{clearTimeout(this._hideTimer),this._panel.removeEventListener("transitionend",this._onHidden),this.open||this.inline||(this._overlay.hidden=!0)},"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches?this._onHidden():(this._panel.addEventListener("transitionend",this._onHidden),this._hideTimer=setTimeout(this._onHidden,400))}_dismiss(){this.removeAttribute("open"),this.emit("glk-close")}setupEvents(){this._onOverlayClick=t=>{this.inline||t.target!==this._overlay||this._dismiss()},this._onKeydown=t=>{"Escape"===t.key&&this.open&&!this.inline&&this._dismiss()},this._overlay.addEventListener("click",this._onOverlayClick),document.addEventListener("keydown",this._onKeydown)}teardownEvents(){this._overlay?.removeEventListener("click",this._onOverlayClick),document.removeEventListener("keydown",this._onKeydown)}onAttributeChanged(t,e,s){if(this._overlay)switch(t){case"open":if(this.inline)return;this.open?this._show():this._hide();break;case"inline":this._applyMode();break;case"title":this.takeTitle(s)&&this._applyTitle()}}show(){this.setAttribute("open","")}close(){this.removeAttribute("open")}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}get inline(){return this.getBoolAttr("inline")}set inline(t){this.setBoolAttr("inline",t)}}customElements.define("glk-sheet",Nt);class It extends k{render(){const t=this.createElement("div",["glass-accordion"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t)}}customElements.define("glk-accordion",It);class Gt extends k{static get observedAttributes(){return["title","open"]}render(){this._item=this.createElement("div",["glass-accordion__item"]),this._trigger=this.createElement("button",["glass-accordion__trigger"],{type:"button","aria-controls":"content"}),this.takeTitle(),this._triggerText=document.createTextNode(this._title||""),this._trigger.appendChild(this._triggerText),this._trigger.insertAdjacentHTML("beforeend",'<span class="glass-accordion__trigger-icon"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><polyline points="6 9 12 15 18 9"/></svg></span>'),this._content=this.createElement("div",["glass-accordion__content"],{id:"content"});const t=this.createElement("div",["glass-accordion__body"]);t.appendChild(document.createElement("slot")),this._content.appendChild(t),this._item.appendChild(this._trigger),this._item.appendChild(this._content),this._wrapper.appendChild(this._item),this._applyOpen()}_applyOpen(){const t=this.getBoolAttr("open");this._item.classList.toggle("is-open",t),this._trigger.setAttribute("aria-expanded",String(t)),this._content.inert=!t}setupEvents(){this._onClick=()=>{this.setBoolAttr("open",!this.getBoolAttr("open")),this.emit("glk-toggle",{open:this.getBoolAttr("open")})},this._trigger.addEventListener("click",this._onClick)}teardownEvents(){this._trigger?.removeEventListener("click",this._onClick)}onAttributeChanged(t,e,s){if(this._item)switch(t){case"open":this._applyOpen();break;case"title":this.takeTitle(s)&&this._applyTitle()}}_applyTitle(){this._triggerText&&(this._triggerText.textContent=this._title||"")}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}}customElements.define("glk-accordion-item",Gt);class Ht extends k{static get observedAttributes(){return["flush","bare","header"]}render(){this._header=this.createElement("div",["glass-list__section-header"],{part:"header"});const t=this.getAttribute("header")||"";this._header.textContent=t,this._header.hidden=!t,this._wrapper.appendChild(this._header),this._ul=this.createElement("ul",["glass-list"],{part:"list"}),this.getBoolAttr("flush")&&this._ul.classList.add("glass-list--flush"),this.getBoolAttr("bare")&&this._ul.classList.add("glass-list--bare"),this._ul.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._ul)}setupEvents(){this._syncLast(),this._mutObserver=new MutationObserver(()=>this._syncLast()),this._mutObserver.observe(this,{childList:!0})}teardownEvents(){this._mutObserver?.disconnect()}_syncLast(){const t=this.querySelectorAll(":scope > glk-list-item"),e=t.length-1;t.forEach((t,s)=>{s===e?t.setAttribute("data-last",""):t.removeAttribute("data-last")})}onAttributeChanged(t){if(this._ul)switch(t){case"flush":this._ul.classList.toggle("glass-list--flush",this.getBoolAttr("flush"));break;case"bare":this._ul.classList.toggle("glass-list--bare",this.getBoolAttr("bare"));break;case"header":{const t=this.getAttribute("header")||"";this._header.textContent=t,this._header.hidden=!t;break}}}get flush(){return this.getBoolAttr("flush")}set flush(t){this.setBoolAttr("flush",t)}get bare(){return this.getBoolAttr("bare")}set bare(t){this.setBoolAttr("bare",t)}get header(){return this.getAttribute("header")||""}set header(t){t?this.setAttribute("header",t):this.removeAttribute("header")}}customElements.define("glk-list",Ht);const Rt=new CSSStyleSheet;Rt.replaceSync("\n :host([data-last]) .glass-list__item::after { content: none; }\n");const Pt=["danger","accent"];class $t extends k{static get observedAttributes(){return["title","subtitle","interactive","center","leading-lg","wrap","detail","variant","data-last"]}constructor(){super(),this._shadow.adoptedStyleSheets=[...this._shadow.adoptedStyleSheets,Rt]}render(){const t=this.createElement("div");t.style.display="contents",this._item=this.createElement("li",["glass-list__item"]),this.getBoolAttr("interactive")&&this._item.classList.add("glass-list__item--interactive"),this.getBoolAttr("center")&&this._item.classList.add("glass-list__item--center");const e=this.getAttribute("variant");e&&Pt.includes(e)&&this._item.classList.add(`glass-list__item--${e}`),this._leading=this.createElement("span",["glass-list__leading"]),this.getBoolAttr("leading-lg")&&this._leading.classList.add("glass-list__leading--lg"),this._leadingSlot=document.createElement("slot"),this._leadingSlot.setAttribute("name","leading"),this._leading.appendChild(this._leadingSlot),this._leading.hidden=!0,this._content=this.createElement("div",["glass-list__content"]),this._titleEl=this.createElement("div",["glass-list__title"]),this.takeTitle(),this._titleEl.textContent=this._title||"",this._subtitleEl=this.createElement("div",["glass-list__subtitle"]),this.getBoolAttr("wrap")&&this._subtitleEl.classList.add("glass-list__subtitle--wrap");const s=this.getAttribute("subtitle")||"";this._subtitleEl.textContent=s,this._subtitleEl.hidden=!s,this._content.appendChild(this._titleEl),this._content.appendChild(this._subtitleEl),this._trailing=this.createElement("div",["glass-list__trailing"]),this._valueEl=this.createElement("span",["glass-list__value"]);const i=this.getAttribute("detail")||"";this._valueEl.textContent=i,this._valueEl.hidden=!i,this._trailing.appendChild(this._valueEl),this._trailingSlot=document.createElement("slot"),this._trailingSlot.setAttribute("name","trailing"),this._trailing.appendChild(this._trailingSlot),this._trailing.hidden=!i,this._item.appendChild(this._leading),this._item.appendChild(this._content),this._item.appendChild(this._trailing);const r=this.createElement("span");r.hidden=!0,r.setAttribute("aria-hidden","true"),t.appendChild(this._item),t.appendChild(r),this._wrapper.appendChild(t)}setupEvents(){this._onLeadingSlotChange=()=>{this._leading.hidden=0===this._leadingSlot.assignedNodes().length},this._onTrailingSlotChange=()=>{const t=this._trailingSlot.assignedNodes().length>0,e=!this._valueEl.hidden;this._trailing.hidden=!t&&!e},this._leadingSlot.addEventListener("slotchange",this._onLeadingSlotChange),this._trailingSlot.addEventListener("slotchange",this._onTrailingSlotChange),this._onLeadingSlotChange(),this._onTrailingSlotChange(),this._onClick=()=>{this.getBoolAttr("interactive")&&this.emit("glk-click")},this._item.addEventListener("click",this._onClick)}teardownEvents(){this._leadingSlot?.removeEventListener("slotchange",this._onLeadingSlotChange),this._trailingSlot?.removeEventListener("slotchange",this._onTrailingSlotChange),this._item?.removeEventListener("click",this._onClick)}onAttributeChanged(t,e,s){if(this._item)switch(t){case"title":this.takeTitle(s)&&this._applyTitle();break;case"subtitle":{const t=this.getAttribute("subtitle")||"";this._subtitleEl.textContent=t,this._subtitleEl.hidden=!t;break}case"interactive":this._item.classList.toggle("glass-list__item--interactive",this.getBoolAttr("interactive"));break;case"center":this._item.classList.toggle("glass-list__item--center",this.getBoolAttr("center"));break;case"leading-lg":this._leading.classList.toggle("glass-list__leading--lg",this.getBoolAttr("leading-lg"));break;case"wrap":this._subtitleEl.classList.toggle("glass-list__subtitle--wrap",this.getBoolAttr("wrap"));break;case"detail":{const t=this.getAttribute("detail")||"";this._valueEl.textContent=t,this._valueEl.hidden=!t,this._onTrailingSlotChange&&this._onTrailingSlotChange();break}case"variant":{Pt.forEach(t=>this._item.classList.remove(`glass-list__item--${t}`));const t=this.getAttribute("variant");t&&Pt.includes(t)&&this._item.classList.add(`glass-list__item--${t}`);break}}}_applyTitle(){this._titleEl&&(this._titleEl.textContent=this._title||"")}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get interactive(){return this.getBoolAttr("interactive")}set interactive(t){this.setBoolAttr("interactive",t)}get center(){return this.getBoolAttr("center")}set center(t){this.setBoolAttr("center",t)}get leadingLg(){return this.getBoolAttr("leading-lg")}set leadingLg(t){this.setBoolAttr("leading-lg",t)}get wrap(){return this.getBoolAttr("wrap")}set wrap(t){this.setBoolAttr("wrap",t)}get detail(){return this.getAttribute("detail")||""}set detail(t){t?this.setAttribute("detail",t):this.removeAttribute("detail")}get variant(){return this.getAttribute("variant")||""}set variant(t){t&&Pt.includes(t)?this.setAttribute("variant",t):this.removeAttribute("variant")}}return customElements.define("glk-list-item",$t),t.GlkAccordion=It,t.GlkAccordionItem=Gt,t.GlkAvatar=Q,t.GlkBadge=X,t.GlkButton=lt,t.GlkCalendar=Lt,t.GlkCard=W,t.GlkCheckbox=ut,t.GlkDateStrip=Y,t.GlkDivider=tt,t.GlkElement=k,t.GlkEmpty=st,t.GlkFormElement=w,t.GlkImagePicker=St,t.GlkInput=gt,t.GlkList=Ht,t.GlkListItem=$t,t.GlkModal=Ft,t.GlkNav=A,t.GlkPill=C,t.GlkPopover=qt,t.GlkProgress=Tt,t.GlkRadio=mt,t.GlkRange=ft,t.GlkSearch=ht,t.GlkSegmented=wt,t.GlkSelect=dt,t.GlkSheet=Nt,t.GlkStatus=et,t.GlkSteps=T,t.GlkTabAccessory=V,t.GlkTabBar=L,t.GlkTabDock=S,t.GlkTabItem=z,t.GlkTextarea=ct,t.GlkTitle=Z,t.GlkToast=Mt,t.GlkToggle=pt,t}({});
|
|
1
|
+
var GlassKitElements=function(t){"use strict";const e=":root,[data-theme=dark]{color-scheme:dark;--gl-color-primary:#f5a623;--gl-color-primary-dark:#d4692a;--gl-color-primary-mid:color-mix(in srgb, var(--gl-color-primary) 32%, var(--gl-color-primary-dark));--gl-color-bg-dark:#0e2530;--gl-color-bg-mid:#1a3d4e;--gl-color-bg-light:#1b3e50;--gl-color-text:#ffffff;--gl-color-text-muted:rgba(255, 255, 255, 0.60);--gl-color-text-on-light:#1a3a4a;--gl-color-text-heading:#ffffff;--gl-select-chevron:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E\");--gl-color-success:#34c759;--gl-color-error:#ff3b30;--gl-color-warning:#ffcc00;--gl-color-success-dark:#2da44e;--gl-color-error-dark:#d63027;--gl-color-on-primary:#ffffff;--gl-color-on-success:#ffffff;--gl-color-on-error:#ffffff;--gl-color-primary-on-surface:color-mix(in srgb, var(--gl-color-primary) 50%, #ffffff);--gl-color-success-on-surface:color-mix(in srgb, var(--gl-color-success) 62%, #ffffff);--gl-color-error-on-surface:color-mix(in srgb, var(--gl-color-error) 50%, #ffffff);--gl-color-warning-on-surface:color-mix(in srgb, var(--gl-color-warning) 80%, #ffffff);--gl-color-primary-text:var(--gl-color-primary);--gl-state-scrim:rgba(0, 0, 0, 0.30);--gl-color-primary-surface:color-mix(in srgb, var(--gl-color-primary) 25%, transparent);--gl-color-primary-border:var(--gl-border-warm);--gl-color-success-surface:color-mix(in srgb, var(--gl-color-success) 15%, transparent);--gl-color-success-border:color-mix(in srgb, var(--gl-color-success) 30%, transparent);--gl-color-error-surface:color-mix(in srgb, var(--gl-color-error) 15%, transparent);--gl-color-error-border:color-mix(in srgb, var(--gl-color-error) 30%, transparent);--gl-color-warning-surface:color-mix(in srgb, var(--gl-color-warning) 15%, transparent);--gl-color-warning-border:color-mix(in srgb, var(--gl-color-warning) 30%, transparent);--gl-surface-1:rgba(255, 255, 255, 0.08);--gl-surface-2:rgba(255, 255, 255, 0.10);--gl-surface-3:rgba(255, 255, 255, 0.14);--gl-surface-4:rgba(255, 255, 255, 0.16);--gl-surface-5:rgba(255, 255, 255, 0.22);--gl-surface-milk:rgba(255, 255, 255, 0.55);--gl-surface-milk-strong:rgba(255, 255, 255, 0.75);--gl-surface-overlay:rgba(0, 0, 0, 0.50);--gl-card-glow-top:rgba(255, 255, 255, 0.32);--gl-card-glow-mid:rgba(255, 255, 255, 0.22);--gl-card-glow-low:rgba(255, 255, 255, 0.14);--gl-card-glow-bottom:rgba(255, 255, 255, 0.08);--gl-card-icon-color:rgba(255, 255, 255, 0.8);--gl-card-text-color:rgba(255, 255, 255, 0.7);--gl-border-subtle:rgba(255, 255, 255, 0.18);--gl-border-medium:rgba(255, 255, 255, 0.30);--gl-border-strong:rgba(255, 255, 255, 0.40);--gl-border-milk:rgba(255, 255, 255, 0.60);--gl-border-warm:color-mix(in srgb, color-mix(in srgb, var(--gl-color-primary) 68%, #ffffff) 35%, transparent);--gl-border-focus:color-mix(in srgb, var(--gl-color-primary) 60%, transparent);--gl-icon-default:rgba(255, 255, 255, 0.6);--gl-icon-muted:rgba(255, 255, 255, 0.45);--gl-icon-strong:rgba(255, 255, 255, 0.8);--gl-icon-on-primary:var(--gl-color-on-primary, #ffffff);--gl-icon-on-secondary:#1a3a4a;--gl-icon-on-tertiary:rgba(255, 255, 255, 0.6);--gl-blur:24px;--gl-blur-light:16px;--gl-blur-soft:12px;--gl-blur-heavy:40px;--gl-radius-pill:50%;--gl-radius-full:9999px;--gl-radius-card:24px;--gl-radius-btn:16px;--gl-radius-input:14px;--gl-radius-sm:12px;--gl-radius-xs:8px;--gl-shadow-card:0 8px 32px rgba(0, 0, 0, 0.18);--gl-shadow-btn:0 4px 16px rgba(0, 0, 0, 0.12);--gl-shadow-btn-primary:0 6px 24px color-mix(in srgb, var(--gl-color-primary-mid) 35%, transparent),0 2px 8px rgba(0, 0, 0, 0.15);--gl-shadow-glow:0 2px 12px rgba(255, 255, 255, 0.08),0 4px 16px rgba(0, 0, 0, 0.15);--gl-shadow-modal:0 24px 80px rgba(0, 0, 0, 0.4),0 8px 32px rgba(0, 0, 0, 0.2);--gl-shadow-toast:0 8px 32px rgba(0, 0, 0, 0.25);--gl-shadow-focus:0 0 0 3px color-mix(in srgb, var(--gl-color-primary) 30%, transparent);--gl-inset-subtle:inset 0 1px 1px rgba(255, 255, 255, 0.10);--gl-inset-medium:inset 0 1px 1px rgba(255, 255, 255, 0.15);--gl-inset-strong:inset 0 1px 2px rgba(255, 255, 255, 0.25);--gl-inset-milk:inset 0 1px 2px rgba(255, 255, 255, 0.40);--gl-gloss-card:linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.5) 30%,\n rgba(255,255,255,0.6) 50%, rgba(255,255,255,0.5) 70%, transparent 100%);--gl-gloss-modal:linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.4) 30%,\n rgba(255,255,255,0.5) 50%, rgba(255,255,255,0.4) 70%, transparent 100%);--gl-gloss-progress:linear-gradient(to bottom, rgba(255,255,255,0.3) 0%, transparent 100%);--gl-range-thumb-border:2px solid rgba(255,255,255,0.5);--gl-bg-aurora-1:rgba(60, 160, 160, 0.25);--gl-bg-aurora-2:rgba(200, 140, 60, 0.12);--gl-bg-aurora-3:rgba(80, 180, 200, 0.18);--gl-bg-light-streak-1:rgba(90, 210, 200, 0.14);--gl-bg-light-streak-2:rgba(110, 200, 190, 0.10);--gl-bg-warm-glow:rgba(220, 160, 70, 0.10);--gl-space-2xs:4px;--gl-space-xs:8px;--gl-space-sm:12px;--gl-space-md:16px;--gl-space-lg:20px;--gl-space-xl:24px;--gl-space-2xl:32px;--gl-space-3xl:40px;--gl-space-4xl:56px;--gl-control-height:52px;--gl-btn-height:56px;--gl-btn-height-sm:44px;--gl-btn-height-lg:64px;--gl-textarea-min-height:120px;--gl-list-item-min-height:56px;--gl-toggle-width:52px;--gl-toggle-height:30px;--gl-toggle-thumb-size:22px;--gl-check-size:24px;--gl-modal-action-height:52px;--gl-font-family:-apple-system,BlinkMacSystemFont,'SF Pro Display','Segoe UI',Roboto,Helvetica,Arial,sans-serif;--gl-font-size-xs:13px;--gl-font-size-sm:14px;--gl-font-size-base:15px;--gl-font-size-btn:16px;--gl-font-size-lg:18px;--gl-font-size-title:24px;--gl-font-size-modal:20px;--gl-font-weight-normal:400;--gl-font-weight-medium:500;--gl-font-weight-semibold:600;--gl-transition:all 0.25s ease;--gl-transition-fast:all 0.15s ease;--gl-transition-modal:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);--gl-tab-bar-height:82px;--gl-modal-max-width:340px;--gl-tab-bar-floating-bottom:16px;--gl-tab-bar-floating-gap:var(--gl-space-sm);--gl-tab-bar-floating-padding:6px 10px;--gl-tab-bar-floating-radius:var(--gl-radius-full);--gl-tab-bar-accessory-size:56px;--gl-tab-bar-spotlight-color:var(--gl-color-primary);--gl-placeholder:rgba(255, 255, 255, 0.35);--gl-accordion-body-color:var(--gl-color-text-muted);--gl-toggle-thumb-bg:linear-gradient(to bottom,\n rgba(255,255,255,0.9) 0%,\n rgba(255,255,255,0.7) 100%);--gl-range-track-bg:var(--gl-surface-2);--gl-range-track-border:var(--gl-border-subtle)}[data-theme=light]{color-scheme:light;--gl-color-primary:#e8852d;--gl-color-primary-dark:#c96a1e;--gl-color-primary-mid:color-mix(in srgb, var(--gl-color-primary) 52%, var(--gl-color-primary-dark));--gl-color-bg-dark:#e8ecf1;--gl-color-bg-mid:#f0f4f8;--gl-color-bg-light:#f5f7fa;--gl-color-text:#1a2a36;--gl-color-text-muted:rgba(26, 42, 54, 0.55);--gl-color-text-on-light:#1a3a4a;--gl-color-text-heading:#0f1f2a;--gl-select-chevron:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(26,42,54,0.55)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E\");--gl-color-success:#28a745;--gl-color-error:#dc3545;--gl-color-warning:#e6a800;--gl-color-success-dark:#1e7e34;--gl-color-error-dark:#b02a37;--gl-color-on-primary:#ffffff;--gl-color-on-success:#ffffff;--gl-color-on-error:#ffffff;--gl-color-primary-on-surface:color-mix(in srgb, var(--gl-color-primary) 60%, #000000);--gl-color-success-on-surface:color-mix(in srgb, var(--gl-color-success) 68%, #000000);--gl-color-error-on-surface:color-mix(in srgb, var(--gl-color-error) 82%, #000000);--gl-color-warning-on-surface:color-mix(in srgb, var(--gl-color-warning) 56%, #000000);--gl-color-primary-text:var(--gl-color-primary);--gl-state-scrim:rgba(255, 255, 255, 0.30);--gl-color-primary-surface:color-mix(in srgb, var(--gl-color-primary) 25%, transparent);--gl-color-primary-border:var(--gl-border-warm);--gl-color-success-surface:color-mix(in srgb, var(--gl-color-success) 15%, transparent);--gl-color-success-border:color-mix(in srgb, var(--gl-color-success) 30%, transparent);--gl-color-error-surface:color-mix(in srgb, var(--gl-color-error) 15%, transparent);--gl-color-error-border:color-mix(in srgb, var(--gl-color-error) 30%, transparent);--gl-color-warning-surface:color-mix(in srgb, var(--gl-color-warning) 15%, transparent);--gl-color-warning-border:color-mix(in srgb, var(--gl-color-warning) 30%, transparent);--gl-surface-1:rgba(255, 255, 255, 0.50);--gl-surface-2:rgba(255, 255, 255, 0.60);--gl-surface-3:rgba(255, 255, 255, 0.70);--gl-surface-4:rgba(255, 255, 255, 0.75);--gl-surface-5:rgba(255, 255, 255, 0.85);--gl-surface-milk:rgba(255, 255, 255, 0.85);--gl-surface-milk-strong:rgba(255, 255, 255, 0.92);--gl-surface-overlay:rgba(0, 0, 0, 0.25);--gl-card-glow-top:rgba(255, 255, 255, 0.90);--gl-card-glow-mid:rgba(255, 255, 255, 0.78);--gl-card-glow-low:rgba(255, 255, 255, 0.65);--gl-card-glow-bottom:rgba(255, 255, 255, 0.50);--gl-card-icon-color:rgba(26, 42, 54, 0.5);--gl-card-text-color:rgba(26, 42, 54, 0.6);--gl-border-subtle:rgba(0, 0, 0, 0.08);--gl-border-medium:rgba(0, 0, 0, 0.12);--gl-border-strong:rgba(0, 0, 0, 0.15);--gl-border-milk:rgba(0, 0, 0, 0.10);--gl-border-warm:color-mix(in srgb, var(--gl-color-primary) 30%, transparent);--gl-border-focus:color-mix(in srgb, var(--gl-color-primary) 50%, transparent);--gl-icon-default:rgba(26, 42, 54, 0.50);--gl-icon-muted:rgba(26, 42, 54, 0.35);--gl-icon-strong:rgba(26, 42, 54, 0.70);--gl-icon-on-primary:var(--gl-color-on-primary, #ffffff);--gl-icon-on-secondary:#1a3a4a;--gl-icon-on-tertiary:rgba(26, 42, 54, 0.50);--gl-shadow-card:0 4px 20px rgba(0, 0, 0, 0.06);--gl-shadow-btn:0 2px 10px rgba(0, 0, 0, 0.06);--gl-shadow-btn-primary:0 4px 16px color-mix(in srgb, var(--gl-color-primary) 25%, transparent),0 2px 6px rgba(0, 0, 0, 0.08);--gl-shadow-glow:0 2px 8px rgba(0, 0, 0, 0.05),0 4px 12px rgba(0, 0, 0, 0.04);--gl-shadow-modal:0 16px 48px rgba(0, 0, 0, 0.12),0 4px 16px rgba(0, 0, 0, 0.08);--gl-shadow-toast:0 4px 20px rgba(0, 0, 0, 0.10);--gl-shadow-focus:0 0 0 3px color-mix(in srgb, var(--gl-color-primary) 25%, transparent);--gl-inset-subtle:inset 0 1px 1px rgba(255, 255, 255, 0.60);--gl-inset-medium:inset 0 1px 1px rgba(255, 255, 255, 0.70);--gl-inset-strong:inset 0 1px 2px rgba(255, 255, 255, 0.80);--gl-inset-milk:inset 0 1px 2px rgba(255, 255, 255, 0.90);--gl-bg-aurora-1:rgba(100, 200, 220, 0.15);--gl-bg-aurora-2:rgba(240, 180, 100, 0.10);--gl-bg-aurora-3:rgba(120, 200, 230, 0.12);--gl-bg-light-streak-1:rgba(140, 230, 220, 0.10);--gl-bg-light-streak-2:rgba(160, 220, 210, 0.08);--gl-bg-warm-glow:rgba(240, 180, 100, 0.08);--gl-placeholder:rgba(26, 42, 54, 0.30);--gl-accordion-body-color:var(--gl-color-text-muted);--gl-toggle-thumb-bg:linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%);--gl-range-track-bg:var(--gl-surface-2);--gl-range-track-border:var(--gl-border-subtle)}[data-density=compact]{--gl-control-height:40px;--gl-control-padding-x:var(--gl-space-sm);--gl-btn-height:40px;--gl-btn-height-sm:32px;--gl-btn-height-lg:48px;--gl-textarea-min-height:88px;--gl-list-item-min-height:48px;--gl-list-item-padding-y:10px;--gl-toggle-width:44px;--gl-toggle-height:26px;--gl-toggle-thumb-size:18px;--gl-check-size:20px;--gl-modal-action-height:44px}[data-surface=solid],[data-surface=solid] [data-theme=dark],[data-surface=tint],[data-surface=tint] [data-theme=dark]{--gl-solid-surface-1:color-mix(in srgb, #ffffff 8%, var(--gl-color-bg-mid));--gl-solid-surface-2:color-mix(in srgb, #ffffff 10%, var(--gl-color-bg-mid));--gl-solid-surface-3:color-mix(in srgb, #ffffff 14%, var(--gl-color-bg-mid));--gl-solid-surface-4:color-mix(in srgb, #ffffff 16%, var(--gl-color-bg-mid));--gl-solid-surface-5:color-mix(in srgb, #ffffff 22%, var(--gl-color-bg-mid));--gl-solid-card-glow-top:color-mix(in srgb, #ffffff 32%, var(--gl-color-bg-mid));--gl-solid-card-glow-mid:color-mix(in srgb, #ffffff 22%, var(--gl-color-bg-mid));--gl-solid-card-glow-low:color-mix(in srgb, #ffffff 14%, var(--gl-color-bg-mid));--gl-solid-card-glow-bottom:color-mix(in srgb, #ffffff 8%, var(--gl-color-bg-mid));--gl-surface-1:var(--gl-solid-surface-1);--gl-surface-2:var(--gl-solid-surface-2);--gl-surface-3:var(--gl-solid-surface-3);--gl-surface-4:var(--gl-solid-surface-4);--gl-surface-5:var(--gl-solid-surface-5);--gl-surface-milk:color-mix(in srgb, #ffffff 55%, var(--gl-color-bg-mid));--gl-surface-milk-strong:color-mix(in srgb, #ffffff 75%, var(--gl-color-bg-mid));--gl-card-glow-top:var(--gl-solid-card-glow-top);--gl-card-glow-mid:var(--gl-solid-card-glow-mid);--gl-card-glow-low:var(--gl-solid-card-glow-low);--gl-card-glow-bottom:var(--gl-solid-card-glow-bottom);--gl-toggle-thumb-bg:linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%);--gl-shadow-glow:0 4px 16px rgba(0, 0, 0, 0.15);--gl-blur:0px;--gl-blur-light:0px;--gl-blur-soft:0px;--gl-blur-heavy:0px;--gl-inset-subtle:inset 0 0 0 transparent;--gl-inset-medium:inset 0 0 0 transparent;--gl-inset-strong:inset 0 0 0 transparent;--gl-inset-milk:inset 0 0 0 transparent;--gl-gloss-card:none;--gl-gloss-modal:none;--gl-gloss-progress:none;--gl-range-thumb-border:2px solid transparent}[data-surface=solid] [data-theme=light],[data-surface=solid][data-theme=light],[data-surface=tint] [data-theme=light],[data-surface=tint][data-theme=light],[data-theme=light] [data-surface=solid],[data-theme=light] [data-surface=tint]{--gl-solid-surface-1:color-mix(in srgb, #ffffff 50%, var(--gl-color-bg-mid));--gl-solid-surface-2:color-mix(in srgb, #ffffff 60%, var(--gl-color-bg-mid));--gl-solid-surface-3:color-mix(in srgb, #ffffff 70%, var(--gl-color-bg-mid));--gl-solid-surface-4:color-mix(in srgb, #ffffff 75%, var(--gl-color-bg-mid));--gl-solid-surface-5:color-mix(in srgb, #ffffff 85%, var(--gl-color-bg-mid));--gl-solid-card-glow-top:color-mix(in srgb, #ffffff 90%, var(--gl-color-bg-mid));--gl-solid-card-glow-mid:color-mix(in srgb, #ffffff 78%, var(--gl-color-bg-mid));--gl-solid-card-glow-low:color-mix(in srgb, #ffffff 65%, var(--gl-color-bg-mid));--gl-solid-card-glow-bottom:color-mix(in srgb, #ffffff 50%, var(--gl-color-bg-mid));--gl-surface-1:var(--gl-solid-surface-1);--gl-surface-2:var(--gl-solid-surface-2);--gl-surface-3:var(--gl-solid-surface-3);--gl-surface-4:var(--gl-solid-surface-4);--gl-surface-5:var(--gl-solid-surface-5);--gl-surface-milk:color-mix(in srgb, #ffffff 85%, var(--gl-color-bg-mid));--gl-surface-milk-strong:color-mix(in srgb, #ffffff 92%, var(--gl-color-bg-mid));--gl-card-glow-top:var(--gl-solid-card-glow-top);--gl-card-glow-mid:var(--gl-solid-card-glow-mid);--gl-card-glow-low:var(--gl-solid-card-glow-low);--gl-card-glow-bottom:var(--gl-solid-card-glow-bottom);--gl-shadow-glow:0 2px 8px rgba(0, 0, 0, 0.05),0 4px 12px rgba(0, 0, 0, 0.04);--gl-inset-subtle:inset 0 0 0 transparent;--gl-inset-medium:inset 0 0 0 transparent;--gl-inset-strong:inset 0 0 0 transparent;--gl-inset-milk:inset 0 0 0 transparent}:root[data-surface=tint],[data-surface=tint] [data-theme],[data-surface=tint][data-theme],[data-theme] [data-surface=tint]{--gl-surface-1:color-mix(in srgb, var(--gl-color-text) 4%, transparent);--gl-surface-2:color-mix(in srgb, var(--gl-color-text) 6%, transparent);--gl-surface-3:color-mix(in srgb, var(--gl-color-text) 9%, transparent);--gl-surface-4:color-mix(in srgb, var(--gl-color-text) 12%, transparent);--gl-surface-5:color-mix(in srgb, var(--gl-color-text) 16%, transparent);--gl-card-glow-top:color-mix(in srgb, var(--gl-color-text) 16%, transparent);--gl-card-glow-mid:color-mix(in srgb, var(--gl-color-text) 12%, transparent);--gl-card-glow-low:color-mix(in srgb, var(--gl-color-text) 9%, transparent);--gl-card-glow-bottom:color-mix(in srgb, var(--gl-color-text) 6%, transparent)}",s="[class*=gl-],[class*=glass-],[class*=glass-]::after,[class*=glass-]::before{box-sizing:border-box}",r="[data-surface=tint] :is(.glass-modal,.glass-sheet,.glass-popover,.glass-toast,.glass-tab-bar,.glass-tab-bar__accessory){--gl-surface-1:var(--gl-solid-surface-1);--gl-surface-2:var(--gl-solid-surface-2);--gl-surface-3:var(--gl-solid-surface-3);--gl-surface-4:var(--gl-solid-surface-4);--gl-surface-5:var(--gl-solid-surface-5);--gl-card-glow-top:var(--gl-solid-card-glow-top);--gl-card-glow-mid:var(--gl-solid-card-glow-mid);--gl-card-glow-low:var(--gl-solid-card-glow-low);--gl-card-glow-bottom:var(--gl-solid-card-glow-bottom)}.glass-bg{background:radial-gradient(ellipse at 20% 40%,var(--gl-bg-aurora-1) 0,transparent 55%),radial-gradient(ellipse at 80% 65%,var(--gl-bg-aurora-2) 0,transparent 50%),radial-gradient(ellipse at 50% 20%,var(--gl-bg-aurora-3) 0,transparent 50%),linear-gradient(170deg,var(--gl-color-bg-light) 0,var(--gl-color-bg-mid) 50%,var(--gl-color-bg-dark) 100%);position:relative;min-height:100vh;overflow-x:hidden;font-family:var(--gl-font-family);color:var(--gl-color-text);-webkit-font-smoothing:antialiased;transition:background .4s,color .3s;isolation:isolate}.glass-bg::before{content:'';position:absolute;top:20%;left:-30%;width:160%;height:55%;background:radial-gradient(ellipse at 35% 45%,var(--gl-bg-light-streak-1) 0,transparent 50%),radial-gradient(ellipse at 65% 55%,var(--gl-bg-light-streak-2) 0,transparent 45%);transform:rotate(-8deg);pointer-events:none;z-index:-1}.glass-bg::after{content:'';position:absolute;top:40%;right:-20%;width:70%;height:50%;background:radial-gradient(ellipse at center,var(--gl-bg-warm-glow) 0,transparent 65%);pointer-events:none;z-index:-1}.glass-bg>*{position:relative}.glass-bg--has-tab-bar{padding-bottom:var(--gl-tab-bar-height)}.glass-bg--has-tab-bar-floating{padding-bottom:calc(var(--gl-tab-bar-accessory-size) + var(--gl-tab-bar-floating-bottom) + var(--gl-space-md))}.glass-nav{display:flex;justify-content:space-between;align-items:center;padding:0 var(--gl-space-xs)}.glass-pill{width:46px;height:46px;border-radius:var(--gl-radius-pill);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-strong);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--gl-transition);color:var(--gl-color-text);box-shadow:var(--gl-shadow-glow),var(--gl-inset-medium);outline:0;-webkit-tap-highlight-color:transparent}.glass-pill:hover{background:var(--gl-surface-5);transform:scale(1.05)}.glass-pill:active{transform:scale(.95)}.glass-pill:disabled,.glass-pill[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-pill:disabled:is(:hover,:active),.glass-pill[aria-disabled=true]:is(:hover,:active){background:var(--gl-surface-3);transform:none}.glass-pill ::slotted(svg),.glass-pill svg{width:20px;height:20px;fill:none;stroke:var(--gl-color-text);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.glass-title{text-align:center;color:var(--gl-color-text-heading);font-size:var(--gl-font-size-title);font-weight:var(--gl-font-weight-semibold);line-height:1.3;text-shadow:0 2px 12px rgba(0,0,0,.15);letter-spacing:-.3px}.glass-card{background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-card);padding:var(--gl-space-3xl) var(--gl-space-xl) var(--gl-space-2xl);box-shadow:var(--gl-shadow-card),var(--gl-inset-strong)}.glass-card--glow{position:relative;overflow:hidden;background:linear-gradient(to bottom,var(--gl-card-glow-top) 0,var(--gl-card-glow-mid) 25%,var(--gl-card-glow-low) 55%,var(--gl-card-glow-bottom) 100%)}.glass-card--glow::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:var(--gl-gloss-card);z-index:1}.glass-card__icon{display:flex;align-items:center;justify-content:center;margin:0 auto var(--gl-space-lg)}.glass-card__icon svg{width:64px;height:64px;stroke:var(--gl-card-icon-color);stroke-width:1.2;fill:none}.glass-card__text{color:var(--gl-card-text-color);font-size:var(--gl-font-size-base);font-weight:var(--gl-font-weight-normal);line-height:1.55;text-align:center}.glass-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:var(--gl-btn-height,56px);border:none;border-radius:var(--gl-radius-btn);font-family:var(--gl-font-family);font-size:var(--gl-font-size-btn);font-weight:var(--gl-font-weight-semibold);cursor:pointer;transition:var(--gl-transition);outline:0;-webkit-tap-highlight-color:transparent}a.glass-btn{display:inline-flex;text-decoration:none}.glass-btn[hidden]{display:none}.glass-btn ::slotted(svg),.glass-btn svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-btn--primary{background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-mid) 50%,var(--gl-color-primary-dark) 100%);color:var(--gl-color-on-primary,#fff);border:1px solid var(--gl-border-warm);box-shadow:var(--gl-shadow-btn-primary),var(--gl-inset-strong)}.glass-btn--primary ::slotted(svg),.glass-btn--primary svg{fill:var(--gl-icon-on-primary);stroke:var(--gl-icon-on-primary);stroke-width:0}.glass-btn--primary:hover{transform:translateY(-1px)}.glass-btn--primary:active{transform:translateY(1px)}.glass-btn--secondary{background:linear-gradient(to bottom,var(--gl-surface-milk-strong) 0,var(--gl-surface-milk) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-milk);color:var(--gl-color-text-on-light);box-shadow:var(--gl-shadow-btn),var(--gl-inset-milk)}.glass-btn--secondary ::slotted(svg),.glass-btn--secondary svg{fill:none;stroke:var(--gl-icon-on-secondary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-btn--secondary:hover{transform:translateY(-1px)}.glass-btn--secondary:active{transform:translateY(1px)}.glass-btn--tertiary{background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);color:var(--gl-color-text-muted);box-shadow:0 4px 12px rgba(0,0,0,.1),var(--gl-inset-subtle)}.glass-btn--tertiary ::slotted(svg),.glass-btn--tertiary svg{fill:none;stroke:var(--gl-icon-on-tertiary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-btn--tertiary:hover{background:var(--gl-surface-4);color:var(--gl-color-text);transform:translateY(-1px)}.glass-btn--tertiary:active{transform:translateY(1px)}.glass-btn:disabled,.glass-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-btn:disabled:is(:hover,:active),.glass-btn[aria-disabled=true]:is(:hover,:active){transform:none}.glass-btn--tertiary:disabled:hover,.glass-btn--tertiary[aria-disabled=true]:hover{background:var(--gl-surface-2);color:var(--gl-color-text-muted)}.glass-btn--sm{height:var(--gl-btn-height-sm,44px);font-size:var(--gl-font-size-sm);border-radius:var(--gl-radius-sm)}.glass-btn--lg{height:var(--gl-btn-height-lg,64px);font-size:var(--gl-font-size-lg)}.glass-btn--auto{width:auto;padding:0 var(--gl-space-xl)}.glass-status{background:var(--gl-surface-1);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);padding:var(--gl-space-md) var(--gl-space-lg);display:flex;align-items:center;gap:var(--gl-space-sm);box-shadow:0 4px 12px rgba(0,0,0,.08),var(--gl-inset-subtle)}.glass-status ::slotted(svg),.glass-status svg{width:20px;height:20px;flex-shrink:0;stroke:var(--gl-icon-muted);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-status p{color:var(--gl-color-text-muted);font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-normal);line-height:1.45}.glass-input-group{display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-label{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-strong);padding-inline-start:var(--gl-space-2xs)}.glass-label:empty{display:none}.glass-input{width:100%;height:var(--gl-control-height,52px);padding:0 var(--gl-control-padding-x,var(--gl-space-md));background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-input);color:var(--gl-color-text);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);transition:var(--gl-transition);outline:0;box-shadow:var(--gl-inset-subtle);-webkit-tap-highlight-color:transparent;text-overflow:ellipsis}.glass-input::-webkit-calendar-picker-indicator{display:var(--gl-input-picker-icon,revert)}.glass-input::placeholder{color:var(--gl-placeholder)}.glass-input[type=date],.glass-input[type=datetime-local],.glass-input[type=month],.glass-input[type=time]{-webkit-appearance:none;appearance:none}.glass-input::-webkit-date-and-time-value{text-align:start}.glass-input:focus{border-color:var(--gl-border-focus);background:var(--gl-surface-3);box-shadow:var(--gl-shadow-focus),var(--gl-inset-medium)}.glass-input:disabled{opacity:.4;cursor:not-allowed}.glass-input--error{border-color:var(--gl-color-error)}.glass-input--error:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--gl-color-error) 25%,transparent),var(--gl-inset-medium)}.glass-input-wrap{display:grid;grid-template-columns:minmax(0,1fr);align-items:center}.glass-input-wrap>*{grid-area:1/1}.glass-input-wrap>.glass-input{transition:var(--gl-transition),padding 0s}.glass-input-wrap__prefix,.glass-input-wrap__suffix{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--gl-space-2xs);color:var(--gl-color-text-muted);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);white-space:nowrap;pointer-events:none}.glass-input-wrap__prefix{justify-self:start;margin-inline-start:var(--gl-control-padding-x,var(--gl-space-md))}.glass-input-wrap__suffix{justify-self:end;margin-inline-end:var(--gl-control-padding-x,var(--gl-space-md))}.glass-input-wrap__prefix[hidden],.glass-input-wrap__suffix[hidden]{display:none}.glass-input-wrap__prefix :is(:enabled,a[href],[tabindex]):not(:disabled),.glass-input-wrap__suffix :is(:enabled,a[href],[tabindex]):not(:disabled){pointer-events:auto}.glass-input-wrap__prefix ::slotted(svg),.glass-input-wrap__prefix svg,.glass-input-wrap__suffix ::slotted(svg),.glass-input-wrap__suffix svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:var(--gl-icon-muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-input-wrap--prefix>.glass-input{padding-inline-start:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-prefix-size,18px) + var(--gl-space-xs))}.glass-input-wrap--suffix>.glass-input{padding-inline-end:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-suffix-size,18px) + var(--gl-space-xs))}.glass-input-wrap:has(> .glass-input-wrap__prefix:not([hidden]))>.glass-input{padding-inline-start:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-prefix-size,18px) + var(--gl-space-xs))}.glass-input-wrap:has(> .glass-input-wrap__suffix:not([hidden]))>.glass-input{padding-inline-end:calc(var(--gl-control-padding-x,var(--gl-space-md)) + var(--gl-input-suffix-size,18px) + var(--gl-space-xs))}.glass-hint{font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted);padding-inline-start:var(--gl-space-2xs)}.glass-hint--error{color:var(--gl-color-error)}.glass-textarea{width:100%;min-height:var(--gl-textarea-min-height,120px);padding:var(--gl-space-md) var(--gl-control-padding-x,var(--gl-space-md));background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-input);color:var(--gl-color-text);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);line-height:1.5;resize:vertical;transition:var(--gl-transition);outline:0;box-shadow:var(--gl-inset-subtle);field-sizing:var(--gl-textarea-field-sizing,fixed)}.glass-textarea:read-only{resize:none}.glass-textarea::placeholder{color:var(--gl-placeholder)}.glass-textarea:focus{border-color:var(--gl-border-focus);background:var(--gl-surface-3);box-shadow:var(--gl-shadow-focus),var(--gl-inset-medium)}.glass-select{width:100%;height:var(--gl-control-height,52px);padding:0 var(--gl-space-3xl) 0 var(--gl-control-padding-x,var(--gl-space-md));background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-input);color:var(--gl-color-text);font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);transition:var(--gl-transition);outline:0;box-shadow:var(--gl-inset-subtle);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:var(--gl-select-chevron, url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E\"));background-repeat:no-repeat;background-position:right 16px center}.glass-select:dir(rtl){padding:0 var(--gl-control-padding-x,var(--gl-space-md)) 0 var(--gl-space-3xl);background-position:left 16px center}.glass-select:focus{border-color:var(--gl-border-focus);box-shadow:var(--gl-shadow-focus),var(--gl-inset-medium)}.glass-select option{background:var(--gl-color-bg-mid);color:var(--gl-color-text)}.glass-select:disabled,.glass-textarea:disabled{opacity:.4;cursor:not-allowed}.glass-search{position:relative;display:flex;align-items:center}.glass-search__icon{position:absolute;inset-inline-start:var(--gl-space-md);width:18px;height:18px;stroke:var(--gl-icon-muted)!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;fill:none!important;pointer-events:none;z-index:2}.glass-search .glass-input{padding-inline-start:44px;border-radius:var(--gl-radius-full)}.glass-toggle{display:inline-flex;align-items:flex-start;gap:var(--gl-space-sm);cursor:pointer;-webkit-tap-highlight-color:transparent}.glass-toggle__input{position:absolute;z-index:1;opacity:0;cursor:inherit;width:var(--gl-toggle-width,52px);height:var(--gl-toggle-height,30px);margin:0;font:inherit;margin-top:max(0px,calc((1lh - var(--gl-toggle-height,30px))/ 2))}.glass-toggle__track{position:relative;width:var(--gl-toggle-width,52px);height:var(--gl-toggle-height,30px);background:var(--gl-toggle-track-bg,var(--gl-surface-2));backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-full);transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle);flex-shrink:0;margin-top:max(0px,calc((1lh - var(--gl-toggle-height,30px))/ 2))}.glass-toggle__thumb{position:absolute;top:calc((var(--gl-toggle-height,30px) - var(--gl-toggle-thumb-size,22px))/ 2 - 1px);left:calc((var(--gl-toggle-height,30px) - var(--gl-toggle-thumb-size,22px))/ 2 - 1px);width:var(--gl-toggle-thumb-size,22px);height:var(--gl-toggle-thumb-size,22px);border-radius:var(--gl-radius-pill);background:var(--gl-toggle-thumb-bg);box-shadow:0 2px 6px rgba(0,0,0,.2),var(--gl-inset-milk);transition:var(--gl-transition)}.glass-toggle__input:checked+.glass-toggle__track{background:var(--gl-toggle-track-bg-checked,linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%));border-color:var(--gl-border-warm)}.glass-toggle__input:checked+.glass-toggle__track .glass-toggle__thumb{transform:translateX(calc(var(--gl-toggle-width,52px) - var(--gl-toggle-height,30px)))}.glass-toggle__thumb:dir(rtl){left:auto;right:calc((var(--gl-toggle-height,30px) - var(--gl-toggle-thumb-size,22px))/ 2 - 1px)}.glass-toggle__input:checked+.glass-toggle__track .glass-toggle__thumb:dir(rtl){transform:translateX(calc(var(--gl-toggle-height,30px) - var(--gl-toggle-width,52px)))}.glass-toggle__input:focus-visible+.glass-toggle__track{box-shadow:var(--gl-shadow-focus)}.glass-toggle__input:disabled{cursor:not-allowed}.glass-toggle__input:disabled+.glass-toggle__track,.glass-toggle__input:disabled~.glass-toggle__label{opacity:.45;cursor:not-allowed}.glass-toggle:has(> .glass-toggle__input:disabled){cursor:not-allowed}.glass-toggle__label{font-size:var(--gl-font-size-base);color:var(--gl-color-text);user-select:none;margin-top:max(0px,calc((var(--gl-toggle-height,30px) - 1lh)/ 2))}.glass-checkbox__label:empty,.glass-radio__label:empty,.glass-toggle__label:empty{display:none}.glass-checkbox{display:inline-flex;align-items:flex-start;gap:var(--gl-space-sm);cursor:pointer;-webkit-tap-highlight-color:transparent}.glass-checkbox__input{position:absolute;z-index:1;opacity:0;cursor:inherit;width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);margin:0;font:inherit;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-checkbox__box{width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);border-radius:var(--gl-radius-xs);background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1.5px solid var(--gl-border-medium);display:flex;align-items:center;justify-content:center;transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle);flex-shrink:0;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-checkbox__box svg{width:14px;height:14px;stroke:var(--gl-color-on-primary,#ffffff);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform:scale(.5);transition:var(--gl-transition-fast)}.glass-checkbox__input:checked+.glass-checkbox__box{background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border-color:var(--gl-border-warm)}.glass-checkbox__input:checked+.glass-checkbox__box svg{opacity:1;transform:scale(1)}.glass-checkbox__input:focus-visible+.glass-checkbox__box{box-shadow:var(--gl-shadow-focus)}.glass-checkbox__input:disabled{cursor:not-allowed}.glass-checkbox__input:disabled+.glass-checkbox__box,.glass-checkbox__input:disabled~.glass-checkbox__label{opacity:.45;cursor:not-allowed}.glass-checkbox:has(> .glass-checkbox__input:disabled){cursor:not-allowed}.glass-checkbox__label{font-size:var(--gl-font-size-base);color:var(--gl-color-text);user-select:none;margin-top:max(0px,calc((var(--gl-check-size,24px) - 1lh)/ 2))}.glass-radio{display:inline-flex;align-items:flex-start;gap:var(--gl-space-sm);cursor:pointer;-webkit-tap-highlight-color:transparent}.glass-radio__input{position:absolute;z-index:1;opacity:0;cursor:inherit;width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);margin:0;font:inherit;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-radio__circle{width:var(--gl-check-size,24px);height:var(--gl-check-size,24px);border-radius:var(--gl-radius-pill);background:var(--gl-radio-bg,var(--gl-surface-2));backdrop-filter:blur(var(--gl-blur-soft));border:var(--gl-radio-border,1.5px solid var(--gl-border-medium));display:flex;align-items:center;justify-content:center;transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle);flex-shrink:0;margin-top:max(0px,calc((1lh - var(--gl-check-size,24px))/ 2))}.glass-radio__dot{width:var(--gl-radio-dot-size,10px);height:var(--gl-radio-dot-size,10px);border-radius:var(--gl-radius-pill);background:var(--gl-radio-dot-color,#fff);opacity:0;transform:scale(0);transition:var(--gl-transition-fast)}.glass-radio__input:checked+.glass-radio__circle{background:var(--gl-radio-bg-checked,linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%));border:var(--gl-radio-border-checked,1.5px solid var(--gl-border-warm))}.glass-radio__input:checked+.glass-radio__circle .glass-radio__dot{opacity:1;transform:scale(1)}.glass-radio__input:focus-visible+.glass-radio__circle{box-shadow:var(--gl-shadow-focus)}.glass-radio__input:disabled{cursor:not-allowed}.glass-radio__input:disabled+.glass-radio__circle,.glass-radio__input:disabled~.glass-radio__label{opacity:.45;cursor:not-allowed}.glass-radio:has(> .glass-radio__input:disabled){cursor:not-allowed}.glass-radio__label{font-size:var(--gl-font-size-base);color:var(--gl-color-text);user-select:none;margin-top:max(0px,calc((var(--gl-check-size,24px) - 1lh)/ 2))}.glass-range-group{display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-range-header{display:flex;justify-content:space-between;align-items:baseline}.glass-range-value{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-primary-text);font-variant-numeric:tabular-nums}.glass-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:var(--gl-radius-full);background:var(--gl-range-track-bg);border:1px solid var(--gl-range-track-border);outline:0;cursor:pointer}.glass-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:26px;height:26px;border-radius:var(--gl-radius-pill);background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border:var(--gl-range-thumb-border);box-shadow:0 2px 8px color-mix(in srgb,var(--gl-color-primary-mid) 35%,transparent),var(--gl-inset-strong);margin-top:-2px;cursor:pointer;transition:var(--gl-transition)}.glass-range::-webkit-slider-thumb:hover{transform:scale(1.1)}.glass-range::-moz-range-thumb{width:26px;height:26px;border-radius:var(--gl-radius-pill);background:linear-gradient(135deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);border:var(--gl-range-thumb-border);box-shadow:0 2px 8px color-mix(in srgb,var(--gl-color-primary-mid) 35%,transparent);cursor:pointer}.glass-range::-moz-range-track{height:6px;border-radius:var(--gl-radius-full);background:var(--gl-range-track-bg);border:1px solid var(--gl-range-track-border)}.glass-range:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-range:disabled{opacity:.4;cursor:not-allowed}.glass-range:disabled::-webkit-slider-thumb{cursor:not-allowed;transform:none}.glass-range:disabled::-moz-range-thumb{cursor:not-allowed}.glass-progress{width:100%;display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-progress__header{display:flex;justify-content:space-between;align-items:baseline}.glass-progress__label{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-strong)}.glass-progress__value{font-size:var(--gl-font-size-xs);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-muted);font-variant-numeric:tabular-nums}.glass-progress__track{width:100%;height:8px;border-radius:var(--gl-radius-full);background:var(--gl-surface-2);border:1px solid var(--gl-border-subtle);overflow:hidden;box-shadow:var(--gl-inset-subtle)}.glass-progress__fill{height:100%;border-radius:var(--gl-radius-full);background:linear-gradient(90deg,var(--gl-color-primary) 0,var(--gl-color-primary-dark) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--gl-color-primary) 30%,transparent),var(--gl-inset-strong);transition:width .5s cubic-bezier(.4, 0, .2, 1);position:relative}.glass-progress__fill::after{content:'';position:absolute;top:0;left:0;right:0;height:50%;border-radius:var(--gl-radius-full);background:var(--gl-gloss-progress)}.glass-progress--sm .glass-progress__track{height:4px}.glass-progress--lg .glass-progress__track{height:12px}.glass-progress--success .glass-progress__fill{background:linear-gradient(90deg,var(--gl-color-success) 0,var(--gl-color-success-dark,#2da44e) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--gl-color-success) 30%,transparent),var(--gl-inset-strong)}.glass-progress--error .glass-progress__fill{background:linear-gradient(90deg,var(--gl-color-error) 0,var(--gl-color-error-dark,#d63027) 100%);box-shadow:0 0 8px color-mix(in srgb,var(--gl-color-error) 30%,transparent),var(--gl-inset-strong)}.glass-progress__fill:dir(rtl){scale:-1 1}.glass-modal-overlay{position:fixed;inset:0;background:var(--gl-surface-overlay);backdrop-filter:blur(var(--gl-blur-overlay,var(--gl-blur-soft)));-webkit-backdrop-filter:blur(var(--gl-blur-overlay,var(--gl-blur-soft)));display:flex;align-items:center;justify-content:center;padding:var(--gl-space-lg);z-index:1000;opacity:0;pointer-events:none;transition:var(--gl-transition-modal);font-family:var(--gl-font-family);-webkit-font-smoothing:antialiased}.glass-modal-overlay.is-active{opacity:1;pointer-events:auto}dialog.glass-modal-overlay{width:auto;height:auto;max-width:none;max-height:none;margin:0;border:0;color:inherit}dialog.glass-modal-overlay:not([open]){display:none}dialog.glass-modal-overlay::backdrop{background:0 0}.glass-modal{width:100%;max-width:var(--gl-modal-max-width,340px);background:linear-gradient(to bottom,var(--gl-card-glow-top) 0,var(--gl-card-glow-bottom) 100%);backdrop-filter:blur(var(--gl-blur-heavy));-webkit-backdrop-filter:blur(var(--gl-blur-heavy));border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-card);overflow:hidden;box-shadow:var(--gl-shadow-modal);transform:scale(.9) translateY(20px);transition:var(--gl-transition-modal);position:relative}.glass-modal-overlay.is-active .glass-modal{transform:scale(1) translateY(0)}.glass-modal::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:var(--gl-gloss-modal)}.glass-modal__header{padding:var(--gl-space-xl) var(--gl-space-xl) var(--gl-space-sm);text-align:center}.glass-modal__title{font-size:var(--gl-font-size-modal);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text)}.glass-modal__body{padding:var(--gl-space-sm) var(--gl-space-xl) var(--gl-space-xl);text-align:center}.glass-modal__body p{color:var(--gl-color-text-muted);font-size:var(--gl-font-size-base);line-height:1.55}.glass-modal__footer{display:flex;border-top:1px solid var(--gl-border-subtle)}.glass-modal__action{flex:1;height:var(--gl-modal-action-height,52px);background:0 0;border:none;font-family:var(--gl-font-family);font-size:var(--gl-font-size-btn);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text-muted);cursor:pointer;transition:var(--gl-transition-fast);outline:0}.glass-modal__action:hover{background:var(--gl-surface-1)}.glass-modal__action:disabled{opacity:.45;cursor:not-allowed}.glass-modal__action:disabled:hover{background:0 0}.glass-modal__action+.glass-modal__action{border-inline-start:1px solid var(--gl-border-subtle)}.glass-modal__action--primary{color:var(--gl-color-primary-text);font-weight:var(--gl-font-weight-semibold)}.glass-modal__action--danger{color:var(--gl-color-error);font-weight:var(--gl-font-weight-semibold)}.glass-toast{position:fixed;top:var(--gl-toast-top,var(--gl-space-4xl));left:50%;transform:translateX(-50%) translateY(-20px);min-width:280px;max-width:340px;padding:var(--gl-space-md) var(--gl-space-lg);background:linear-gradient(to bottom,var(--gl-surface-4) 0,var(--gl-surface-2) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1px solid var(--gl-border-medium);border-radius:var(--gl-radius-btn);display:flex;align-items:center;gap:var(--gl-space-sm);box-shadow:var(--gl-shadow-toast),var(--gl-inset-medium);z-index:1100;opacity:0;pointer-events:none;transition:var(--gl-transition-modal);font-family:var(--gl-font-family);-webkit-font-smoothing:antialiased}.glass-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}.glass-toast__icon{width:22px;height:22px;flex-shrink:0;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-toast__icon ::slotted(svg){display:block;width:100%;height:100%}.glass-toast--success .glass-toast__icon{stroke:var(--gl-color-success)}.glass-toast--error .glass-toast__icon{stroke:var(--gl-color-error)}.glass-toast--warning .glass-toast__icon{stroke:var(--gl-color-warning)}.glass-toast__text{flex:1 1 auto;min-width:0;font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text);line-height:1.4}.glass-toast:has(.glass-toast__action){width:max-content;max-width:min(480px,calc(100% - 2 * var(--gl-space-md)))}.glass-toast--success{--gl-toast-action-surface:var(--gl-color-success-surface);--gl-toast-action-border:var(--gl-color-success-border);--gl-toast-action-ink:var(--gl-color-success-on-surface)}.glass-toast--error{--gl-toast-action-surface:var(--gl-color-error-surface);--gl-toast-action-border:var(--gl-color-error-border);--gl-toast-action-ink:var(--gl-color-error-on-surface)}.glass-toast--warning{--gl-toast-action-surface:var(--gl-color-warning-surface);--gl-toast-action-border:var(--gl-color-warning-border);--gl-toast-action-ink:var(--gl-color-warning-on-surface)}.glass-toast__action,.glass-toast__close{-webkit-appearance:none;appearance:none;flex:none;position:relative;font:inherit;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-toast__action{height:32px;padding:0 14px;border:1px solid var(--gl-toast-action-border,var(--gl-color-primary-border));border-radius:var(--gl-radius-full);background:linear-gradient(var(--gl-toast-action-surface,var(--gl-color-primary-surface)),var(--gl-toast-action-surface,var(--gl-color-primary-surface))),linear-gradient(var(--gl-state-scrim),var(--gl-state-scrim)),var(--gl-state-scrim);color:var(--gl-toast-action-ink,var(--gl-color-primary-on-surface));font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-semibold);white-space:nowrap}.glass-toast__action::after{content:\"\";position:absolute;inset:-6px 0}.glass-toast__action:hover{box-shadow:inset 0 0 0 100px color-mix(in srgb,var(--gl-toast-action-ink,var(--gl-color-primary-on-surface)) 10%,transparent)}.glass-toast__action:active{transform:scale(.96)}.glass-toast__close{width:28px;height:28px;margin-block:0;margin-inline:-4px -8px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:0 0;color:var(--gl-color-text-muted)}.glass-toast__close::after{content:\"\";position:absolute;inset:-8px}.glass-toast__close:hover{background:var(--gl-surface-3);color:var(--gl-color-text)}.glass-toast__close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.glass-toast__action:focus-visible,.glass-toast__close:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-tab-bar{position:fixed;bottom:0;left:0;right:0;height:var(--gl-tab-bar-height);background:linear-gradient(to bottom,var(--gl-surface-3) 0,var(--gl-surface-1) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border-top:1px solid var(--gl-border-subtle);display:flex;justify-content:space-around;align-items:flex-start;padding-top:var(--gl-space-xs);padding-bottom:env(safe-area-inset-bottom,8px);z-index:900;box-shadow:0 -4px 20px rgba(0,0,0,.08),var(--gl-inset-subtle)}.glass-tab-bar__item{display:flex;flex-direction:column;align-items:center;gap:var(--gl-space-2xs);padding:var(--gl-space-2xs) var(--gl-space-sm);background:0 0;border:none;cursor:pointer;transition:var(--gl-transition);outline:0;-webkit-tap-highlight-color:transparent;min-width:60px}.glass-tab-bar__icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;position:relative}.glass-tab-bar__icon svg{width:24px;height:24px;fill:none;stroke:var(--gl-icon-muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:var(--gl-transition)}.glass-tab-bar__label{font-size:10px;font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-muted);transition:var(--gl-transition);letter-spacing:.2px}.glass-tab-bar__item.is-active .glass-tab-bar__icon svg{stroke:var(--gl-tab-bar-active-color,var(--gl-color-primary-text));filter:drop-shadow(0 0 6px color-mix(in srgb, var(--gl-color-primary) 35%, transparent))}.glass-tab-bar__item.is-active .glass-tab-bar__label{color:var(--gl-tab-bar-active-color,var(--gl-color-primary-text))}.glass-tab-bar__item.is-active .glass-tab-bar__icon::after{content:'';position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:var(--gl-radius-pill);background:var(--gl-color-primary);box-shadow:0 0 6px color-mix(in srgb,var(--gl-color-primary) 50%,transparent)}.glass-tab-bar__item:not(.is-active):hover .glass-tab-bar__icon svg{stroke:var(--gl-icon-default)}.glass-tab-bar__item:not(.is-active):hover .glass-tab-bar__label{color:var(--gl-icon-default)}.glass-tab-bar__badge{position:absolute;top:-4px;inset-inline-end:-8px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--gl-radius-full);background:var(--gl-color-error-dark,#d63027);color:#fff;font-size:10px;font-weight:var(--gl-font-weight-semibold);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px color-mix(in srgb,var(--gl-color-error) 40%,transparent)}.glass-tab-bar-dock{position:fixed;left:50%;bottom:calc(var(--gl-tab-bar-floating-bottom) + env(safe-area-inset-bottom,0px));transform:translateX(-50%);display:flex;align-items:center;gap:var(--gl-tab-bar-floating-gap);z-index:900;max-width:calc(100vw - 2 * var(--gl-space-md))}.glass-tab-bar-dock--accessory-left{flex-direction:row-reverse}.glass-tab-bar.glass-tab-bar--floating{position:static;left:auto;right:auto;bottom:auto;height:auto;width:max-content;padding:var(--gl-tab-bar-floating-padding);border-radius:var(--gl-tab-bar-floating-radius);border:1px solid var(--gl-border-subtle);background:linear-gradient(to bottom,var(--gl-surface-3) 0,var(--gl-surface-1) 100%);box-shadow:0 8px 32px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.08),var(--gl-inset-subtle);display:flex;justify-content:flex-start;align-items:center;gap:var(--gl-space-2xs)}.glass-tab-bar--floating .glass-tab-bar__item{position:relative;border-radius:var(--gl-radius-full);padding:var(--gl-space-2xs) var(--gl-space-sm);min-width:auto;align-items:center}.glass-tab-bar--floating .glass-tab-bar__item>*{position:relative;z-index:1}.glass-tab-bar--floating .glass-tab-bar__item.is-active::before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at center,color-mix(in srgb,var(--gl-tab-bar-spotlight-color) 28%,transparent) 0,color-mix(in srgb,var(--gl-tab-bar-spotlight-color) 10%,transparent) 55%,transparent 100%);pointer-events:none;z-index:0}.glass-tab-bar--floating .glass-tab-bar__item.is-active .glass-tab-bar__icon::after{display:none}.glass-tab-bar__accessory{width:var(--gl-tab-bar-accessory-size);height:var(--gl-tab-bar-accessory-size);border-radius:var(--gl-radius-pill);background:linear-gradient(to bottom,var(--gl-surface-3) 0,var(--gl-surface-1) 100%);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1px solid var(--gl-border-subtle);box-shadow:0 8px 32px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.08),var(--gl-inset-subtle);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--gl-transition);outline:0;padding:0;-webkit-tap-highlight-color:transparent;flex-shrink:0}.glass-tab-bar__accessory ::slotted(svg),.glass-tab-bar__accessory svg{width:22px;height:22px;fill:none;stroke:var(--gl-icon-default);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:var(--gl-transition)}.glass-tab-bar__accessory:where(:not(:disabled,[aria-disabled=true])):hover{transform:translateY(-1px)}.glass-tab-bar__accessory:where(:not(:disabled,[aria-disabled=true])):hover ::slotted(svg),.glass-tab-bar__accessory:where(:not(:disabled,[aria-disabled=true])):hover svg{stroke:var(--gl-icon-strong)}.glass-tab-bar__accessory:disabled,.glass-tab-bar__accessory[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-tab-bar__accessory:focus-visible{box-shadow:0 8px 32px rgba(0,0,0,.18),var(--gl-shadow-focus),var(--gl-inset-subtle)}.glass-tab-bar__accessory--accent{background:linear-gradient(135deg,var(--gl-color-primary) 0,color-mix(in srgb,var(--gl-color-primary) 70%,transparent) 100%);border-color:color-mix(in srgb,var(--gl-color-primary) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--gl-color-primary) 35%,transparent),var(--gl-inset-medium)}.glass-tab-bar__accessory--accent ::slotted(svg),.glass-tab-bar__accessory--accent svg{stroke:var(--gl-color-on-primary,#ffffff)}.glass-tab-bar__accessory--accent:hover ::slotted(svg),.glass-tab-bar__accessory--accent:hover svg{stroke:var(--gl-color-on-primary,#ffffff)}.glass-tab-bar__accessory--success{background:linear-gradient(135deg,var(--gl-color-success) 0,color-mix(in srgb,var(--gl-color-success) 70%,transparent) 100%);border-color:color-mix(in srgb,var(--gl-color-success) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--gl-color-success) 35%,transparent),var(--gl-inset-medium)}.glass-tab-bar__accessory--success ::slotted(svg),.glass-tab-bar__accessory--success svg{stroke:var(--gl-color-on-success,#ffffff)}.glass-tab-bar__accessory--error{background:linear-gradient(135deg,var(--gl-color-error) 0,color-mix(in srgb,var(--gl-color-error) 70%,transparent) 100%);border-color:color-mix(in srgb,var(--gl-color-error) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--gl-color-error) 35%,transparent),var(--gl-inset-medium)}.glass-tab-bar__accessory--error ::slotted(svg),.glass-tab-bar__accessory--error svg{stroke:var(--gl-color-on-error,#ffffff)}.glass-accordion{display:flex;flex-direction:column;gap:var(--gl-space-xs)}.glass-accordion__item{background:var(--gl-surface-2);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);overflow:hidden;transition:var(--gl-transition);box-shadow:var(--gl-inset-subtle)}.glass-accordion__item.is-open{background:var(--gl-surface-3);border-color:var(--gl-border-medium);box-shadow:0 4px 16px rgba(0,0,0,.1),var(--gl-inset-medium)}.glass-accordion__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--gl-space-sm);padding:var(--gl-space-md) var(--gl-space-lg);background:0 0;border:none;cursor:pointer;font-family:var(--gl-font-family);font-size:var(--gl-font-size-base);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text);text-align:start;outline:0;transition:var(--gl-transition);-webkit-tap-highlight-color:transparent}.glass-accordion__trigger:hover{color:var(--gl-color-primary-text)}.glass-accordion__trigger-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.glass-accordion__trigger-icon svg{width:18px;height:18px;fill:none;stroke:var(--gl-icon-default);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s cubic-bezier(.4, 0, .2, 1)}.glass-accordion__item.is-open .glass-accordion__trigger-icon svg{transform:rotate(180deg);stroke:var(--gl-color-primary-text)}.glass-accordion__content{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.4, 0, .2, 1)}.glass-accordion__item.is-open .glass-accordion__content{max-height:500px}.glass-accordion__body{padding:0 var(--gl-space-lg) var(--gl-space-lg);color:var(--gl-accordion-body-color);font-size:var(--gl-font-size-sm);line-height:1.6}.glass-badge{--gl-badge-accent:var(--gl-color-primary);--gl-badge-accent-text:var(--gl-color-primary-on-surface, var(--gl-color-primary));display:inline-flex;align-items:center;gap:var(--gl-space-2xs);padding:var(--gl-space-2xs) var(--gl-space-sm);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-full);font-size:var(--gl-font-size-xs);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text);box-shadow:var(--gl-inset-subtle)}.glass-badge--primary{--gl-badge-accent:var(--gl-color-primary);--gl-badge-accent-text:var(--gl-color-primary-on-surface, var(--gl-color-primary));background:linear-gradient(135deg,var(--gl-color-primary-surface,rgba(245,166,35,.25)) 0,color-mix(in srgb,var(--gl-color-primary-dark) 20%,transparent) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-primary-border,var(--gl-border-warm));color:var(--gl-color-primary-on-surface,var(--gl-color-primary))}.glass-badge--success{--gl-badge-accent:var(--gl-color-success);--gl-badge-accent-text:var(--gl-color-success-on-surface, var(--gl-color-success));background:linear-gradient(var(--gl-color-success-surface,rgba(52,199,89,.15)) 0,var(--gl-color-success-surface,rgba(52,199,89,.15)) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-success-border,rgba(52,199,89,.3));color:var(--gl-color-success-on-surface,var(--gl-color-success))}.glass-badge--error{--gl-badge-accent:var(--gl-color-error);--gl-badge-accent-text:var(--gl-color-error-on-surface, var(--gl-color-error));background:linear-gradient(var(--gl-color-error-surface,rgba(255,59,48,.15)) 0,var(--gl-color-error-surface,rgba(255,59,48,.15)) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-error-border,rgba(255,59,48,.3));color:var(--gl-color-error-on-surface,var(--gl-color-error))}.glass-badge--warning{--gl-badge-accent:var(--gl-color-warning);--gl-badge-accent-text:var(--gl-color-warning-on-surface, var(--gl-color-warning));background:linear-gradient(var(--gl-color-warning-surface,rgba(255,204,0,.15)) 0,var(--gl-color-warning-surface,rgba(255,204,0,.15)) 100%),var(--gl-state-scrim,transparent);border-color:var(--gl-color-warning-border,rgba(255,204,0,.3));color:var(--gl-color-warning-on-surface,var(--gl-color-warning))}.glass-badge--interactive{font-family:inherit;-webkit-appearance:none;appearance:none;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-badge--interactive:hover{border-color:color-mix(in srgb,var(--gl-badge-accent) 45%,var(--gl-border-subtle));box-shadow:var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 12%,transparent)}.glass-badge--interactive:active{transform:scale(.96)}.glass-badge--interactive:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-inset-subtle)}.glass-badge--selected{border-color:color-mix(in srgb,var(--gl-badge-accent) 55%,transparent);color:var(--gl-badge-accent-text);box-shadow:var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 22%,transparent)}.glass-badge--interactive.glass-badge--selected:hover{box-shadow:var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 30%,transparent)}.glass-badge--interactive.glass-badge--selected:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-inset-subtle),inset 0 0 0 100px color-mix(in srgb,var(--gl-badge-accent) 22%,transparent)}.glass-divider{height:1px;border:none;background:linear-gradient(90deg,transparent 0,var(--gl-border-subtle) 20%,var(--gl-border-medium) 50%,var(--gl-border-subtle) 80%,transparent 100%)}.glass-avatar{width:44px;height:44px;border-radius:var(--gl-radius-pill);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur-soft));-webkit-backdrop-filter:blur(var(--gl-blur-soft));border:1.5px solid var(--gl-border-strong);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:var(--gl-shadow-glow),var(--gl-inset-medium);flex-shrink:0;font-size:var(--gl-font-size-btn);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text)}.glass-avatar ::slotted(img),.glass-avatar img{width:100%;height:100%;object-fit:cover}.glass-avatar--sm{width:32px;height:32px;font-size:var(--gl-font-size-xs)}.glass-avatar--lg{width:56px;height:56px;font-size:var(--gl-font-size-lg)}.glass-theme-toggle{width:46px;height:46px;border-radius:var(--gl-radius-pill);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1.5px solid var(--gl-border-strong);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--gl-transition);box-shadow:var(--gl-shadow-glow),var(--gl-inset-medium);outline:0;-webkit-tap-highlight-color:transparent}.glass-theme-toggle:hover{background:var(--gl-surface-5);transform:scale(1.05)}.glass-theme-toggle:active{transform:scale(.95)}.glass-theme-toggle svg{width:20px;height:20px;fill:none;stroke:var(--gl-color-text);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-theme-toggle .icon-sun{display:none}.glass-theme-toggle .icon-moon,[data-theme=light] .glass-theme-toggle .icon-sun{display:block}[data-theme=light] .glass-theme-toggle .icon-moon{display:none}.glass-popover-anchor{position:relative;display:inline-block}.glass-popover{position:absolute;top:calc(100% + var(--gl-space-xs));left:50%;transform:translateX(-50%) translateY(-4px) scale(.96);transform-origin:top center;min-width:220px;padding:var(--gl-space-sm);background:var(--gl-surface-3);backdrop-filter:blur(var(--gl-blur));-webkit-backdrop-filter:blur(var(--gl-blur));border:1px solid var(--gl-border-medium);border-radius:var(--gl-radius-card);box-shadow:var(--gl-shadow-card),var(--gl-inset-strong);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .18s cubic-bezier(.2,.8,.2,1),visibility 0s linear .18s;z-index:50}.glass-popover.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0) scale(1);transition:opacity .18s,transform .22s cubic-bezier(.2,.8,.2,1),visibility linear}.glass-popover--top{top:auto;bottom:calc(100% + var(--gl-space-xs));transform-origin:bottom center}.glass-popover--start{inset-inline-start:0;inset-inline-end:auto;transform:translateY(-4px) scale(.96);transform-origin:top left}.glass-popover--start:dir(rtl){transform-origin:top right}.glass-popover--start.is-open{transform:translateY(0) scale(1)}.glass-popover--end{inset-inline-start:auto;inset-inline-end:0;transform:translateY(-4px) scale(.96);transform-origin:top right}.glass-popover--end:dir(rtl){transform-origin:top left}.glass-popover--end.is-open{transform:translateY(0) scale(1)}.glass-list{background:var(--gl-surface-1);backdrop-filter:blur(var(--gl-blur-light));-webkit-backdrop-filter:blur(var(--gl-blur-light));border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);box-shadow:0 4px 12px rgba(0,0,0,.08),var(--gl-inset-subtle);overflow:hidden;display:flex;flex-direction:column;width:100%;margin:0;padding:0;list-style:none}.glass-list--flush{border-radius:0;border-left:none;border-right:none;margin-left:calc(var(--gl-space-lg) * -1);margin-right:calc(var(--gl-space-lg) * -1)}.glass-list--bare{background:0 0;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;box-shadow:none}.glass-list__section-header{padding:var(--gl-space-xs) var(--gl-space-lg) var(--gl-space-2xs);font-size:var(--gl-font-size-xs);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-muted);text-transform:uppercase;letter-spacing:.3px}.glass-list__item{position:relative;display:flex;align-items:center;gap:var(--gl-space-sm);padding:var(--gl-list-item-padding-y,var(--gl-space-md)) var(--gl-space-lg);min-height:var(--gl-list-item-min-height,56px);color:var(--gl-color-text);font-size:var(--gl-font-size-base);text-decoration:none;background:0 0;border:none;width:100%;text-align:start;font-family:inherit;list-style:none}.glass-list__item:not(:last-child)::after{content:'';position:absolute;inset-inline-start:calc(var(--gl-space-lg) + 28px + var(--gl-space-sm));inset-inline-end:var(--gl-space-lg);bottom:0;height:1px;background:var(--gl-border-subtle);pointer-events:none}.glass-list__item:not(:has(.glass-list__leading:not([hidden]))):not(:last-child)::after{inset-inline-start:var(--gl-space-lg)}.glass-list__item:has(.glass-list__leading--lg:not([hidden])):not(:last-child)::after{inset-inline-start:calc(var(--gl-space-lg) + 40px + var(--gl-space-sm))}.glass-list__item--center{justify-content:center;text-align:center;white-space:var(--gl-list-title-white-space,nowrap);overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.glass-list__item--center>.glass-list__title{white-space:var(--gl-list-title-white-space,nowrap);overflow:hidden;text-overflow:ellipsis}.glass-list__item--interactive{cursor:pointer;transition:background .15s}.glass-list__item--interactive:focus-visible,.glass-list__item--interactive:hover{background:var(--gl-surface-2);outline:0}.glass-list__item--interactive:active{background:var(--gl-surface-3)}.glass-list__item--interactive:disabled,.glass-list__item--interactive[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-list__item--interactive:disabled:is(:hover,:active),.glass-list__item--interactive[aria-disabled=true]:is(:hover,:active){background:0 0}.glass-list__item--danger{color:var(--gl-color-error)}.glass-list__item--danger .glass-list__leading,.glass-list__item--danger .glass-list__title{color:inherit}.glass-list__item--accent{color:var(--gl-color-primary-text)}.glass-list__item--accent .glass-list__leading,.glass-list__item--accent .glass-list__title{color:inherit}.glass-list__leading{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--gl-icon-strong)}.glass-list__leading[hidden],.glass-list__trailing[hidden]{display:none}.glass-list__leading ::slotted(svg),.glass-list__leading svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-list__leading--lg{width:40px;height:40px;border-radius:var(--gl-radius-xs);overflow:hidden}.glass-list__leading--lg ::slotted(svg),.glass-list__leading--lg svg{width:32px;height:32px}.glass-list__leading--lg ::slotted(img),.glass-list__leading--lg img{width:100%;height:100%;object-fit:cover;display:block}.glass-list__content{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:2px;overflow:hidden}.glass-list__title{font-size:var(--gl-font-size-base);font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text);white-space:var(--gl-list-title-white-space,nowrap);overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.glass-list__subtitle{font-size:var(--gl-font-size-sm);color:var(--gl-color-text-muted);white-space:var(--gl-list-subtitle-white-space,nowrap);overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.glass-list__subtitle--wrap{white-space:normal;display:-webkit-box;-webkit-line-clamp:var(--gl-list-subtitle-lines,3);-webkit-box-orient:vertical;overflow:hidden}.glass-list__subtitle[hidden]{display:none}.glass-list__trailing{flex-shrink:0;display:flex;align-items:center;gap:var(--gl-space-xs);color:var(--gl-color-text-muted);font-size:var(--gl-font-size-sm)}.glass-list__trailing ::slotted(svg),.glass-list__trailing svg{width:18px;height:18px;stroke:var(--gl-icon-muted);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.glass-list__value{color:var(--gl-color-text-muted);font-size:var(--gl-font-size-sm);white-space:nowrap}.glass-skeleton{display:flex;flex-direction:column;gap:10px}.glass-skeleton__line{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--gl-surface-1) 0,var(--gl-surface-4) 50%,var(--gl-surface-1) 100%);background-size:200% 100%;animation:1.4s ease-in-out infinite glass-skeleton}.glass-skeleton__line--title{height:18px}@keyframes glass-skeleton{from{background-position:200% 0}to{background-position:-200% 0}}.glass-table-wrap{overflow-x:auto;border-radius:var(--gl-radius-sm)}.glass-table{width:100%;border-collapse:collapse;font-size:var(--gl-font-size-sm);color:var(--gl-color-text)}.glass-table th{text-align:start;padding:8px 10px;white-space:nowrap;font-weight:var(--gl-font-weight-medium);color:var(--gl-color-text-muted);border-bottom:1px solid var(--gl-border-medium)}.glass-table td{padding:9px 10px;vertical-align:top;border-bottom:1px solid var(--gl-border-subtle)}.glass-table tbody tr:last-child td{border-bottom:0}.glass-table tbody tr:hover td{background:var(--gl-surface-1)}.glass-table__num{text-align:end;font-variant-numeric:tabular-nums}.glass-table__muted{color:var(--gl-color-text-muted)}.glass-prose{font-size:var(--gl-font-size-base);line-height:1.6;color:var(--gl-color-text)}.glass-prose>:first-child{margin-top:0}.glass-prose>:last-child{margin-bottom:0}.glass-prose h1,.glass-prose h2,.glass-prose h3{color:var(--gl-color-text-heading);line-height:1.25;margin:1.2em 0 .4em}.glass-prose h1{font-size:var(--gl-font-size-title)}.glass-prose h2{font-size:var(--gl-font-size-modal)}.glass-prose h3{font-size:var(--gl-font-size-lg)}.glass-prose blockquote,.glass-prose ol,.glass-prose p,.glass-prose pre,.glass-prose table,.glass-prose ul{margin:0 0 .9em}.glass-prose ol,.glass-prose ul{padding-inline-start:1.3em}.glass-prose strong{color:var(--gl-color-text-heading)}.glass-prose a{color:var(--gl-color-primary-text);text-decoration:underline;text-underline-offset:2px}.glass-prose code{font-family:ui-monospace,'SF Mono',Menlo,monospace;font-size:.9em;background:var(--gl-surface-2);padding:1px 5px;border-radius:4px}.glass-prose pre{padding:12px 14px;overflow-x:auto;background:var(--gl-surface-1);border-radius:var(--gl-radius-sm)}.glass-prose pre code{background:0 0;padding:0}.glass-prose blockquote{padding:8px 14px;border-inline-start:3px solid var(--gl-color-primary);background:var(--gl-surface-1);border-start-start-radius:0;border-end-start-radius:0;border-start-end-radius:var(--gl-radius-xs);border-end-end-radius:var(--gl-radius-xs)}.glass-prose img{max-width:100%;height:auto;border-radius:var(--gl-radius-sm)}.glass-prose hr{height:1px;border:0;margin:1.2em 0;background:var(--gl-border-subtle)}.glass-prose table{width:100%;border-collapse:collapse}.glass-prose td,.glass-prose th{padding:6px 8px;text-align:start;border-bottom:1px solid var(--gl-border-subtle)}.glass-segmented{display:inline-flex;gap:4px;padding:4px;max-width:100%;background:var(--gl-surface-1);border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-btn);box-shadow:var(--gl-inset-subtle)}.glass-segmented--full{display:flex}.glass-segmented--full .glass-segmented__item{flex:1 1 0}.glass-segmented--scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.glass-segmented--scroll::-webkit-scrollbar{display:none}.glass-segmented--wrap{flex-wrap:wrap}.glass-segmented__item{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:0;border-radius:var(--gl-radius-sm);background:0 0;color:var(--gl-color-text-muted);font-family:inherit;font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);white-space:nowrap;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-segmented__item:hover{color:var(--gl-color-text)}.glass-segmented__item[aria-pressed=true]{background:var(--gl-surface-5);color:var(--gl-color-text-heading);box-shadow:var(--gl-shadow-btn)}.glass-segmented__item:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-segmented__item[aria-pressed=true]:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-shadow-btn)}.glass-segmented__item:disabled{opacity:.45;cursor:not-allowed}.glass-segmented__dot{width:10px;height:10px;border-radius:50%;background:var(--gl-segmented-tone,currentColor)}.glass-segmented__item--success{--gl-segmented-tone:var(--gl-color-success)}.glass-segmented__item--warning{--gl-segmented-tone:var(--gl-color-warning)}.glass-segmented__item--error{--gl-segmented-tone:var(--gl-color-error)}.glass-steps{display:flex;align-items:center;gap:6px;margin:0;padding:0;list-style:none;min-width:0;container-type:inline-size}.glass-steps__item{display:flex;align-items:center;gap:6px;flex:0 1 auto;min-width:0;font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted);white-space:nowrap}.glass-steps__num{flex:none;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gl-border-medium);font-size:11px;font-weight:var(--gl-font-weight-semibold)}.glass-steps__num svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.glass-steps__label{min-width:0;overflow:hidden;text-overflow:ellipsis}.glass-steps__item--done .glass-steps__num{background:var(--gl-color-success-surface);border-color:var(--gl-color-success-border);color:var(--gl-color-success-on-surface)}.glass-steps__item--current{color:var(--gl-color-text-heading)}.glass-steps__item--current .glass-steps__num{background:var(--gl-color-primary);border-color:transparent;color:var(--gl-color-on-primary)}.glass-steps__line{flex:1 1 8px;min-width:8px;height:1px;background:var(--gl-border-subtle)}@container (max-width:360px){.glass-steps__label{display:none}.glass-steps__item--current .glass-steps__label{display:inline}}.glass-sheet-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center;background:var(--gl-surface-overlay);backdrop-filter:blur(var(--gl-blur-overlay,var(--gl-blur-soft)));-webkit-backdrop-filter:blur(var(--gl-blur-overlay,var(--gl-blur-soft)));font-family:var(--gl-font-family);-webkit-font-smoothing:antialiased;opacity:0;transition:var(--gl-transition-modal);transition-property:opacity}.glass-sheet-overlay[hidden]{display:none}.glass-sheet-overlay.is-active{opacity:1}.glass-sheet{width:min(100%,560px);max-height:88dvh;overflow:auto;padding:8px var(--gl-space-lg) calc(var(--gl-space-lg) + env(safe-area-inset-bottom,0px));background:linear-gradient(to bottom,var(--gl-card-glow-top) 0,var(--gl-card-glow-bottom) 100%);backdrop-filter:blur(var(--gl-blur-heavy));-webkit-backdrop-filter:blur(var(--gl-blur-heavy));color:var(--gl-color-text);border:1.5px solid var(--gl-border-medium);border-radius:var(--gl-radius-card) var(--gl-radius-card) 0 0;box-shadow:var(--gl-shadow-modal)}.glass-sheet-overlay .glass-sheet{transform:translateY(100%);transition:var(--gl-transition-modal);transition-property:transform}.glass-sheet-overlay.is-active .glass-sheet{transform:translateY(0)}.glass-sheet--inline{border-radius:var(--gl-radius-card);box-shadow:var(--gl-shadow-card)}.glass-sheet__grip{width:40px;height:4px;margin:4px auto 12px;border-radius:2px;background:var(--gl-border-strong)}.glass-sheet__title{margin:0 0 8px;font-size:var(--gl-font-size-modal);font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-heading)}.glass-sheet__body{font-size:var(--gl-font-size-base);line-height:1.55}.glass-sheet__actions{display:flex;flex-direction:column;gap:8px;margin-top:16px}@media (prefers-reduced-motion:reduce){.glass-skeleton__line{animation:none}.glass-sheet-overlay,.glass-sheet-overlay .glass-sheet{transition:none}}.glass-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 16px;text-align:center}.glass-empty__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--gl-surface-2);color:var(--gl-icon-default)}.glass-empty__icon ::slotted(svg),.glass-empty__icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-empty__title{margin:4px 0 0;font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-heading)}.glass-empty__text{margin:0;max-width:38ch;font-size:var(--gl-font-size-sm);line-height:1.55;color:var(--gl-color-text-muted)}.glass-empty__action{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px}.glass-date-strip{display:flex;gap:6px;padding:4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.glass-date-strip::-webkit-scrollbar{display:none}.glass-date-strip__day{-webkit-appearance:none;appearance:none;flex:1 0 44px;min-width:44px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 6px;border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-input);background:var(--gl-surface-1);color:var(--gl-color-text);font-family:inherit;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-date-strip__day:hover{background:var(--gl-surface-3)}.glass-date-strip__day[aria-pressed=true]{--gl-date-strip-ink:var(--gl-color-on-primary);background:var(--gl-color-primary);color:var(--gl-color-on-primary);border-color:transparent;box-shadow:var(--gl-shadow-btn-primary)}.glass-date-strip__day:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-date-strip__day[aria-pressed=true]:focus-visible{box-shadow:var(--gl-shadow-focus),var(--gl-shadow-btn-primary)}.glass-date-strip__day:disabled,.glass-date-strip__day[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-date-strip__day:disabled:hover,.glass-date-strip__day[aria-disabled=true]:hover{background:var(--gl-surface-1)}.glass-date-strip__day--today .glass-date-strip__num{text-decoration:underline;text-underline-offset:3px}.glass-date-strip__wd{font-size:var(--gl-font-size-xs);opacity:.75;text-transform:uppercase;letter-spacing:.04em}.glass-date-strip__num{font-size:var(--gl-font-size-lg);font-weight:var(--gl-font-weight-semibold);line-height:1.1}.glass-date-strip__mark{width:6px;height:6px;margin-top:2px;border-radius:50%;background:var(--gl-date-strip-tone,transparent)}.glass-date-strip__mark--primary{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-primary))}.glass-date-strip__mark--success{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-success))}.glass-date-strip__mark--warning{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-warning))}.glass-date-strip__mark--error{--gl-date-strip-tone:var(--gl-date-strip-ink, var(--gl-color-error))}.glass-calendar{display:block}.glass-calendar__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.glass-calendar__title{flex:1 1 auto;min-width:0;text-align:center;font-weight:var(--gl-font-weight-semibold);color:var(--gl-color-text-heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glass-calendar__nav{-webkit-appearance:none;appearance:none;flex:none;width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-full);background:var(--gl-surface-1);color:var(--gl-color-text);font-family:inherit;cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-calendar__nav:hover{background:var(--gl-surface-3)}.glass-calendar__nav:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-calendar__nav:disabled{opacity:.45;cursor:not-allowed}.glass-calendar__nav:disabled:hover{background:var(--gl-surface-1)}.glass-calendar__nav svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.glass-calendar__wd{padding:4px 0;text-align:center;font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted);text-transform:uppercase;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glass-calendar__day{-webkit-appearance:none;appearance:none;aspect-ratio:1;min-width:0;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid transparent;border-radius:var(--gl-radius-sm);background:0 0;color:var(--gl-color-text);font-family:inherit;font-size:var(--gl-font-size-sm);cursor:pointer;transition:var(--gl-transition-fast);outline:0;-webkit-tap-highlight-color:transparent}.glass-calendar__day:hover{background:var(--gl-surface-2)}.glass-calendar__day--other{opacity:.35}.glass-calendar__day--today{border-color:var(--gl-border-warm)}.glass-calendar__day[aria-pressed=true]{--gl-calendar-ink:var(--gl-color-on-primary);background:var(--gl-color-primary);color:var(--gl-color-on-primary)}.glass-calendar__day:focus-visible{box-shadow:var(--gl-shadow-focus)}.glass-calendar__day:disabled,.glass-calendar__day[aria-disabled=true]{opacity:.45;cursor:not-allowed}.glass-calendar__day:disabled:hover,.glass-calendar__day[aria-disabled=true]:hover{background:0 0}.glass-calendar__marks{display:flex;gap:2px;height:5px}.glass-calendar__mark{width:5px;height:5px;border-radius:50%;background:var(--gl-calendar-tone,transparent)}.glass-calendar__mark--primary{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-primary))}.glass-calendar__mark--success{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-success))}.glass-calendar__mark--warning{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-warning))}.glass-calendar__mark--error{--gl-calendar-tone:var(--gl-calendar-ink, var(--gl-color-error))}.glass-image-picker{display:flex;align-items:center;gap:14px}.glass-image-picker__preview{flex:none;width:72px;height:72px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gl-border-subtle);border-radius:var(--gl-radius-input);background:var(--gl-surface-2);color:var(--gl-icon-muted);overflow:hidden}.glass-image-picker__preview--round{border-radius:50%}.glass-image-picker__preview img{display:block;width:100%;height:100%;object-fit:cover}.glass-image-picker__preview svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.glass-image-picker__meta{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.glass-image-picker__label{font-size:var(--gl-font-size-sm);font-weight:var(--gl-font-weight-medium);color:var(--gl-icon-strong);overflow-wrap:anywhere}.glass-image-picker__hint{font-size:var(--gl-font-size-xs);color:var(--gl-color-text-muted)}.glass-image-picker__actions{display:flex;flex-wrap:wrap;gap:8px}.gl-stack{display:flex;flex-direction:column}.gl-row{display:flex;flex-direction:row;align-items:center}.gl-stack--2xs{gap:var(--gl-space-2xs)}.gl-stack--xs{gap:var(--gl-space-xs)}.gl-stack--sm{gap:var(--gl-space-sm)}.gl-stack--md{gap:var(--gl-space-md)}.gl-stack--lg{gap:var(--gl-space-lg)}.gl-stack--xl{gap:var(--gl-space-xl)}.gl-row--xs{gap:var(--gl-space-xs)}.gl-row--sm{gap:var(--gl-space-sm)}.gl-row--md{gap:var(--gl-space-md)}.gl-text-center{text-align:center}.gl-text-muted{color:var(--gl-color-text-muted)}.gl-text-sm{font-size:var(--gl-font-size-sm)}.gl-mt-sm{margin-top:var(--gl-space-sm)}.gl-mt-md{margin-top:var(--gl-space-md)}.gl-mt-lg{margin-top:var(--gl-space-lg)}.gl-mt-xl{margin-top:var(--gl-space-xl)}.gl-mb-sm{margin-bottom:var(--gl-space-sm)}.gl-mb-md{margin-bottom:var(--gl-space-md)}.gl-mb-lg{margin-bottom:var(--gl-space-lg)}.gl-mb-xl{margin-bottom:var(--gl-space-xl)}.gl-px{padding-left:var(--gl-space-lg);padding-right:var(--gl-space-lg)}.gl-w-full{width:100%}.gl-flex-1{flex:1}svg.glass-icon--fill{fill:currentColor;stroke:none}@media print{.glass-calendar__day[aria-pressed=true],.glass-calendar__mark,.glass-checkbox__box,.glass-date-strip__day[aria-pressed=true],.glass-date-strip__mark,.glass-progress__fill,.glass-radio__circle,.glass-range,.glass-segmented__dot,.glass-steps__item--current .glass-steps__num,.glass-toggle__track{-webkit-print-color-adjust:exact;print-color-adjust:exact}}\n",a=s+r,i=s+e+r;(new CSSStyleSheet).replaceSync(i);(new CSSStyleSheet).replaceSync(e);const l=new CSSStyleSheet;l.replaceSync(a);const o="__glkDefaultTokensInjected",n="data-glk-defaults";let g=null;function c(){if(!g)return;const t="off"!==document.documentElement.getAttribute(n),e=document.adoptedStyleSheets;t!==e.includes(g)&&(document.adoptedStyleSheets=t?[...e,g]:e.filter(t=>t!==g))}!function(){if("undefined"==typeof document)return;if(globalThis[o])return;globalThis[o]=!0;const t=e.replace(/color-scheme\s*:[^;}]*;?/g,"");g=new CSSStyleSheet,g.replaceSync(`@layer glasskit-defaults { ${t} }`),c()}();const d=new Set;function h(){return document.documentElement.getAttribute("data-theme")||"dark"}function p(){return document.documentElement.getAttribute("data-density")}function u(){return document.documentElement.getAttribute("data-surface")}if("undefined"!=typeof window&&"undefined"!=typeof MutationObserver){new MutationObserver(t=>{t.some(t=>"data-theme"===t.attributeName)&&function(){const t=h();for(const e of d)e._syncTheme(t)}(),t.some(t=>"data-density"===t.attributeName)&&function(){const t=p();for(const e of d)e._syncDensity(t)}(),t.some(t=>"data-surface"===t.attributeName)&&function(){const t=u();for(const e of d)e._syncSurface(t)}(),t.some(t=>t.attributeName===n)&&c()}).observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme","data-density","data-surface",n]})}const b='\n .glk-wrapper { display: contents; }\n .glk-wrapper[data-theme="dark"] { color-scheme: dark; }\n .glk-wrapper[data-theme="light"] { color-scheme: light; }\n',_=new CSSStyleSheet;_.replaceSync(`\n :host { display: block; }\n :host([hidden]) { display: none; }\n ${b}\n`);const v=new CSSStyleSheet;v.replaceSync(`\n :host { display: inline-block; }\n :host([hidden]) { display: none; }\n ${b}\n`);const m=new CSSStyleSheet;m.replaceSync("\n .glass-checkbox, .glass-radio, .glass-toggle { vertical-align: top; }\n");let f=null,x=!1;function y(t,e){x||"undefined"==typeof window||(x=!0,window.addEventListener("pointerdown",t=>{f=t.composedPath()[0]},{capture:!0,passive:!0}));const s=s=>{if(s.composedPath()[0]!==t)return;if(s.isTrusted&&f===t)return;const r=e();r&&!r.disabled&&(s.stopImmediatePropagation(),r.click())};return t.addEventListener("click",s),()=>t.removeEventListener("click",s)}class k extends HTMLElement{static get displayInline(){return!1}static get hostStyles(){return null}static get observesLightDom(){return!1}static get delegatesFocus(){return!1}static get observedAttributes(){return[]}constructor(){super(),this._initialized=!1,this._shadow=this.attachShadow({mode:"open",delegatesFocus:this.constructor.delegatesFocus});const t=this.constructor.displayInline?v:_,e=[l,t],s=this.constructor.hostStyles;s&&e.push(s),this._shadow.adoptedStyleSheets=e}connectedCallback(){this._initialized?(this._syncTheme(h()),this._syncDensity(p()),this._syncSurface(u())):(this._upgradeProperties(),this._initialized=!0,this._wrapper=document.createElement("div"),this._wrapper.className="glk-wrapper",this._wrapper.setAttribute("data-theme",h()),this._syncDensity(p()),this._syncSurface(u()),this._shadow.appendChild(this._wrapper),this.render(),this.constructor.formAssociated&&this._syncDisabled()),this.setupEvents(),d.add(this),this.constructor.observesLightDom&&(this._lightDomObserver??=new MutationObserver(t=>this.projectLightDom(t)),this._lightDomObserver.observe(this,{childList:!0,subtree:!0,characterData:!0}))}_upgradeProperties(){for(const t of Object.keys(this)){let e=Object.getPrototypeOf(this),s=null;for(;e&&e!==HTMLElement.prototype;){const r=Object.getOwnPropertyDescriptor(e,t);if(r){s=r.set;break}e=Object.getPrototypeOf(e)}if(!s)continue;const r=this[t];delete this[t],this[t]=r}}disconnectedCallback(){d.delete(this),this._lightDomObserver?.disconnect(),this.teardownEvents()}attributeChangedCallback(t,e,s){this._initialized&&e!==s&&this.onAttributeChanged(t,e,s)}_syncTheme(t){this._wrapper&&this._wrapper.setAttribute("data-theme",t)}_syncDensity(t){this._wrapper&&(t?this._wrapper.setAttribute("data-density",t):this._wrapper.removeAttribute("data-density"))}_syncSurface(t){this._wrapper&&(t?this._wrapper.setAttribute("data-surface",t):this._wrapper.removeAttribute("data-surface"))}render(){}setupEvents(){}teardownEvents(){}onAttributeChanged(t,e,s){}projectLightDom(){}refresh(){this.projectLightDom()}get _actuallyDisabled(){return this.matches(":disabled")}formDisabledCallback(){this._initialized&&this._syncDisabled()}_syncDisabled(){this.applyDisabled(this._actuallyDisabled)}applyDisabled(t){}takeTitle(t=this.getAttribute("title")){return null!==t&&(this._title=t,this.removeAttribute("title"),!0)}getBoolAttr(t){return this.hasAttribute(t)}setBoolAttr(t,e){e?this.setAttribute(t,""):this.removeAttribute(t)}createElement(t,e=[],s={}){const r=document.createElement(t);e.length&&r.classList.add(...e);for(const[t,e]of Object.entries(s))r.setAttribute(t,e);return r}emit(t,e=null,{cancelable:s=!1}={}){return this.dispatchEvent(new CustomEvent(t,{bubbles:!0,composed:!0,cancelable:s,detail:e}))}}class w extends k{static formAssociated=!0;static get delegatesFocus(){return!0}constructor(){super(),this._internals=this.attachInternals()}attributeChangedCallback(t,e,s){super.attributeChangedCallback(t,e,s),this._initialized&&this.syncValidity()}get disabled(){return this.getBoolAttr("disabled")}set disabled(t){this.setBoolAttr("disabled",t)}_syncDisabled(){super._syncDisabled(),this.syncValidity()}get form(){return this._internals.form}get validationMessage(){return this._internals.validationMessage}get validity(){return this._internals.validity}get willValidate(){return this._internals.willValidate}checkValidity(){return this._internals.checkValidity()}reportValidity(){return this._internals.reportValidity()}formResetCallback(){this.resetValue()}formStateRestoreCallback(t,e){this.restoreValue(t)}resetValue(){}restoreValue(t){}setFormValue(t){this._internals.setFormValue(t),this.syncValidity()}setValidity(t,e,s){this._internals.setValidity(t,e,s)}get _validityField(){return null}syncValidity(){const t=this._validityField;if(!t)return;const e=t.validationMessage;t.willValidate&&!t.validity.valid&&e?this._internals.setValidity(t.validity,e,t):this._internals.setValidity({})}}class A extends k{render(){const t=this.createElement("nav",["glass-nav"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t)}}customElements.define("glk-nav",A);const E=["aria-expanded","aria-haspopup","aria-pressed"];class C extends k{static get observedAttributes(){return["label","disabled",...E]}render(){this._btn=this.createElement("button",["glass-pill"]),this.getBoolAttr("disabled")&&(this._btn.disabled=!0);const t=this.getAttribute("label");t&&this._btn.setAttribute("aria-label",t);for(const t of E)this._forward(t);this._btn.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._btn)}setupEvents(){this._onClick=()=>{this.getBoolAttr("disabled")||this.emit("glk-click")},this._btn.addEventListener("click",this._onClick)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick)}onAttributeChanged(t){if(this._btn)switch(t){case"label":this._btn.setAttribute("aria-label",this.getAttribute("label")||"");break;case"disabled":this._btn.disabled=this.getBoolAttr("disabled");break;default:E.includes(t)&&this._forward(t)}}_forward(t){const e=this.getAttribute(t);null===e?this._btn.removeAttribute(t):this._btn.setAttribute(t,e)}}customElements.define("glk-pill",C);class L extends k{static get observedAttributes(){return["static","floating"]}render(){const t=this.createElement("nav",["glass-tab-bar"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t),this._nav=t,this.getBoolAttr("floating")&&t.classList.add("glass-tab-bar--floating"),this.getBoolAttr("static")&&this._applyStatic()}onAttributeChanged(t){this._nav&&("static"===t?this._applyStatic():"floating"===t&&this._nav.classList.toggle("glass-tab-bar--floating",this.getBoolAttr("floating")))}_applyStatic(){this._nav.style.position="relative",this._nav.style.borderRadius="16px"}setupEvents(){this._onTabSelect=t=>{this.querySelectorAll("glk-tab-item").forEach(e=>{e!==t.target&&e.removeAttribute("active")}),this.emit("glk-tab-change",{tab:t.target})},this.addEventListener("glk-tab-select",this._onTabSelect)}teardownEvents(){this.removeEventListener("glk-tab-select",this._onTabSelect)}}customElements.define("glk-tab-bar",L);class z extends k{static get observedAttributes(){return["label","active","badge"]}static get observesLightDom(){return!0}render(){this._btn=this.createElement("button",["glass-tab-bar__item"]),this.getBoolAttr("active")&&this._btn.classList.add("is-active"),this._iconEl=this.createElement("span",["glass-tab-bar__icon"]),this._labelEl=this.createElement("span",["glass-tab-bar__label"]),this._labelEl.textContent=this.getAttribute("label")||"";const t=this.getAttribute("badge");t&&(this._badgeEl=this.createElement("span",["glass-tab-bar__badge"]),this._badgeEl.textContent=t,this._iconEl.appendChild(this._badgeEl)),this._btn.appendChild(this._iconEl),this._btn.appendChild(this._labelEl),this._wrapper.appendChild(this._btn),requestAnimationFrame(()=>this.projectLightDom())}projectLightDom(){const t=this.querySelector("svg"),e=t?t.outerHTML:"";if(e===this._iconSignature)return;if(this._iconSignature=e,this._iconClone?.remove(),this._iconClone=null,!t)return;const s=t.cloneNode(!0);s.removeAttribute("width"),s.removeAttribute("height"),s.removeAttribute("stroke"),s.removeAttribute("stroke-width"),s.removeAttribute("stroke-linecap"),s.removeAttribute("stroke-linejoin"),s.removeAttribute("fill"),this._iconEl.insertBefore(s,this._iconEl.firstChild),this._iconClone=s}setupEvents(){this._onClick=()=>{this.setAttribute("active",""),this.emit("glk-tab-select")},this._btn.addEventListener("click",this._onClick)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick)}onAttributeChanged(t){if(this._btn)switch(t){case"active":this._btn.classList.toggle("is-active",this.getBoolAttr("active"));break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"badge":{const t=this.getAttribute("badge");t?(this._badgeEl||(this._badgeEl=this.createElement("span",["glass-tab-bar__badge"]),this._iconEl.appendChild(this._badgeEl)),this._badgeEl.textContent=t):this._badgeEl&&(this._badgeEl.remove(),this._badgeEl=null);break}}}}customElements.define("glk-tab-item",z);class S extends k{static get observedAttributes(){return["accessory-left","static"]}render(){this._dock=this.createElement("div",["glass-tab-bar-dock"]),this.getBoolAttr("accessory-left")&&this._dock.classList.add("glass-tab-bar-dock--accessory-left"),this._dock.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._dock),this.getBoolAttr("static")&&this._applyStatic()}onAttributeChanged(t){this._dock&&("accessory-left"===t?this._dock.classList.toggle("glass-tab-bar-dock--accessory-left",this.getBoolAttr("accessory-left")):"static"===t&&this._applyStatic())}_applyStatic(){this.getBoolAttr("static")?(this._dock.style.position="relative",this._dock.style.left="auto",this._dock.style.bottom="auto",this._dock.style.transform="none",this._dock.style.justifyContent="center"):(this._dock.style.position="",this._dock.style.left="",this._dock.style.bottom="",this._dock.style.transform="",this._dock.style.justifyContent="")}}customElements.define("glk-tab-dock",S);const B=["accent","success","error"];class V extends k{static get observedAttributes(){return["label","disabled","variant"]}render(){this._btn=this.createElement("button",["glass-tab-bar__accessory"]),this.getBoolAttr("disabled")&&(this._btn.disabled=!0);const t=this.getAttribute("label");t&&this._btn.setAttribute("aria-label",t),this._applyVariant(),this._btn.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._btn)}_applyVariant(){if(!this._btn)return;for(const t of B)this._btn.classList.remove(`glass-tab-bar__accessory--${t}`);const t=this.getAttribute("variant");t&&B.includes(t)&&this._btn.classList.add(`glass-tab-bar__accessory--${t}`)}setupEvents(){this._onClick=()=>{this.getBoolAttr("disabled")||this.emit("glk-click")},this._btn.addEventListener("click",this._onClick)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick)}onAttributeChanged(t){if(this._btn)switch(t){case"label":this._btn.setAttribute("aria-label",this.getAttribute("label")||"");break;case"disabled":this._btn.disabled=this.getBoolAttr("disabled");break;case"variant":this._applyVariant()}}}customElements.define("glk-tab-accessory",V);class T extends k{static get observedAttributes(){return["steps","current","label"]}render(){this._list=this.createElement("ol",["glass-steps"],{part:"steps"}),this._wrapper.appendChild(this._list),this._build(),this._applyLabel()}_build(){const t=this.steps,e=this.current;this._list.replaceChildren(),t.forEach((s,r)=>{const a=this.createElement("li",["glass-steps__item"]);r<e&&a.classList.add("glass-steps__item--done"),r===e&&(a.classList.add("glass-steps__item--current"),a.setAttribute("aria-current","step"));const i=this.createElement("span",["glass-steps__num"]);r<e?i.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M5 12l5 5 9-10"/></svg>':i.textContent=String(r+1);const l=this.createElement("span",["glass-steps__label"]);l.textContent=s,a.append(i,l),this._list.appendChild(a),r<t.length-1&&this._list.appendChild(this.createElement("li",["glass-steps__line"],{"aria-hidden":"true"}))})}_applyLabel(){const t=this.getAttribute("label");t?this._list.setAttribute("aria-label",t):this._list.removeAttribute("aria-label")}onAttributeChanged(t){this._list&&("label"===t?this._applyLabel():this._build())}get current(){return Number(this.getAttribute("current"))||0}set current(t){this.setAttribute("current",String(Number(t)||0))}get steps(){return(this.getAttribute("steps")||"").split(",").map(t=>t.trim()).filter(Boolean)}set steps(t){this.setAttribute("steps",Array.isArray(t)?t.join(","):String(t??""))}}customElements.define("glk-steps",T);const F=t=>String(t).padStart(2,"0"),D=t=>`${t.getFullYear()}-${F(t.getMonth()+1)}-${F(t.getDate())}`;function j(t){const e=/^(\d{4})-(\d{2})(?:-(\d{2}))?$/.exec(String(t??"").trim());if(!e)return null;const s=new Date(Number(e[1]),Number(e[2])-1,Number(e[3]??1));return Number.isNaN(s.getTime())?null:s}const M=(t,e)=>new Date(t.getFullYear(),t.getMonth(),t.getDate()+e);function O(t){try{const e=JSON.parse(t||"{}");return e&&"object"==typeof e&&!Array.isArray(e)?e:{}}catch{return{}}}function q(t,e){if(t)return t;for(let t=e;t;){const e=t.closest?.("[lang]");if(e){const t=e.getAttribute("lang").trim();if(t)return t;break}const s=t.getRootNode?.();t="undefined"!=typeof ShadowRoot&&s instanceof ShadowRoot?s.host:null}return"undefined"!=typeof navigator&&navigator.language||"en"}const N=new Map;function I(t){let e=N.get(t);if(!e){try{e={weekday:new Intl.DateTimeFormat(t,{weekday:"short"}),day:new Intl.DateTimeFormat(t,{weekday:"long",day:"numeric",month:"long",year:"numeric"}),month:new Intl.DateTimeFormat(t,{month:"long",year:"numeric"})}}catch{return I("en")}N.set(t,e)}return e}const G=(t,e)=>t.weekday.format(e).replace(/\.$/,"");const H=t=>"string"==typeof t&&/^[a-z][a-z0-9-]*$/.test(t);function R(t,e,s){if(!e||!t.clientWidth)return!1;const r=t.getBoundingClientRect(),a=e.getBoundingClientRect(),i=a.left+a.width/2-(r.left+t.clientLeft+t.clientWidth/2),l=s&&!matchMedia("(prefers-reduced-motion: reduce)").matches;return t.scrollBy({left:i,behavior:l?"smooth":"instant"}),!0}const P={ArrowLeft:-1,ArrowRight:1,Home:-1/0,End:1/0};function $(t){return H(t)?{tone:t,disabled:!1}:t&&"object"==typeof t?{tone:H(t.tone)?t.tone:"",disabled:Boolean(t.disabled)}:{tone:"",disabled:!1}}class Y extends k{static get observedAttributes(){return["start","days","value","today","marks","locale","label"]}render(){this._strip=this.createElement("div",["glass-date-strip"],{role:"group",part:"strip"}),this._wrapper.appendChild(this._strip),this._build(),this._applyLabel()}_build(){const t=I(q(this.getAttribute("locale"),this)),e=O(this.getAttribute("marks")),s=j(this.getAttribute("start"))??new Date,r=this.getAttribute("today")||D(new Date),a=Math.max(1,Math.floor(Number(this.getAttribute("days")))||7);this._strip.replaceChildren();for(let i=0;i<a;i+=1){const a=M(s,i),l=D(a),o=$(e[l]),n=this.createElement("button",["glass-date-strip__day"],{type:"button","data-value":l,"aria-label":t.day.format(a)});l===r&&n.classList.add("glass-date-strip__day--today"),o.disabled&&(n.disabled=!0);const g=this.createElement("span",["glass-date-strip__wd"]);g.textContent=G(t,a);const c=this.createElement("span",["glass-date-strip__num"]);c.textContent=String(a.getDate());const d=this.createElement("span",["glass-date-strip__mark"]);o.tone&&d.classList.add(`glass-date-strip__mark--${o.tone}`),n.append(g,c,d),this._strip.appendChild(n)}this._syncValue()}_chips(){return[...this._strip.querySelectorAll("button[data-value]")]}_syncValue(){const t=this.value;let e=null;for(const s of this._chips()){const r=s.dataset.value===t;s.setAttribute("aria-pressed",String(r)),r&&(e=s)}const s=this._chips();this._setTabStop(e??s.find(t=>!t.disabled)??s[0]),this._reveal(this._revealedAt?"smooth":"instant")}_setTabStop(t){for(const e of this._chips())e.tabIndex=e===t?0:-1}_reveal(t="instant"){const e=this._strip.querySelector('[aria-pressed="true"]');R(this._strip,e,"smooth"===t)&&(this._revealedAt=this._strip.clientWidth)}_applyLabel(){const t=this.getAttribute("label");t?this._strip.setAttribute("aria-label",t):this._strip.removeAttribute("aria-label")}setupEvents(){this._onClick=t=>{const e=t.target.closest("button[data-value]");if(!e||e.disabled||"true"===e.getAttribute("aria-disabled"))return;this._setTabStop(e);const{value:s}=e.dataset;s!==this.value&&(this.value=s,this.emit("glk-change",{value:s}))},this._onKeydown=t=>{const e=P[t.key];if(void 0===e)return;const s=this._chips().filter(t=>!t.disabled),r=s.indexOf(t.target.closest("button[data-value]"));if(r<0)return;const a=Number.isFinite(e)?Math.min(s.length-1,Math.max(0,r+e)):e<0?0:s.length-1;t.preventDefault(),this._setTabStop(s[a]),s[a].focus()},this._onResize=()=>{this._strip.clientWidth!==this._revealedAt&&this._reveal("instant")},this._strip.addEventListener("click",this._onClick),this._strip.addEventListener("keydown",this._onKeydown),this._resizeObserver=new ResizeObserver(this._onResize),this._resizeObserver.observe(this._strip)}teardownEvents(){this._strip?.removeEventListener("click",this._onClick),this._strip?.removeEventListener("keydown",this._onKeydown),this._resizeObserver?.disconnect(),this._resizeObserver=null}onAttributeChanged(t){this._strip&&("value"===t?this._syncValue():"label"===t?this._applyLabel():this._build())}get value(){return this.getAttribute("value")??""}set value(t){null==t||""===t?this.removeAttribute("value"):this.setAttribute("value",String(t))}get marks(){return O(this.getAttribute("marks"))}set marks(t){this.setAttribute("marks","string"==typeof t?t:JSON.stringify(t??{}))}get locale(){return q(this.getAttribute("locale"),this)}set locale(t){t?this.setAttribute("locale",t):this.removeAttribute("locale")}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}}customElements.define("glk-date-strip",Y);const K=new CSSStyleSheet;K.replaceSync("\n :host([fill]) { display: grid; min-width: 0; }\n :host([fill]) .glass-card { display: flex; flex-direction: column; min-width: 0; min-height: 0; }\n");class W extends k{static get observedAttributes(){return["glow","fill"]}static get hostStyles(){return K}render(){this._card=this.createElement("div",this._computeClasses(),{part:"card"}),this._card.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._card)}onAttributeChanged(t){"glow"===t&&this._card&&(this._card.className=this._computeClasses().join(" "))}_computeClasses(){const t=["glass-card"];return this.getBoolAttr("glow")&&t.push("glass-card--glow"),t}get glow(){return this.getBoolAttr("glow")}set glow(t){this.setBoolAttr("glow",t)}get fill(){return this.getBoolAttr("fill")}set fill(t){this.setBoolAttr("fill",t)}}customElements.define("glk-card",W);const U=["primary","success","warning","error"];class X extends k{static get displayInline(){return!0}static get observedAttributes(){return["variant","interactive","selected"]}render(){this._slot=document.createElement("slot"),this._mount()}_mount(){const t=this.getBoolAttr("interactive"),e=this.createElement(t?"button":"span",this._computeClasses());t&&(e.type="button",e.setAttribute("aria-pressed",String(this.getBoolAttr("selected")))),e.appendChild(this._slot),this._badge?(this._badge.removeEventListener("click",this._onClick),this._badge.replaceWith(e)):this._wrapper.appendChild(e),this._badge=e,this._onClick&&e.addEventListener("click",this._onClick)}setupEvents(){this._onClick=()=>{this.getBoolAttr("interactive")&&this.emit("glk-click")},this._badge.addEventListener("click",this._onClick)}teardownEvents(){this._badge?.removeEventListener("click",this._onClick),this._onClick=null}onAttributeChanged(t){if(this._badge)switch(t){case"interactive":this._mount();break;case"variant":case"selected":this._badge.className=this._computeClasses().join(" "),"BUTTON"===this._badge.tagName&&this._badge.setAttribute("aria-pressed",String(this.getBoolAttr("selected")))}}_computeClasses(){const t=["glass-badge"],e=this.getAttribute("variant");return e&&U.includes(e)&&t.push(`glass-badge--${e}`),this.getBoolAttr("interactive")&&t.push("glass-badge--interactive"),this.getBoolAttr("selected")&&t.push("glass-badge--selected"),t}get variant(){return this.getAttribute("variant")}set variant(t){this.setAttribute("variant",t)}get interactive(){return this.getBoolAttr("interactive")}set interactive(t){this.setBoolAttr("interactive",t)}get selected(){return this.getBoolAttr("selected")}set selected(t){this.setBoolAttr("selected",t)}}customElements.define("glk-badge",X);const J=["sm","lg"];class Q extends k{static get displayInline(){return!0}static get observedAttributes(){return["size","src","alt"]}render(){this._avatar=this.createElement("div",this._computeClasses()),this._updateContent(),this._wrapper.appendChild(this._avatar)}onAttributeChanged(t){this._avatar&&("size"===t?this._avatar.className=this._computeClasses().join(" "):"src"!==t&&"alt"!==t||this._updateContent())}_updateContent(){const t=this.getAttribute("src");if(this._avatar.innerHTML="",t){const e=this.createElement("img",[],{src:t,alt:this.getAttribute("alt")||""});this._avatar.appendChild(e)}else this._avatar.appendChild(document.createElement("slot"))}_computeClasses(){const t=["glass-avatar"],e=this.getAttribute("size");return e&&J.includes(e)&&t.push(`glass-avatar--${e}`),t}get size(){return this.getAttribute("size")}set size(t){this.setAttribute("size",t)}get src(){return this.getAttribute("src")}set src(t){this.setAttribute("src",t)}}customElements.define("glk-avatar",Q);class Z extends k{static get observedAttributes(){return[]}render(){const t=this.createElement("div",["glass-title"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t)}}customElements.define("glk-title",Z);class tt extends k{render(){const t=this.createElement("div",["glass-divider"]);this._wrapper.appendChild(t)}}customElements.define("glk-divider",tt);class et extends k{static get observedAttributes(){return["message"]}render(){this._container=this.createElement("div",["glass-status"]),this._iconSlot=this.createElement("span",[]),this._iconSlot.appendChild(this.createElement("slot",[],{name:"icon"})),this._messageEl=this.createElement("p",[]),this._messageEl.textContent=this.getAttribute("message")||"",this._container.appendChild(this._iconSlot),this._container.appendChild(this._messageEl),this._wrapper.appendChild(this._container)}onAttributeChanged(t){"message"===t&&this._messageEl&&(this._messageEl.textContent=this.getAttribute("message")||"")}get message(){return this.getAttribute("message")}set message(t){this.setAttribute("message",t)}}customElements.define("glk-status",et);class st extends k{static get observedAttributes(){return["title","text"]}render(){const t=this.createElement("div",["glass-empty"],{part:"empty"}),e=this.createElement("span",["glass-empty__icon"],{part:"icon"}),s=document.createElement("slot");s.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="9"/><path d="M8 12h8"/></svg>',e.appendChild(s),this._titleEl=this.createElement("p",["glass-empty__title"],{part:"title"}),this._textEl=this.createElement("p",["glass-empty__text"],{part:"text"});const r=this.createElement("div",["glass-empty__action"],{part:"action"});r.appendChild(this.createElement("slot",[],{name:"action"})),t.append(e,this._titleEl,this._textEl,r),this._wrapper.appendChild(t),this.takeTitle(),this._update()}_update(){const t=this._title||"",e=this.getAttribute("text")||"";this._titleEl.textContent=t,this._titleEl.hidden=!t,this._textEl.textContent=e,this._textEl.hidden=!e}onAttributeChanged(t,e,s){("title"!==t||this.takeTitle(s))&&this._titleEl&&this._update()}_applyTitle(){this._titleEl&&this._update()}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get text(){return this.getAttribute("text")||""}set text(t){t?this.setAttribute("text",t):this.removeAttribute("text")}}customElements.define("glk-empty",st);const rt=["primary","secondary","tertiary"],at=["sm","md","lg","auto"],it=["aria-expanded","aria-haspopup","aria-pressed"];class lt extends k{static get observedAttributes(){return["variant","size","type",...it]}static formAssociated=!0;constructor(){super(),this._internals=this.attachInternals()}render(){this._btn=this.createElement("button",this._computeClasses(),{type:this.getAttribute("type")||"button"});for(const t of it)this._forward(t);this._btn.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._btn)}setupEvents(){this._onClick=t=>{if(this._actuallyDisabled)return t.preventDefault(),void t.stopPropagation();this.emit("glk-click"),this._activateForm(t)},this._btn.addEventListener("click",this._onClick),this._unforwardClicks=y(this,()=>this._btn)}teardownEvents(){this._btn?.removeEventListener("click",this._onClick),this._unforwardClicks?.()}_activateForm(t){const e=this.getAttribute("type"),s=this._internals.form;if(!s||"submit"!==e&&"reset"!==e)return;const{reset:r,requestSubmit:a}=HTMLFormElement.prototype;setTimeout(()=>{if(t.defaultPrevented||this._internals.form!==s)return;if("reset"===e)return void r.call(s);const i=t=>{Object.defineProperty(t,"submitter",{configurable:!0,get:()=>this})};s.addEventListener("submit",i,{capture:!0});try{a.call(s)}finally{s.removeEventListener("submit",i,{capture:!0})}})}onAttributeChanged(t){if(this._btn)switch(t){case"variant":case"size":this._btn.className=this._computeClasses().join(" ");break;case"type":this._btn.setAttribute("type",this.getAttribute("type")||"button");break;default:it.includes(t)&&this._forward(t)}}applyDisabled(t){this._btn.disabled=t}_forward(t){const e=this.getAttribute(t);null===e?this._btn.removeAttribute(t):this._btn.setAttribute(t,e)}_computeClasses(){const t=["glass-btn"],e=this.getAttribute("variant");e&&rt.includes(e)&&t.push(`glass-btn--${e}`);const s=this.getAttribute("size");return s&&at.includes(s)&&t.push(`glass-btn--${s}`),t}get variant(){return this.getAttribute("variant")}set variant(t){this.setAttribute("variant",t)}get size(){return this.getAttribute("size")}set size(t){this.setAttribute("size",t)}get disabled(){return this.getBoolAttr("disabled")}set disabled(t){this.setBoolAttr("disabled",t)}get type(){return this.getAttribute("type")||"button"}set type(t){this.setAttribute("type",t)}get form(){return this._internals.form}}customElements.define("glk-button",lt);const ot=["min","max","step","minlength","maxlength","pattern","autocomplete","inputmode"],nt=new CSSStyleSheet;nt.replaceSync("\n .glass-input-wrap__prefix ::slotted(:enabled),\n .glass-input-wrap__prefix ::slotted(a[href]),\n .glass-input-wrap__prefix ::slotted([tabindex]:not(:disabled)),\n .glass-input-wrap__suffix ::slotted(:enabled),\n .glass-input-wrap__suffix ::slotted(a[href]),\n .glass-input-wrap__suffix ::slotted([tabindex]:not(:disabled)) { pointer-events: auto; }\n");class gt extends w{static get observedAttributes(){return["label","type","placeholder","error","hint","readonly","name","value","required",...ot]}static get hostStyles(){return nt}render(){const t=this.createElement("div",["glass-input-group"]);this._labelEl=this.createElement("label",["glass-label"],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._input=this.createElement("input",this._computeInputClasses(),{id:"field",type:this.getAttribute("type")||"text"});const e=this.getAttribute("placeholder");e&&this._input.setAttribute("placeholder",e);const s=this.getAttribute("name");s&&this._input.setAttribute("name",s);const r=this._pendingValue??this.getAttribute("value");this._pendingValue=void 0,r&&(this._input.value=r),this.getBoolAttr("readonly")&&(this._input.readOnly=!0),this.getBoolAttr("required")&&(this._input.required=!0);for(const t of ot)this._forward(t);this._box=this.createElement("div",["glass-input-wrap"],{part:"box"}),this._prefix=this._createAffix("prefix"),this._suffix=this._createAffix("suffix"),this._box.append(this._prefix,this._input,this._suffix),this._hintEl=this.createElement("span",this._computeHintClasses(),{id:"hint"}),this._hintEl.textContent=this.getAttribute("hint")||"",t.appendChild(this._labelEl),t.appendChild(this._box),this.getAttribute("hint")&&t.appendChild(this._hintEl),this._group=t,this._wrapper.appendChild(t),this._applyDescription(),this._syncFormValue()}_createAffix(t){const e=this.createElement("span",[`glass-input-wrap__${t}`],{id:t,part:t,hidden:""});return e.appendChild(this.createElement("slot",[],{name:t})),e}setupEvents(){this._onInput=()=>{this._syncFormValue(),this.emit("glk-input",{value:this._input.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._onChangeNative=()=>{this.emit("glk-change",{value:this._input.value}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._input.addEventListener("input",this._onInput),this._input.addEventListener("change",this._onChangeNative),this._onSlotChange=()=>this._applyAffixes(),this._box.addEventListener("slotchange",this._onSlotChange),this._affixObserver=new ResizeObserver(t=>{for(const e of t){const t=e.borderBoxSize?.[0]?.inlineSize??e.contentRect.width;this._box.style.setProperty(`--gl-input-${e.target.id}-size`,`${t}px`)}}),this._affixObserver.observe(this._prefix),this._affixObserver.observe(this._suffix),this._applyAffixes()}teardownEvents(){this._input?.removeEventListener("input",this._onInput),this._input?.removeEventListener("change",this._onChangeNative),this._box?.removeEventListener("slotchange",this._onSlotChange),this._affixObserver?.disconnect()}onAttributeChanged(t){if(this._input)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"type":this._input.setAttribute("type",this.getAttribute("type")||"text");break;case"placeholder":this._input.setAttribute("placeholder",this.getAttribute("placeholder")||"");break;case"error":this._input.className=this._computeInputClasses().join(" "),this._hintEl.className=this._computeHintClasses().join(" "),this._applyDescription();break;case"hint":this._hintEl.textContent=this.getAttribute("hint")||"",this.getAttribute("hint")&&!this._hintEl.parentNode&&this._group.appendChild(this._hintEl),this._applyDescription();break;case"readonly":this._input.readOnly=this.getBoolAttr("readonly");break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._input.value=this.getAttribute("value")||"",this._syncFormValue();break;case"required":this._input.required=this.getBoolAttr("required");break;default:ot.includes(t)&&this._forward(t)}}applyDisabled(t){this._input.disabled=t}_applyAffixes(){for(const t of[this._prefix,this._suffix]){const e=t.firstElementChild.assignedNodes().length>0;t.hidden=!e,this._box.classList.toggle(`glass-input-wrap--${t.id}`,e)}this._applyDescription()}_applyDescription(){const t=[this._prefix,this._suffix].filter(t=>t&&!t.hidden).map(t=>t.id);this.getAttribute("hint")&&t.push("hint"),t.length?this._input.setAttribute("aria-describedby",t.join(" ")):this._input.removeAttribute("aria-describedby"),this.getBoolAttr("error")?this._input.setAttribute("aria-invalid","true"):this._input.removeAttribute("aria-invalid")}_forward(t){const e=this.getAttribute(t);null===e?this._input.removeAttribute(t):this._input.setAttribute(t,e)}_computeInputClasses(){const t=["glass-input"];return this.getBoolAttr("error")&&t.push("glass-input--error"),t}_computeHintClasses(){const t=["glass-hint"];return this.getBoolAttr("error")&&t.push("glass-hint--error"),t}get _validityField(){return this._input}_syncFormValue(){this.setFormValue(this._input.value)}resetValue(){this._input.value=this.getAttribute("value")||"",this._syncFormValue()}get value(){return this._input?this._input.value:this._pendingValue??this.getAttribute("value")??""}set value(t){const e=null==t?"":String(t);this._input?(this._input.value=e,this._syncFormValue()):this._pendingValue=e}get readOnly(){return this.getBoolAttr("readonly")}set readOnly(t){this.setBoolAttr("readonly",t)}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}}customElements.define("glk-input",gt);class ct extends w{static get observedAttributes(){return["label","placeholder","rows","readonly","name","value","required"]}render(){const t=this.createElement("div",["glass-input-group"]);this._labelEl=this.createElement("label",["glass-label"],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._textarea=this.createElement("textarea",["glass-textarea"],{id:"field"});const e=this.getAttribute("placeholder");e&&this._textarea.setAttribute("placeholder",e);const s=this.getAttribute("rows");s&&this._textarea.setAttribute("rows",s);const r=this.getAttribute("name");r&&this._textarea.setAttribute("name",r);const a=this._pendingValue??this.getAttribute("value");this._pendingValue=void 0,a&&(this._textarea.value=a),this.getBoolAttr("readonly")&&(this._textarea.readOnly=!0),this.getBoolAttr("required")&&(this._textarea.required=!0),t.appendChild(this._labelEl),t.appendChild(this._textarea),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onInput=()=>{this._syncFormValue(),this.emit("glk-input",{value:this._textarea.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._textarea.addEventListener("input",this._onInput)}teardownEvents(){this._textarea?.removeEventListener("input",this._onInput)}onAttributeChanged(t){if(this._textarea)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"placeholder":this._textarea.setAttribute("placeholder",this.getAttribute("placeholder")||"");break;case"rows":this._textarea.setAttribute("rows",this.getAttribute("rows")||"");break;case"readonly":this._textarea.readOnly=this.getBoolAttr("readonly");break;case"name":this._textarea.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._textarea.value=this.getAttribute("value")||"",this._syncFormValue();break;case"required":this._textarea.required=this.getBoolAttr("required")}}applyDisabled(t){this._textarea.disabled=t}get _validityField(){return this._textarea}_syncFormValue(){this.setFormValue(this._textarea.value)}resetValue(){this._textarea.value=this.getAttribute("value")||"",this._syncFormValue()}get value(){return this._textarea?this._textarea.value:this._pendingValue??this.getAttribute("value")??""}set value(t){const e=null==t?"":String(t);this._textarea?(this._textarea.value=e,this._syncFormValue()):this._pendingValue=e}get readOnly(){return this.getBoolAttr("readonly")}set readOnly(t){this.setBoolAttr("readonly",t)}}customElements.define("glk-textarea",ct);class dt extends w{static get observedAttributes(){return["label","name","value","required"]}static get observesLightDom(){return!0}render(){const t=this.createElement("div",["glass-input-group"]);this._labelEl=this.createElement("label",["glass-label"],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._select=this.createElement("select",["glass-select"],{id:"field"}),void 0===this._wanted&&(this._wanted=this.getAttribute("value"));const e=this.getAttribute("name");e&&this._select.setAttribute("name",e),this.getBoolAttr("required")&&(this._select.required=!0),t.appendChild(this._labelEl),t.appendChild(this._select),this._wrapper.appendChild(t),requestAnimationFrame(()=>this.projectLightDom())}projectLightDom(){const t=[...this.querySelectorAll("option")].map(t=>t.outerHTML).join("");if(t===this._optionSignature)return;this._optionSignature=t;const e=this._select.selectedIndex>=0?this._select.value:null;this._moveOptions(),this._applyValue(this._wanted)||this._applyValue(e),this._syncFormValue()}_moveOptions(){this._select.innerHTML="";this.querySelectorAll("option").forEach(t=>{this._select.appendChild(t.cloneNode(!0))})}_applyValue(t){return null!==t&&(!![...this._select.options].some(e=>e.value===t)&&(this._select.value=t,!0))}setupEvents(){this._onChange=()=>{this._wanted=null,this._syncFormValue(),this.emit("glk-change",{value:this._select.value}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._select.addEventListener("change",this._onChange)}teardownEvents(){this._select?.removeEventListener("change",this._onChange)}onAttributeChanged(t){if(this._select)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._select.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._wanted=this.getAttribute("value"),this._applyValue(this._wanted),this._syncFormValue();break;case"required":this._select.required=this.getBoolAttr("required")}}applyDisabled(t){this._select.disabled=t}get _validityField(){return this._select}_syncFormValue(){this.setFormValue(this._select.value)}resetValue(){this._wanted=this.getAttribute("value"),this._applyValue(this._wanted)||(this._select.selectedIndex=0),this._syncFormValue()}get value(){return this._select?.options.length?this._select.value:this._wanted??this.getAttribute("value")??""}set value(t){this._wanted=null==t?"":String(t),this._select&&(this._applyValue(this._wanted),this._syncFormValue())}}customElements.define("glk-select",dt);class ht extends w{static get observedAttributes(){return["placeholder","name","value","label"]}render(){const t=this.createElement("div",["glass-search"]),e=this.createElement("span",["glass-search__icon"]);e.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>',this._input=this.createElement("input",["glass-input"],{type:"search"});const s=this.getAttribute("placeholder");s&&this._input.setAttribute("placeholder",s),this._applyLabel();const r=this.getAttribute("name");r&&this._input.setAttribute("name",r);const a=this._pendingValue??this.getAttribute("value");this._pendingValue=void 0,a&&(this._input.value=a),t.appendChild(e),t.appendChild(this._input),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onInput=()=>{this._syncFormValue(),this.emit("glk-input",{value:this._input.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._input.addEventListener("input",this._onInput)}teardownEvents(){this._input?.removeEventListener("input",this._onInput)}onAttributeChanged(t){if(this._input)switch(t){case"placeholder":this._input.setAttribute("placeholder",this.getAttribute("placeholder")||"");break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"value":this._input.value=this.getAttribute("value")||"",this._syncFormValue();break;case"label":this._applyLabel()}}applyDisabled(t){this._input.disabled=t}_applyLabel(){const t=this.getAttribute("label");t?this._input.setAttribute("aria-label",t):this._input.removeAttribute("aria-label")}_syncFormValue(){this.setFormValue(this._input.value)}resetValue(){this._input.value=this.getAttribute("value")||"",this._syncFormValue()}get value(){return this._input?this._input.value:this._pendingValue??this.getAttribute("value")??""}set value(t){const e=null==t?"":String(t);this._input?(this._input.value=e,this._syncFormValue()):this._pendingValue=e}}customElements.define("glk-search",ht);class pt extends w{static get observedAttributes(){return["checked","label","name","value","required"]}static get hostStyles(){return m}render(){const t=this.createElement("label",["glass-toggle"]);this._input=this.createElement("input",["glass-toggle__input"],{type:"checkbox",role:"switch"});const e=this.getAttribute("name");e&&this._input.setAttribute("name",e);const s=this.createElement("span",["glass-toggle__track"]),r=this.createElement("span",["glass-toggle__thumb"]);s.appendChild(r),this._labelEl=this.createElement("span",["glass-toggle__label"]),this._labelEl.textContent=this.getAttribute("label")||"",t.appendChild(this._input),t.appendChild(s),t.appendChild(this._labelEl),this.getBoolAttr("checked")&&(this._input.checked=!0),this.getBoolAttr("required")&&(this._input.required=!0),this._defaultChecked=this.getBoolAttr("checked"),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onChange=()=>{this._syncing=!0,this.setBoolAttr("checked",this._input.checked),this._syncing=!1,this._syncFormValue(),this.emit("glk-change",{checked:this._input.checked}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._input.addEventListener("change",this._onChange),this._unforwardClicks=y(this,()=>this._input)}teardownEvents(){this._input?.removeEventListener("change",this._onChange),this._unforwardClicks?.()}onAttributeChanged(t){if(!this._syncing&&this._input)switch(t){case"checked":this._input.checked=this.getBoolAttr("checked"),this._syncFormValue();break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"required":this._input.required=this.getBoolAttr("required")}}applyDisabled(t){this._input.disabled=t}get _validityField(){return this._input}_syncFormValue(){const t=this.getAttribute("value")||"on";this.setFormValue(this._input.checked?t:null)}resetValue(){this._input.checked=this._defaultChecked,this.setBoolAttr("checked",this._defaultChecked),this._syncFormValue()}restoreValue(t){t&&(this._input.checked=!0,this.setBoolAttr("checked",!0))}get checked(){return this._input?this._input.checked:this.getBoolAttr("checked")}set checked(t){this._input&&(this._input.checked=t),this.setBoolAttr("checked",t),this._input&&this._syncFormValue()}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}get value(){return this.getAttribute("value")||"on"}set value(t){this.setAttribute("value",t)}get label(){return this.getAttribute("label")}set label(t){this.setAttribute("label",t)}}customElements.define("glk-toggle",pt);class ut extends w{static get observedAttributes(){return["checked","label","name","value","required"]}static get hostStyles(){return m}render(){const t=this.createElement("label",["glass-checkbox"]);this._input=this.createElement("input",["glass-checkbox__input"],{type:"checkbox"});const e=this.getAttribute("name");e&&this._input.setAttribute("name",e);const s=this.createElement("span",["glass-checkbox__box"]);s.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>',this._labelEl=this.createElement("span",["glass-checkbox__label"]),this._labelEl.textContent=this.getAttribute("label")||"",t.appendChild(this._input),t.appendChild(s),t.appendChild(this._labelEl),this.getBoolAttr("checked")&&(this._input.checked=!0),this.getBoolAttr("required")&&(this._input.required=!0),this._defaultChecked=this.getBoolAttr("checked"),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onChange=()=>{this._syncing=!0,this.setBoolAttr("checked",this._input.checked),this._syncing=!1,this._syncFormValue(),this.emit("glk-change",{checked:this._input.checked}),this.dispatchEvent(new Event("change",{bubbles:!0}))},this._input.addEventListener("change",this._onChange),this._unforwardClicks=y(this,()=>this._input)}teardownEvents(){this._input?.removeEventListener("change",this._onChange),this._unforwardClicks?.()}onAttributeChanged(t){if(!this._syncing&&this._input)switch(t){case"checked":this._input.checked=this.getBoolAttr("checked"),this._syncFormValue();break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"");break;case"required":this._input.required=this.getBoolAttr("required")}}applyDisabled(t){this._input.disabled=t}get _validityField(){return this._input}_syncFormValue(){const t=this.getAttribute("value")||"on";this.setFormValue(this._input.checked?t:null)}resetValue(){this._input.checked=this._defaultChecked,this.setBoolAttr("checked",this._defaultChecked),this._syncFormValue()}get checked(){return this._input?this._input.checked:this.getBoolAttr("checked")}set checked(t){this._input&&(this._input.checked=t),this.setBoolAttr("checked",t),this._input&&this._syncFormValue()}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}get value(){return this.getAttribute("value")||"on"}set value(t){this.setAttribute("value",t)}}customElements.define("glk-checkbox",ut);const bt={ArrowDown:1,ArrowRight:1,ArrowUp:-1,ArrowLeft:-1};function _t(t){return(void 0!==t.form?t.form:t.closest("form"))??null}function vt(t){const e=t.filter(t=>!t._actuallyDisabled);if(!e.length)return;const s=e.find(t=>t.checked)||e[0];for(const e of t)e._input&&(e._input.tabIndex=e===s?0:-1)}class mt extends w{static get observedAttributes(){return["checked","label","name","value","required"]}static get hostStyles(){return m}render(){const t=this.createElement("label",["glass-radio"]);this._input=this.createElement("input",["glass-radio__input"],{type:"radio"});const e=this.getAttribute("name");e&&this._input.setAttribute("name",e);const s=this.getAttribute("value");s&&this._input.setAttribute("value",s);const r=this.createElement("span",["glass-radio__circle"]),a=this.createElement("span",["glass-radio__dot"]);r.appendChild(a),this._labelEl=this.createElement("span",["glass-radio__label"]),this._labelEl.textContent=this.getAttribute("label")||"",t.appendChild(this._input),t.appendChild(r),t.appendChild(this._labelEl),this.getBoolAttr("checked")&&(this._input.checked=!0),this._defaultChecked=this.getBoolAttr("checked"),this._wrapper.appendChild(t),this._syncFormValue(),this._input.checked&&this._uncheckPeers(),vt(this._group())}setupEvents(){this._onChange=()=>this._applyChange(),this._onKeyDown=t=>{const e=bt[t.key];if(!e||t.ctrlKey||t.metaKey||t.altKey)return;const s=this._group().filter(t=>!t._actuallyDisabled);if(s.length<2)return;t.preventDefault();const r=s[(s.indexOf(this)+e+s.length)%s.length];r._input.focus(),r._input.checked=!0,r._applyChange()},this._input.addEventListener("change",this._onChange),this._input.addEventListener("keydown",this._onKeyDown),this._unforwardClicks=y(this,()=>this._input)}teardownEvents(){this._input?.removeEventListener("change",this._onChange),this._input?.removeEventListener("keydown",this._onKeyDown),this._unforwardClicks?.()}_applyChange(){this._input.checked&&this._uncheckPeers(),this._syncing=!0,this.setBoolAttr("checked",this._input.checked),this._syncing=!1,this._syncFormValue(),vt(this._group()),this.emit("glk-change",{checked:this._input.checked,value:this._input.value}),this.dispatchEvent(new Event("change",{bubbles:!0}))}_group(){const t=this.getAttribute("name"),e=this.getRootNode();if(!t||"function"!=typeof e?.querySelectorAll)return[this];const s=_t(this);return[...e.querySelectorAll("glk-radio")].filter(e=>e.getAttribute("name")===t&&_t(e)===s)}_uncheckPeers(){for(const t of this._group())t!==this&&t.checked&&(t.checked=!1)}get _validityField(){return this._input}syncValidity(){const t=this._group(),e=t.some(t=>t.hasAttribute("required"))&&!t.some(t=>t.checked);for(const s of t)s._input&&(s._input.required=e,super.syncValidity.call(s))}onAttributeChanged(t){if(!this._syncing&&this._input)switch(t){case"checked":this._input.checked=this.getBoolAttr("checked"),this._input.checked&&this._uncheckPeers(),this._syncFormValue(),vt(this._group());break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||""),vt(this._group());break;case"value":this._input.setAttribute("value",this.getAttribute("value")||""),this._syncFormValue()}}applyDisabled(t){this._input.disabled=t,vt(this._group())}_syncFormValue(){const t=this.getAttribute("value")||"";this.setFormValue(this._input.checked?t:null)}resetValue(){this._input.checked=this._defaultChecked,this.setBoolAttr("checked",this._defaultChecked),this._syncFormValue(),vt(this._group())}get checked(){return this._input?this._input.checked:this.getBoolAttr("checked")}set checked(t){this._input&&(this._input.checked=t),t&&this._uncheckPeers(),this.setBoolAttr("checked",t),this._input&&this._syncFormValue(),vt(this._group())}get name(){return this.getAttribute("name")}set name(t){this.setAttribute("name",t)}get value(){return this.getAttribute("value")}set value(t){this.setAttribute("value",t)}}customElements.define("glk-radio",mt);class ft extends w{static get observedAttributes(){return["label","min","max","value","step","name"]}render(){const t=this.createElement("div",["glass-range-group"]),e=this.createElement("div",["glass-range-header"]);this._labelEl=this.createElement("label",[],{for:"field"}),this._labelEl.textContent=this.getAttribute("label")||"",this._valueEl=this.createElement("span",["glass-range-value"]),e.appendChild(this._labelEl),e.appendChild(this._valueEl),this._input=this.createElement("input",["glass-range"],{id:"field",type:"range",min:this.getAttribute("min")||"0",max:this.getAttribute("max")||"100",value:this.getAttribute("value")||"50"});const s=this.getAttribute("step");s&&this._input.setAttribute("step",s);const r=this.getAttribute("name");r&&this._input.setAttribute("name",r),this._defaultValue=this._input.value,void 0!==this._pendingValue&&(this._input.value=this._pendingValue),this._pendingValue=void 0,this._updateValueDisplay(),t.appendChild(e),t.appendChild(this._input),this._wrapper.appendChild(t),this._syncFormValue()}setupEvents(){this._onInput=()=>{this._updateValueDisplay(),this._syncFormValue(),this.emit("glk-input",{value:this._input.value}),this.dispatchEvent(new Event("input",{bubbles:!0}))},this._input.addEventListener("input",this._onInput)}teardownEvents(){this._input?.removeEventListener("input",this._onInput)}onAttributeChanged(t){if(this._input)switch(t){case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"min":this._input.min=this.getAttribute("min")||"0";break;case"max":this._input.max=this.getAttribute("max")||"100";break;case"value":this._input.value=this.getAttribute("value")||"50",this._updateValueDisplay(),this._syncFormValue();break;case"step":this._input.step=this.getAttribute("step")||"";break;case"name":this._input.setAttribute("name",this.getAttribute("name")||"")}}applyDisabled(t){this._input.disabled=t}_updateValueDisplay(){this._valueEl.textContent=`${this._input.value}%`}_syncFormValue(){this.setFormValue(this._input.value)}resetValue(){this._input.value=this._defaultValue,this._updateValueDisplay(),this._syncFormValue()}get value(){return this._input?this._input.value:this._pendingValue??this.getAttribute("value")??"50"}set value(t){const e=null==t?"":String(t);this._input?(this._input.value=e,this._updateValueDisplay(),this._syncFormValue()):this._pendingValue=e}}customElements.define("glk-range",ft);const xt=["success","warning","error"],yt=["scroll","wrap"];function kt(t){try{const e=JSON.parse(t||"[]");return Array.isArray(e)?e:[]}catch{return[]}}class wt extends w{static get observedAttributes(){return["options","value","full","overflow","label"]}static get delegatesFocus(){return!1}render(){this._group=this.createElement("div",["glass-segmented"],{role:"group",part:"group"}),this._wrapper.appendChild(this._group),this._initialValue=this.value,this._build(),this._applyLayout(),this._applyLabel()}_build(){this._group.replaceChildren();for(const t of kt(this.getAttribute("options"))){const e=String(t.value??""),s=this.createElement("button",["glass-segmented__item"],{type:"button","data-value":e});xt.includes(t.tone)&&(s.classList.add(`glass-segmented__item--${t.tone}`),s.appendChild(this.createElement("span",["glass-segmented__dot"]))),s.appendChild(document.createTextNode(t.label??e)),this._group.appendChild(s)}this.applyDisabled(this._actuallyDisabled),this._syncValue()}applyDisabled(t){const e=this.options;this._group.querySelectorAll("button[data-value]").forEach((s,r)=>{s.disabled=t||Boolean(e[r]?.disabled)})}_syncValue(){const t=this.value;for(const e of this._group.querySelectorAll("button[data-value]"))e.setAttribute("aria-pressed",String(e.dataset.value===t));this.setFormValue(t),this._reveal(this._revealedAt?"smooth":"instant")}_applyLayout(){const t=this.overflow;this._group.classList.toggle("glass-segmented--full",this.getBoolAttr("full"));for(const e of yt)this._group.classList.toggle(`glass-segmented--${e}`,t===e);this._reveal("instant")}_reveal(t){if("scroll"!==this.overflow)return;const e=this._group.querySelector('[aria-pressed="true"]');R(this._group,e,"smooth"===t)&&(this._revealedAt=this._group.clientWidth)}_applyLabel(){const t=this.getAttribute("label");t?this._group.setAttribute("aria-label",t):this._group.removeAttribute("aria-label")}setupEvents(){this._onClick=t=>{const e=t.target.closest("button[data-value]");if(!e||e.disabled)return;const{value:s}=e.dataset;s!==this.value&&(this.value=s,this.emit("glk-change",{value:s}))},this._onResize=()=>{this._group.clientWidth!==this._revealedAt&&this._reveal("instant")},this._group.addEventListener("click",this._onClick),this._resizeObserver=new ResizeObserver(this._onResize),this._resizeObserver.observe(this._group)}teardownEvents(){this._group?.removeEventListener("click",this._onClick),this._resizeObserver?.disconnect(),this._resizeObserver=null}onAttributeChanged(t){if(this._group)switch(t){case"value":this._syncValue();break;case"options":this._build();break;case"full":case"overflow":this._applyLayout();break;case"label":this._applyLabel()}}resetValue(){this.value=this._initialValue}restoreValue(t){"string"==typeof t&&(this.value=t)}get value(){return this.getAttribute("value")??""}set value(t){null==t?this.removeAttribute("value"):this.setAttribute("value",String(t))}get options(){return kt(this.getAttribute("options"))}set options(t){this.setAttribute("options","string"==typeof t?t:JSON.stringify(t??[]))}get full(){return this.getBoolAttr("full")}set full(t){this.setBoolAttr("full",t)}get overflow(){const t=this.getAttribute("overflow");return yt.includes(t)?t:""}set overflow(t){t?this.setAttribute("overflow",String(t)):this.removeAttribute("overflow")}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}}customElements.define("glk-segmented",wt);const At={ArrowLeft:-1,ArrowRight:1,ArrowUp:-7,ArrowDown:7},Et=/^\d{4}-\d{2}$/;function Ct(t){return(Array.isArray(t)?t:[t]).filter(H).slice(0,3)}class Lt extends w{static get observedAttributes(){return["month","value","today","min","max","marks","locale","week-start","label","prev-label","next-label"]}static get delegatesFocus(){return!1}render(){this._root=this.createElement("div",["glass-calendar"],{part:"calendar"});const t=this.createElement("div",["glass-calendar__head"],{part:"head"});this._prev=this.createElement("button",["glass-calendar__nav"],{type:"button"}),this._prev.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M15 6l-6 6 6 6"/></svg>',this._title=this.createElement("div",["glass-calendar__title"],{part:"title","aria-live":"polite"}),this._next=this.createElement("button",["glass-calendar__nav"],{type:"button"}),this._next.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M9 6l6 6-6 6"/></svg>',t.append(this._prev,this._title,this._next),this._grid=this.createElement("div",["glass-calendar__grid"],{role:"group",part:"grid"}),this._root.append(t,this._grid),this._wrapper.appendChild(this._root),this._initialValue=this.value,this._applyLabels(),this._build()}get _todayIso(){return this.getAttribute("today")||D(new Date)}_build(){const t=q(this.getAttribute("locale"),this),e=I(t),s=this.month,r=j(s),a=this.hasAttribute("week-start")?Number(this.getAttribute("week-start")):NaN;this._weekStart=Number.isInteger(a)&&a>=0&&a<=6?a:function(t){try{const e=new Intl.Locale(t),s="function"==typeof e.getWeekInfo?e.getWeekInfo():e.weekInfo;if(s&&s.firstDay>=1&&s.firstDay<=7)return s.firstDay%7}catch{}return 1}(t);const i=O(this.getAttribute("marks")),l=this._todayIso,o=this.getAttribute("min")||"",n=this.getAttribute("max")||"";this._shown=s,this._title.textContent=e.month.format(r),this._grid.replaceChildren();const g=(r.getDay()-this._weekStart+7)%7;for(let t=0;t<7;t+=1){const s=this.createElement("span",["glass-calendar__wd"],{"aria-hidden":"true"});s.textContent=G(e,M(r,t-g)),this._grid.appendChild(s)}for(let t=0;t<42;t+=1){const s=M(r,t-g),a=D(s),c=this.createElement("button",["glass-calendar__day"],{type:"button","data-value":a,"aria-label":e.day.format(s)});s.getMonth()!==r.getMonth()&&c.classList.add("glass-calendar__day--other"),a===l&&c.classList.add("glass-calendar__day--today"),(o&&a<o||n&&a>n)&&c.setAttribute("aria-disabled","true");const d=this.createElement("span");d.textContent=String(s.getDate());const h=this.createElement("span",["glass-calendar__marks"]);for(const t of Ct(i[a]))h.appendChild(this.createElement("span",["glass-calendar__mark",`glass-calendar__mark--${t}`]));c.append(d,h),this._grid.appendChild(c)}this.applyDisabled(this._actuallyDisabled),this._syncValue()}applyDisabled(t){for(const e of[this._prev,this._next,...this._days()])e.disabled=t}_days(){return[...this._grid.querySelectorAll("button[data-value]")]}_dayFor(t){return this._grid.querySelector(`button[data-value="${t}"]`)}_syncValue(){const t=this.value;let e=null;for(const s of this._days()){const r=s.dataset.value===t;s.setAttribute("aria-pressed",String(r)),r&&(e=s)}const s=this._todayIso,r=s.startsWith(this._shown)?this._dayFor(s):this._dayFor(`${this._shown}-01`);this._setTabStop(e??r??this._days()[0]),this.setFormValue(t)}_setTabStop(t){for(const e of this._days())e.tabIndex=e===t?0:-1}_applyLabels(){const t=this.getAttribute("label");t?this._grid.setAttribute("aria-label",t):this._grid.removeAttribute("aria-label"),this._prev.setAttribute("aria-label",this.getAttribute("prev-label")||"Previous month"),this._next.setAttribute("aria-label",this.getAttribute("next-label")||"Next month")}_show(t){this.month=t,this.emit("glk-month",{month:t})}_shift(t){const e=j(this.month),s=new Date(e.getFullYear(),e.getMonth()+t,1);this._show(D(s).slice(0,7))}_focusDay(t){const e=D(t);e.startsWith(this._shown)||this._show(e.slice(0,7));const s=this._dayFor(e);s&&(this._setTabStop(s),s.focus())}_pick(t){t!==this.value&&(this.value=t,this.emit("glk-change",{value:t}))}setupEvents(){this._onPrev=()=>this._shift(-1),this._onNext=()=>this._shift(1),this._onClick=t=>{const e=t.target.closest("button[data-value]");e&&(this._setTabStop(e),"true"!==e.getAttribute("aria-disabled")&&this._pick(e.dataset.value))},this._onKeydown=t=>{const e=t.target.closest("button[data-value]");if(!e)return;const s=j(e.dataset.value),r=(s.getDay()-this._weekStart+7)%7;let a;if(t.key in At)a=M(s,At[t.key]);else if("Home"===t.key)a=M(s,-r);else if("End"===t.key)a=M(s,6-r);else{if("PageUp"!==t.key&&"PageDown"!==t.key)return;{const e="PageUp"===t.key?-1:1,r=new Date(s.getFullYear(),s.getMonth()+e+1,0).getDate();a=new Date(s.getFullYear(),s.getMonth()+e,Math.min(s.getDate(),r))}}t.preventDefault(),this._focusDay(a)},this._prev.addEventListener("click",this._onPrev),this._next.addEventListener("click",this._onNext),this._grid.addEventListener("click",this._onClick),this._grid.addEventListener("keydown",this._onKeydown)}teardownEvents(){this._prev?.removeEventListener("click",this._onPrev),this._next?.removeEventListener("click",this._onNext),this._grid?.removeEventListener("click",this._onClick),this._grid?.removeEventListener("keydown",this._onKeydown)}onAttributeChanged(t){if(this._grid)switch(t){case"value":{const t=this.value;t&&!t.startsWith(this._shown)?this.month=t.slice(0,7):this._syncValue();break}case"label":case"prev-label":case"next-label":this._applyLabels();break;default:this._build()}}resetValue(){this.value=this._initialValue}restoreValue(t){"string"==typeof t&&(this.value=t)}get month(){const t=this.getAttribute("month");if(t&&Et.test(t)&&j(t))return t;const e=this.value;return(e&&j(e)?e:this._todayIso).slice(0,7)}set month(t){t&&Et.test(String(t))?this.setAttribute("month",String(t)):this.removeAttribute("month")}get value(){return this.getAttribute("value")??""}set value(t){null==t||""===t?this.removeAttribute("value"):this.setAttribute("value",String(t))}get marks(){return O(this.getAttribute("marks"))}set marks(t){this.setAttribute("marks","string"==typeof t?t:JSON.stringify(t??{}))}get locale(){return q(this.getAttribute("locale"),this)}set locale(t){t?this.setAttribute("locale",t):this.removeAttribute("locale")}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}}customElements.define("glk-calendar",Lt);function zt(t){const e=t.slice(t.indexOf(",")+1),s=e.endsWith("==")?2:e.endsWith("=")?1:0;return Math.floor(3*e.length/4)-s}class St extends k{static get observedAttributes(){return["src","label","hint","round","max","type","quality","accept","choose-label","change-label","remove-label"]}constructor(){super(),this._src=""}render(){this._src=this.getAttribute("src")||"",this._root=this.createElement("div",["glass-image-picker"],{part:"picker",role:"group"}),this._preview=this.createElement("div",["glass-image-picker__preview"],{part:"preview"});const t=this.createElement("div",["glass-image-picker__meta"],{part:"meta"});this._label=this.createElement("span",["glass-image-picker__label"],{part:"label",id:"label"}),this._hint=this.createElement("span",["glass-image-picker__hint"],{part:"hint",id:"hint"});const e=this.createElement("div",["glass-image-picker__actions"],{part:"actions"});this._choose=this.createElement("button",["glass-btn","glass-btn--secondary","glass-btn--sm","glass-btn--auto"],{type:"button"}),this._remove=this.createElement("button",["glass-btn","glass-btn--tertiary","glass-btn--sm","glass-btn--auto"],{type:"button"}),this._input=this.createElement("input",[],{type:"file",tabindex:"-1"}),this._input.hidden=!0,e.append(this._choose,this._remove,this._input),t.append(this._label,this._hint,e),this._root.append(this._preview,t),this._wrapper.appendChild(this._root),this._update()}get _max(){return Math.max(1,Math.floor(Number(this.getAttribute("max")))||1024)}get _type(){return this.getAttribute("type")||"image/jpeg"}get _quality(){const t=Number(this.getAttribute("quality"));return this.hasAttribute("quality")&&t>=0&&t<=1?t:.82}_update(){if(!this._root)return;const t=this.getAttribute("label")||"",e=this.getAttribute("hint")||"";this._preview.classList.toggle("glass-image-picker__preview--round",this.getBoolAttr("round")),this._src?this._img&&this._img.getAttribute("src")===this._src||(this._img=this.createElement("img",[],{alt:"",src:this._src}),this._preview.replaceChildren(this._img)):(this._img=null,this._preview.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><rect x="3" y="5" width="18" height="14" rx="2"/><circle cx="9" cy="10" r="2"/><path d="M21 15l-5-4-8 8"/></svg>'),this._label.textContent=t,this._label.hidden=!t,this._hint.textContent=e,this._hint.hidden=!e,t?this._root.setAttribute("aria-labelledby","label"):this._root.removeAttribute("aria-labelledby"),e?this._root.setAttribute("aria-describedby","hint"):this._root.removeAttribute("aria-describedby"),this._choose.textContent=this._src?this.getAttribute("change-label")||"Change":this.getAttribute("choose-label")||"Choose",this._remove.textContent=this.getAttribute("remove-label")||"Remove",this._remove.hidden=!this._src,this._input.accept=this.getAttribute("accept")||"image/*"}async _pick(t){if(t)try{const e=await createImageBitmap(t,{imageOrientation:"from-image"}),s=Math.min(1,this._max/Math.max(e.width,e.height)),r=document.createElement("canvas");r.width=Math.max(1,Math.round(e.width*s)),r.height=Math.max(1,Math.round(e.height*s));const a=r.getContext("2d");"image/jpeg"===this._type&&(a.fillStyle="#fff",a.fillRect(0,0,r.width,r.height)),a.drawImage(e,0,0,r.width,r.height),e.close();const i=r.toDataURL(this._type,this._quality);this.src=i,this.emit("glk-change",{dataUrl:i,width:r.width,height:r.height,size:zt(i)})}catch(e){this.emit("glk-error",{message:e?.message||String(e),name:t.name})}}setupEvents(){this._onChoose=()=>this._input.click(),this._onChange=t=>{const e=t.target.files?.[0];t.target.value="",this._pick(e)},this._onRemove=()=>{this.src="",this._choose.focus(),this.emit("glk-change",{dataUrl:"",width:0,height:0,size:0})},this._choose.addEventListener("click",this._onChoose),this._input.addEventListener("change",this._onChange),this._remove.addEventListener("click",this._onRemove)}teardownEvents(){this._choose?.removeEventListener("click",this._onChoose),this._input?.removeEventListener("change",this._onChange),this._remove?.removeEventListener("click",this._onRemove)}onAttributeChanged(t,e,s){"src"===t&&(this._src=s||""),this._update()}get src(){return this._src}set src(t){this._src=t||"",this._update()}get label(){return this.getAttribute("label")||""}set label(t){t?this.setAttribute("label",t):this.removeAttribute("label")}get round(){return this.getBoolAttr("round")}set round(t){this.setBoolAttr("round",t)}}customElements.define("glk-image-picker",St);const Bt=["success","error"],Vt=["sm","lg"];class Tt extends k{static get observedAttributes(){return["value","label","variant","size"]}render(){this._container=this.createElement("div",this._computeClasses());const t=this.createElement("div",["glass-progress__header"]);this._labelEl=this.createElement("span",["glass-progress__label"]),this._labelEl.textContent=this.getAttribute("label")||"",this._valueEl=this.createElement("span",["glass-progress__value"]),t.appendChild(this._labelEl),t.appendChild(this._valueEl);const e=this.createElement("div",["glass-progress__track"]);this._fill=this.createElement("div",["glass-progress__fill"]),e.appendChild(this._fill),this._container.appendChild(t),this._container.appendChild(e),this._updateValue(),this._wrapper.appendChild(this._container)}onAttributeChanged(t){if(this._container)switch(t){case"value":this._updateValue();break;case"label":this._labelEl.textContent=this.getAttribute("label")||"";break;case"variant":case"size":this._container.className=this._computeClasses().join(" ")}}_updateValue(){const t=Math.min(100,Math.max(0,parseInt(this.getAttribute("value")||"0",10)));this._fill.style.width=`${t}%`,this._valueEl.textContent=`${t}%`}_computeClasses(){const t=["glass-progress"],e=this.getAttribute("variant");e&&Bt.includes(e)&&t.push(`glass-progress--${e}`);const s=this.getAttribute("size");return s&&Vt.includes(s)&&t.push(`glass-progress--${s}`),t}get value(){return this.getAttribute("value")}set value(t){this.setAttribute("value",String(t))}}customElements.define("glk-progress",Tt);class Ft extends k{static get observedAttributes(){return["open","title"]}static get observesLightDom(){return!0}render(){this._overlay=this.createElement("dialog",["glass-modal-overlay"],{part:"overlay"});const t=this.createElement("div",["glass-modal"],{part:"modal"}),e=this.createElement("div",["glass-modal__header"],{part:"header"});this._titleEl=this.createElement("h2",["glass-modal__title"],{id:"title"}),this.takeTitle(),this._applyTitle(),e.appendChild(this._titleEl);const s=this.createElement("div",["glass-modal__body"],{part:"body"});s.appendChild(document.createElement("slot")),this._footer=this.createElement("div",["glass-modal__footer"],{part:"footer"}),t.appendChild(e),t.appendChild(s),t.appendChild(this._footer),requestAnimationFrame(()=>this.projectLightDom()),this._overlay.appendChild(t),this._wrapper.appendChild(this._overlay)}projectLightDom(){const t=[...this.querySelectorAll('[slot="actions"] button')],e=t.map(t=>t.outerHTML).join("");e!==this._footerSignature&&(this._footerSignature=e,this._footer.innerHTML="",t.forEach((t,e)=>{const s=t.cloneNode(!0);s.addEventListener("click",()=>{this.querySelectorAll('[slot="actions"] button')[e]?.click()}),this._footer.appendChild(s)}))}setupEvents(){this._onOverlayClick=t=>{t.target===this._overlay&&this._dismiss()},this._overlay.addEventListener("click",this._onOverlayClick),this._onCancel=t=>{t.preventDefault(),this._dismiss()},this._overlay.addEventListener("cancel",this._onCancel),this._onClose=()=>{this._overlay.open||(this._overlay.classList.remove("is-active"),this.open&&this._dismiss())},this._overlay.addEventListener("close",this._onClose),this.open&&this._show()}teardownEvents(){this._overlay?.removeEventListener("click",this._onOverlayClick),this._overlay?.removeEventListener("cancel",this._onCancel),this._overlay?.removeEventListener("close",this._onClose),clearTimeout(this._closeTimer),this._overlay?.removeEventListener("transitionend",this._onFaded),this._overlay?.classList.remove("is-active"),this._overlay?.open&&this._overlay.close()}onAttributeChanged(t,e,s){if(this._overlay)switch(t){case"open":if(!this.isConnected)return;this.open?this._show():this._hide();break;case"title":this.takeTitle(s)&&this._applyTitle()}}_show(){const t=this._overlay;clearTimeout(this._closeTimer),t.removeEventListener("transitionend",this._onFaded),t.open||(t.showModal(),(this._footer.querySelector("[autofocus]")||this.querySelector("[autofocus]"))?.focus()),t.offsetHeight,requestAnimationFrame(()=>{this.open&&t.classList.add("is-active")})}_hide(){const t=this._overlay;t.classList.remove("is-active"),this._onFaded=e=>{e&&e.target!==t||(clearTimeout(this._closeTimer),t.removeEventListener("transitionend",this._onFaded),!this.open&&t.open&&t.close())},!t.open||"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches?this._onFaded():(t.addEventListener("transitionend",this._onFaded),this._closeTimer=setTimeout(this._onFaded,400))}_dismiss(){this.removeAttribute("open"),this.emit("glk-close")}show(){this.setAttribute("open","")}close(){this.removeAttribute("open")}_applyTitle(){this._titleEl&&(this._titleEl.textContent=this._title||"",this._title?this._overlay.setAttribute("aria-labelledby","title"):this._overlay.removeAttribute("aria-labelledby"))}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}}customElements.define("glk-modal",Ft);const Dt=["success","error","warning"],jt={success:'<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/><polyline points="22 4 12 14.01 9 11.01"/></svg>',error:'<svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="10"/><line x1="15" y1="9" x2="9" y2="15"/><line x1="9" y1="9" x2="15" y2="15"/></svg>',warning:'<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>'};class Mt extends k{static get observedAttributes(){return["message","variant","duration","visible","action-label","action-value","dismissible","close-label"]}render(){this._toast=this.createElement("div",this._computeClasses(),{role:"status","aria-live":"polite"}),this._iconEl=this.createElement("span",["glass-toast__icon"]),this._iconSlot=this.createElement("slot",[],{name:"icon"}),this._iconEl.appendChild(this._iconSlot),this._textEl=this.createElement("span",["glass-toast__text"]),this._textEl.textContent=this.getAttribute("message")||"",this._actionBtn=this.createElement("button",["glass-toast__action"],{type:"button"}),this._closeBtn=this.createElement("button",["glass-toast__close"],{type:"button"}),this._closeBtn.innerHTML='<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M6 6l12 12M18 6L6 18"/></svg>',this._updateIcon(),this._toast.append(this._iconEl,this._textEl),this._wrapper.appendChild(this._toast),this._syncControls(),this.getBoolAttr("visible")&&this._show()}setupEvents(){this._onClick=t=>{const e=t.composedPath();e.includes(this._closeBtn)?this._close():e.includes(this._actionBtn)&&this._takeAction()},this._onKeydown=t=>{"Escape"===t.key&&this._hasButtons()&&(t.stopPropagation(),this._close())},this._onHold=t=>{"focusin"!==t.type||this._toast.contains(t.relatedTarget)||(this._returnFocus=t.relatedTarget),this._hasButtons()&&(this._held=!0,clearTimeout(this._timer))},this._onRelease=t=>{"focusout"===t.type&&this._toast.contains(t.relatedTarget)||(this._held=this._toast.matches(":hover")||this._toast.contains(this._shadow.activeElement),this._held||this._arm())},this._toast.addEventListener("click",this._onClick),this._toast.addEventListener("keydown",this._onKeydown),this._toast.addEventListener("pointerenter",this._onHold),this._toast.addEventListener("focusin",this._onHold),this._toast.addEventListener("pointerleave",this._onRelease),this._toast.addEventListener("focusout",this._onRelease)}teardownEvents(){clearTimeout(this._timer),this._toast&&(this._toast.removeEventListener("click",this._onClick),this._toast.removeEventListener("keydown",this._onKeydown),this._toast.removeEventListener("pointerenter",this._onHold),this._toast.removeEventListener("focusin",this._onHold),this._toast.removeEventListener("pointerleave",this._onRelease),this._toast.removeEventListener("focusout",this._onRelease))}onAttributeChanged(t){if(this._toast)switch(t){case"message":this._textEl.textContent=this.getAttribute("message")||"";break;case"variant":this._toast.className=this._computeClasses().join(" "),this._updateIcon();break;case"visible":this.getBoolAttr("visible")?this._show():this._hide();break;case"action-label":case"action-value":case"dismissible":case"close-label":this._syncControls()}}_computeClasses(){const t=["glass-toast"],e=this.getAttribute("variant");return e&&Dt.includes(e)&&t.push(`glass-toast--${e}`),this.getBoolAttr("visible")&&t.push("is-visible"),t}_updateIcon(){this._iconSlot.innerHTML=jt[this.getAttribute("variant")]||jt.success}_hasButtons(){return this._actionBtn.isConnected||this._closeBtn.isConnected}_syncControls(){const t=this.getAttribute("action-label");t?(this._actionBtn.textContent=t,this._actionBtn.isConnected||this._textEl.after(this._actionBtn)):this._actionBtn.remove(),t||this.getBoolAttr("dismissible")?this._closeBtn.isConnected||this._toast.appendChild(this._closeBtn):this._closeBtn.remove(),this._closeBtn.setAttribute("aria-label",this.getAttribute("close-label")||"Close"),this._syncInert()}_syncInert(){const t=!this.getBoolAttr("visible");this._actionBtn.inert=t,this._closeBtn.inert=t}_duration(){const t=this.getAttribute("duration");return null!==t&&""!==t.trim()&&Number.isFinite(Number(t))?Number(t):this.getAttribute("action-label")?0:3e3}_arm(){clearTimeout(this._timer);const t=this._duration();t>0&&!this._held&&this.getBoolAttr("visible")&&(this._timer=setTimeout(()=>{this.removeAttribute("visible"),this.emit("glk-dismiss")},t))}_show(){this._toast.classList.add("is-visible"),this._syncInert(),this._arm()}_hide(){if(this._toast.classList.remove("is-visible"),clearTimeout(this._timer),this._held=!1,this._toast.contains(this._shadow.activeElement)){const t=this._returnFocus;t?.isConnected&&t.focus({preventScroll:!0}),this._toast.contains(this._shadow.activeElement)&&this._shadow.activeElement.blur()}this._returnFocus=null,this._syncInert()}_close(){this.removeAttribute("visible"),this.emit("glk-close")}_takeAction(){const t=this.getAttribute("action-label")||"",e=this.getAttribute("action-value")??t,s=this._shown;this.emit("glk-action",{action:e,label:t},{cancelable:!0})&&this._shown===s&&this.removeAttribute("visible")}show(t,e,s){if(this._shown=(this._shown??0)+1,t&&this.setAttribute("message",t),e&&"object"==typeof e){const t=e;"variant"in t&&this._setOrRemove("variant",t.variant),t.action?(this.setAttribute("action-label",String(t.action.label??t.action.value??"")),this._setOrRemove("action-value",t.action.value)):(this.removeAttribute("action-label"),this.removeAttribute("action-value")),"duration"in t?this._setOrRemove("duration",t.duration):t.action&&this.removeAttribute("duration"),"dismissible"in t&&this.setBoolAttr("dismissible",t.dismissible)}else e&&this.setAttribute("variant",e),s&&this.setAttribute("duration",String(s));this.getBoolAttr("visible")?this._show():this.setAttribute("visible","")}_setOrRemove(t,e){null==e||""===e?this.removeAttribute(t):this.setAttribute(t,String(e))}dismiss(){this.removeAttribute("visible")}get dismissible(){return this.getBoolAttr("dismissible")}set dismissible(t){this.setBoolAttr("dismissible",t)}}customElements.define("glk-toast",Mt);const Ot=["top","bottom","start","end"];class qt extends k{static get observedAttributes(){return["open","placement"]}render(){this._anchor=this.createElement("div",["glass-popover-anchor"]),this._triggerSlot=document.createElement("slot"),this._triggerSlot.setAttribute("name","trigger"),this._anchor.appendChild(this._triggerSlot),this._popover=this.createElement("div",["glass-popover"]),this._applyPlacement(),this.getBoolAttr("open")&&this._popover.classList.add("is-open");const t=document.createElement("slot");this._popover.appendChild(t),this._anchor.appendChild(this._popover),this._wrapper.appendChild(this._anchor)}_applyPlacement(){if(!this._popover)return;Ot.forEach(t=>this._popover.classList.remove(`glass-popover--${t}`));const t=this.getAttribute("placement")||"bottom";"bottom"!==t&&Ot.includes(t)&&this._popover.classList.add(`glass-popover--${t}`)}_applyExpanded(){const t=String(this.getBoolAttr("open"));for(const e of this._triggerSlot.assignedElements())e.setAttribute("aria-expanded",t)}setupEvents(){this._onSlotChange=()=>this._applyExpanded(),this._triggerSlot.addEventListener("slotchange",this._onSlotChange),this._applyExpanded(),this._onTriggerClick=t=>{t.composedPath().some(t=>t instanceof Element&&t.getAttribute&&"trigger"===t.getAttribute("slot"))&&(t.stopPropagation(),this.toggle())},this.addEventListener("click",this._onTriggerClick),this._onDocClick=t=>{if(!this.getBoolAttr("open"))return;t.composedPath().includes(this)||this.close()},document.addEventListener("click",this._onDocClick),this._onKeydown=t=>{"Escape"===t.key&&this.getBoolAttr("open")&&this.close()},document.addEventListener("keydown",this._onKeydown)}teardownEvents(){this._triggerSlot?.removeEventListener("slotchange",this._onSlotChange),this.removeEventListener("click",this._onTriggerClick),document.removeEventListener("click",this._onDocClick),document.removeEventListener("keydown",this._onKeydown)}onAttributeChanged(t){if(this._popover)switch(t){case"open":{const t=this.getBoolAttr("open");this._popover.classList.toggle("is-open",t),this._applyExpanded(),this.emit(t?"glk-open":"glk-close");break}case"placement":this._applyPlacement()}}show(){this.setAttribute("open","")}close(){this.removeAttribute("open")}toggle(){this.getBoolAttr("open")?this.close():this.show()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}get placement(){return this.getAttribute("placement")||"bottom"}set placement(t){Ot.includes(t)&&this.setAttribute("placement",t)}}customElements.define("glk-popover",qt);class Nt extends k{static get observedAttributes(){return["open","inline","title"]}render(){this._overlay=this.createElement("div",[],{part:"overlay"}),this._panel=this.createElement("div",["glass-sheet"],{role:"dialog",part:"sheet"}),this._panel.appendChild(this.createElement("div",["glass-sheet__grip"],{"aria-hidden":"true"})),this._titleEl=this.createElement("h2",["glass-sheet__title"],{part:"title"});const t=this.createElement("div",["glass-sheet__body"],{part:"body"});t.appendChild(document.createElement("slot"));const e=this.createElement("div",["glass-sheet__actions"],{part:"actions"});e.appendChild(this.createElement("slot",[],{name:"actions"})),this._panel.append(this._titleEl,t,e),this._overlay.appendChild(this._panel),this._wrapper.appendChild(this._overlay),this.takeTitle(),this._applyTitle(),this._applyMode()}_applyTitle(){if(!this._titleEl)return;const t=this._title||"";this._titleEl.textContent=t,this._titleEl.hidden=!t,t?this._panel.setAttribute("aria-label",t):this._panel.removeAttribute("aria-label")}_applyMode(){const t=this.inline;this._overlay.classList.toggle("glass-sheet-overlay",!t),this._panel.classList.toggle("glass-sheet--inline",t),this._panel.setAttribute("aria-modal",String(!t)),clearTimeout(this._hideTimer),t?(this._overlay.classList.remove("is-active"),this._overlay.hidden=!1):this.open?this._show():(this._overlay.classList.remove("is-active"),this._overlay.hidden=!0)}_show(){clearTimeout(this._hideTimer),this._panel.removeEventListener("transitionend",this._onHidden),this._overlay.hidden=!1,this._overlay.offsetHeight,requestAnimationFrame(()=>{this.open&&!this.inline&&this._overlay.classList.add("is-active")})}_hide(){this._overlay.classList.remove("is-active"),this._onHidden=()=>{clearTimeout(this._hideTimer),this._panel.removeEventListener("transitionend",this._onHidden),this.open||this.inline||(this._overlay.hidden=!0)},"function"==typeof matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches?this._onHidden():(this._panel.addEventListener("transitionend",this._onHidden),this._hideTimer=setTimeout(this._onHidden,400))}_dismiss(){this.removeAttribute("open"),this.emit("glk-close")}setupEvents(){this._onOverlayClick=t=>{this.inline||t.target!==this._overlay||this._dismiss()},this._onKeydown=t=>{"Escape"===t.key&&this.open&&!this.inline&&this._dismiss()},this._overlay.addEventListener("click",this._onOverlayClick),document.addEventListener("keydown",this._onKeydown)}teardownEvents(){this._overlay?.removeEventListener("click",this._onOverlayClick),document.removeEventListener("keydown",this._onKeydown)}onAttributeChanged(t,e,s){if(this._overlay)switch(t){case"open":if(this.inline)return;this.open?this._show():this._hide();break;case"inline":this._applyMode();break;case"title":this.takeTitle(s)&&this._applyTitle()}}show(){this.setAttribute("open","")}close(){this.removeAttribute("open")}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}get inline(){return this.getBoolAttr("inline")}set inline(t){this.setBoolAttr("inline",t)}}customElements.define("glk-sheet",Nt);class It extends k{render(){const t=this.createElement("div",["glass-accordion"]);t.appendChild(document.createElement("slot")),this._wrapper.appendChild(t)}}customElements.define("glk-accordion",It);class Gt extends k{static get observedAttributes(){return["title","open"]}render(){this._item=this.createElement("div",["glass-accordion__item"]),this._trigger=this.createElement("button",["glass-accordion__trigger"],{type:"button","aria-controls":"content"}),this.takeTitle(),this._triggerText=document.createTextNode(this._title||""),this._trigger.appendChild(this._triggerText),this._trigger.insertAdjacentHTML("beforeend",'<span class="glass-accordion__trigger-icon"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><polyline points="6 9 12 15 18 9"/></svg></span>'),this._content=this.createElement("div",["glass-accordion__content"],{id:"content"});const t=this.createElement("div",["glass-accordion__body"]);t.appendChild(document.createElement("slot")),this._content.appendChild(t),this._item.appendChild(this._trigger),this._item.appendChild(this._content),this._wrapper.appendChild(this._item),this._applyOpen()}_applyOpen(){const t=this.getBoolAttr("open");this._item.classList.toggle("is-open",t),this._trigger.setAttribute("aria-expanded",String(t)),this._content.inert=!t}setupEvents(){this._onClick=()=>{this.setBoolAttr("open",!this.getBoolAttr("open")),this.emit("glk-toggle",{open:this.getBoolAttr("open")})},this._trigger.addEventListener("click",this._onClick)}teardownEvents(){this._trigger?.removeEventListener("click",this._onClick)}onAttributeChanged(t,e,s){if(this._item)switch(t){case"open":this._applyOpen();break;case"title":this.takeTitle(s)&&this._applyTitle()}}_applyTitle(){this._triggerText&&(this._triggerText.textContent=this._title||"")}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get open(){return this.getBoolAttr("open")}set open(t){this.setBoolAttr("open",t)}}customElements.define("glk-accordion-item",Gt);class Ht extends k{static get observedAttributes(){return["flush","bare","header"]}render(){this._header=this.createElement("div",["glass-list__section-header"],{part:"header"});const t=this.getAttribute("header")||"";this._header.textContent=t,this._header.hidden=!t,this._wrapper.appendChild(this._header),this._ul=this.createElement("ul",["glass-list"],{part:"list"}),this.getBoolAttr("flush")&&this._ul.classList.add("glass-list--flush"),this.getBoolAttr("bare")&&this._ul.classList.add("glass-list--bare"),this._ul.appendChild(document.createElement("slot")),this._wrapper.appendChild(this._ul)}setupEvents(){this._syncLast(),this._mutObserver=new MutationObserver(()=>this._syncLast()),this._mutObserver.observe(this,{childList:!0})}teardownEvents(){this._mutObserver?.disconnect()}_syncLast(){const t=this.querySelectorAll(":scope > glk-list-item"),e=t.length-1;t.forEach((t,s)=>{s===e?t.setAttribute("data-last",""):t.removeAttribute("data-last")})}onAttributeChanged(t){if(this._ul)switch(t){case"flush":this._ul.classList.toggle("glass-list--flush",this.getBoolAttr("flush"));break;case"bare":this._ul.classList.toggle("glass-list--bare",this.getBoolAttr("bare"));break;case"header":{const t=this.getAttribute("header")||"";this._header.textContent=t,this._header.hidden=!t;break}}}get flush(){return this.getBoolAttr("flush")}set flush(t){this.setBoolAttr("flush",t)}get bare(){return this.getBoolAttr("bare")}set bare(t){this.setBoolAttr("bare",t)}get header(){return this.getAttribute("header")||""}set header(t){t?this.setAttribute("header",t):this.removeAttribute("header")}}customElements.define("glk-list",Ht);const Rt=new CSSStyleSheet;Rt.replaceSync("\n :host([data-last]) .glass-list__item::after { content: none; }\n");const Pt=["danger","accent"];class $t extends k{static get observedAttributes(){return["title","subtitle","interactive","center","leading-lg","wrap","detail","variant","data-last"]}constructor(){super(),this._shadow.adoptedStyleSheets=[...this._shadow.adoptedStyleSheets,Rt]}render(){const t=this.createElement("div");t.style.display="contents",this._item=this.createElement("li",["glass-list__item"]),this.getBoolAttr("interactive")&&this._item.classList.add("glass-list__item--interactive"),this.getBoolAttr("center")&&this._item.classList.add("glass-list__item--center");const e=this.getAttribute("variant");e&&Pt.includes(e)&&this._item.classList.add(`glass-list__item--${e}`),this._leading=this.createElement("span",["glass-list__leading"]),this.getBoolAttr("leading-lg")&&this._leading.classList.add("glass-list__leading--lg"),this._leadingSlot=document.createElement("slot"),this._leadingSlot.setAttribute("name","leading"),this._leading.appendChild(this._leadingSlot),this._leading.hidden=!0,this._content=this.createElement("div",["glass-list__content"]),this._titleEl=this.createElement("div",["glass-list__title"]),this.takeTitle(),this._titleEl.textContent=this._title||"",this._subtitleEl=this.createElement("div",["glass-list__subtitle"]),this.getBoolAttr("wrap")&&this._subtitleEl.classList.add("glass-list__subtitle--wrap");const s=this.getAttribute("subtitle")||"";this._subtitleEl.textContent=s,this._subtitleEl.hidden=!s,this._content.appendChild(this._titleEl),this._content.appendChild(this._subtitleEl),this._trailing=this.createElement("div",["glass-list__trailing"]),this._valueEl=this.createElement("span",["glass-list__value"]);const r=this.getAttribute("detail")||"";this._valueEl.textContent=r,this._valueEl.hidden=!r,this._trailing.appendChild(this._valueEl),this._trailingSlot=document.createElement("slot"),this._trailingSlot.setAttribute("name","trailing"),this._trailing.appendChild(this._trailingSlot),this._trailing.hidden=!r,this._item.appendChild(this._leading),this._item.appendChild(this._content),this._item.appendChild(this._trailing);const a=this.createElement("span");a.hidden=!0,a.setAttribute("aria-hidden","true"),t.appendChild(this._item),t.appendChild(a),this._wrapper.appendChild(t)}setupEvents(){this._onLeadingSlotChange=()=>{this._leading.hidden=0===this._leadingSlot.assignedNodes().length},this._onTrailingSlotChange=()=>{const t=this._trailingSlot.assignedNodes().length>0,e=!this._valueEl.hidden;this._trailing.hidden=!t&&!e},this._leadingSlot.addEventListener("slotchange",this._onLeadingSlotChange),this._trailingSlot.addEventListener("slotchange",this._onTrailingSlotChange),this._onLeadingSlotChange(),this._onTrailingSlotChange(),this._onClick=()=>{this.getBoolAttr("interactive")&&this.emit("glk-click")},this._item.addEventListener("click",this._onClick)}teardownEvents(){this._leadingSlot?.removeEventListener("slotchange",this._onLeadingSlotChange),this._trailingSlot?.removeEventListener("slotchange",this._onTrailingSlotChange),this._item?.removeEventListener("click",this._onClick)}onAttributeChanged(t,e,s){if(this._item)switch(t){case"title":this.takeTitle(s)&&this._applyTitle();break;case"subtitle":{const t=this.getAttribute("subtitle")||"";this._subtitleEl.textContent=t,this._subtitleEl.hidden=!t;break}case"interactive":this._item.classList.toggle("glass-list__item--interactive",this.getBoolAttr("interactive"));break;case"center":this._item.classList.toggle("glass-list__item--center",this.getBoolAttr("center"));break;case"leading-lg":this._leading.classList.toggle("glass-list__leading--lg",this.getBoolAttr("leading-lg"));break;case"wrap":this._subtitleEl.classList.toggle("glass-list__subtitle--wrap",this.getBoolAttr("wrap"));break;case"detail":{const t=this.getAttribute("detail")||"";this._valueEl.textContent=t,this._valueEl.hidden=!t,this._onTrailingSlotChange&&this._onTrailingSlotChange();break}case"variant":{Pt.forEach(t=>this._item.classList.remove(`glass-list__item--${t}`));const t=this.getAttribute("variant");t&&Pt.includes(t)&&this._item.classList.add(`glass-list__item--${t}`);break}}}_applyTitle(){this._titleEl&&(this._titleEl.textContent=this._title||"")}get title(){return this._title??""}set title(t){this._title=null==t?"":String(t),this._applyTitle()}get interactive(){return this.getBoolAttr("interactive")}set interactive(t){this.setBoolAttr("interactive",t)}get center(){return this.getBoolAttr("center")}set center(t){this.setBoolAttr("center",t)}get leadingLg(){return this.getBoolAttr("leading-lg")}set leadingLg(t){this.setBoolAttr("leading-lg",t)}get wrap(){return this.getBoolAttr("wrap")}set wrap(t){this.setBoolAttr("wrap",t)}get detail(){return this.getAttribute("detail")||""}set detail(t){t?this.setAttribute("detail",t):this.removeAttribute("detail")}get variant(){return this.getAttribute("variant")||""}set variant(t){t&&Pt.includes(t)?this.setAttribute("variant",t):this.removeAttribute("variant")}}return customElements.define("glk-list-item",$t),t.GlkAccordion=It,t.GlkAccordionItem=Gt,t.GlkAvatar=Q,t.GlkBadge=X,t.GlkButton=lt,t.GlkCalendar=Lt,t.GlkCard=W,t.GlkCheckbox=ut,t.GlkDateStrip=Y,t.GlkDivider=tt,t.GlkElement=k,t.GlkEmpty=st,t.GlkFormElement=w,t.GlkImagePicker=St,t.GlkInput=gt,t.GlkList=Ht,t.GlkListItem=$t,t.GlkModal=Ft,t.GlkNav=A,t.GlkPill=C,t.GlkPopover=qt,t.GlkProgress=Tt,t.GlkRadio=mt,t.GlkRange=ft,t.GlkSearch=ht,t.GlkSegmented=wt,t.GlkSelect=dt,t.GlkSheet=Nt,t.GlkStatus=et,t.GlkSteps=T,t.GlkTabAccessory=V,t.GlkTabBar=L,t.GlkTabDock=S,t.GlkTabItem=z,t.GlkTextarea=ct,t.GlkTitle=Z,t.GlkToast=Mt,t.GlkToggle=pt,t}({});
|