:root{--khej-primary-50:#fdf2f2;--khej-primary-100:#f9dede;--khej-primary-200:#f0b8b8;--khej-primary-300:#e48888;--khej-primary-400:#d45a5a;--khej-primary-500:#c53d43;--khej-primary-600:#a83035;--khej-primary-700:#8a2428;--khej-primary-800:#6d1b1e;--khej-primary-900:#4a1215;--khej-accent-50:#eef2fa;--khej-accent-100:#d5dff3;--khej-accent-200:#adc1e8;--khej-accent-300:#7f9bd9;--khej-accent-400:#5679c7;--khej-accent-500:#3457a5;--khej-accent-600:#2a4689;--khej-accent-700:#21366c;--khej-accent-800:#192a52;--khej-accent-900:#111d3a;--khej-secondary-50:#eef5f2;--khej-secondary-100:#d1e5dd;--khej-secondary-200:#a7cdbb;--khej-secondary-300:#7ab29a;--khej-secondary-400:#589a7e;--khej-secondary-500:#4a7c6f;--khej-secondary-600:#3d665a;--khej-secondary-700:#31504a;--khej-secondary-800:#263c3a;--khej-secondary-900:#1a2a2a;--khej-surface-50:#fafaf7;--khej-surface-100:#f5f4f0;--khej-surface-200:#eae8e0;--khej-surface-300:#d8d4c8;--khej-surface-400:#c0baa8;--khej-surface-500:#a8a08e;--khej-surface-600:#8a8272;--khej-surface-700:#6c6558;--khej-surface-800:#504a40;--khej-surface-900:#35322c;--khej-neutral-50:#fcfcfa;--khej-neutral-100:#f7f6f2;--khej-neutral-200:#eceae3;--khej-neutral-300:#dad6cc;--khej-neutral-400:#c2bbad;--khej-neutral-500:#a09888;--khej-neutral-600:#7e7670;--khej-neutral-700:#605b56;--khej-neutral-800:#44413c;--khej-neutral-900:#2b2b2b;--khej-text-50:#f7f6f2;--khej-text-100:#eceae3;--khej-text-200:#dad6cc;--khej-text-300:#b8b3a7;--khej-text-400:#969086;--khej-text-500:#7a756c;--khej-text-600:#5e5a54;--khej-text-700:#44403c;--khej-text-800:#353230;--khej-text-900:#2b2b2b;--khej-success-50:#f0f7f3;--khej-success-100:#d5ebdd;--khej-success-200:#a8d6b8;--khej-success-300:#73ba91;--khej-success-400:#4a9d72;--khej-success-500:#3d8a62;--khej-success-600:#317252;--khej-success-700:#2a5c44;--khej-success-800:#234838;--khej-success-900:#1a362b;--khej-warning-50:#fdf8ed;--khej-warning-100:#f9ebcc;--khej-warning-200:#f0d494;--khej-warning-300:#e5b558;--khej-warning-400:#db9a2e;--khej-warning-500:#c8850f;--khej-warning-600:#a86d0b;--khej-warning-700:#885508;--khej-warning-800:#6a4107;--khej-warning-900:#4d3005;--khej-error-50:#fdf2f2;--khej-error-100:#f9dcdb;--khej-error-200:#f0b5b2;--khej-error-300:#e58783;--khej-error-400:#db6260;--khej-error-500:#c53d3d;--khej-error-600:#a53030;--khej-error-700:#842525;--khej-error-800:#681c1c;--khej-error-900:#4a1414;--khej-info-50:#edf6f5;--khej-info-100:#d1e9e6;--khej-info-200:#a5d3cc;--khej-info-300:#70b8ad;--khej-info-400:#4a9e92;--khej-info-500:#3d887e;--khej-info-600:#347068;--khej-info-700:#2b5954;--khej-info-800:#234644;--khej-info-900:#1a3434;--bg:var(--khej-surface-100);--fg:var(--khej-text-900);--muted:var(--khej-text-400);--accent:var(--khej-primary-500);--accent-hover:var(--khej-primary-600);--rule:var(--khej-neutral-200);--link:var(--khej-accent-500);--surface:var(--khej-surface-100);--surface-dim:var(--khej-surface-200);--surface-container-low:var(--khej-surface-50);--surface-container:var(--khej-surface-100);--surface-container-high:var(--khej-surface-200);--surface-container-highest:var(--khej-surface-300);--error:var(--khej-error-500);--error-container:var(--khej-error-50);--on-error:#fff;--on-error-container:var(--khej-error-900);--font-display:"Noto Serif SC", serif;--font-heading:"Noto Serif SC", serif;--font-body:"Noto Sans SC", sans-serif;--font-mono:"Noto Sans SC", monospace;--font-size-display:56px;--font-size-h1:40px;--font-size-h2:32px;--font-size-h3:24px;--font-size-h4:20px;--font-size-body:16px;--font-size-lead:18px;--font-size-caption:12px;--font-size-mono:14px;--font-weight-display:700;--font-weight-h1:700;--font-weight-h2:600;--font-weight-h3:600;--font-weight-h4:600;--font-weight-body:400;--font-weight-lead:400;--font-weight-caption:400;--font-weight-mono:400;--line-height-display:1.1;--line-height-h1:1.2;--line-height-h2:1.25;--line-height-h3:1.3;--line-height-h4:1.4;--line-height-body:1.6;--line-height-lead:1.7;--line-height-caption:1.5;--line-height-mono:1.6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--size-icon-sm:16px;--size-icon-md:20px;--size-icon-lg:24px;--size-button-sm:32px;--size-button-md:40px;--size-button-lg:48px;--size-input-height:36px;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-xl:12px;--radius-pill:9999px;--shadow-1:0 1px 2px #2b2b2b0a, 0 1px 1px #2b2b2b05;--shadow-2:0 2px 6px #2b2b2b0f, 0 1px 3px #2b2b2b08;--shadow-3:0 4px 12px #2b2b2b14;--shadow-4:0 8px 24px #2b2b2b1a;--shadow-5:0 16px 40px #2b2b2b24;--color-background:var(--bg);--color-foreground:var(--fg);--color-surface:var(--surface);--color-surface-dim:var(--surface-dim);--color-surface-variant:var(--surface-container-high);--color-surface-container:var(--surface-container);--color-surface-container-low:var(--surface-container-low);--color-surface-container-high:var(--surface-container-high);--color-surface-container-highest:var(--surface-container-highest);--color-card:var(--surface);--color-on-surface:var(--fg);--color-on-surface-variant:var(--muted);--color-muted-foreground:var(--muted);--color-primary:var(--accent);--color-primary-hover:var(--accent-hover);--color-on-primary:#fff;--color-primary-container:var(--khej-primary-50);--color-on-primary-container:var(--khej-primary-900);--color-secondary:var(--khej-neutral-200);--color-secondary-container:var(--khej-neutral-100);--color-on-secondary-container:var(--khej-neutral-800);--color-error:var(--error);--color-error-container:var(--error-container);--color-on-error:var(--on-error);--color-on-error-container:var(--on-error-container);--color-outline:var(--rule);--color-outline-variant:var(--khej-neutral-100);--color-border:var(--rule);--color-success:var(--khej-success-600);--color-warning:var(--khej-warning-600);--font-family-base:var(--font-body)}.dark{--bg:#1a1917;--fg:#e8e5dc;--muted:#9a9590;--accent:var(--khej-primary-400);--accent-hover:var(--khej-primary-300);--rule:#33312b;--link:var(--khej-accent-300);--surface:#222019;--surface-dim:#1a1917;--surface-container-low:#2a2823;--surface-container:#33312b;--surface-container-high:#3d3a33;--surface-container-highest:#48453d;--error:var(--khej-error-400);--error-container:var(--khej-error-900);--on-error:#fff;--on-error-container:var(--khej-error-100);--shadow-1:0 1px 2px #00000026, 0 1px 1px #00000014;--shadow-2:0 2px 6px #0003, 0 1px 3px #0000001a;--shadow-3:0 4px 12px #00000040;--shadow-4:0 8px 24px #0000004d;--shadow-5:0 16px 40px #00000059}.khej-display{font-family:var(--font-display);font-size:3.5rem;font-weight:var(--font-weight-display);line-height:var(--line-height-display);letter-spacing:-.02em}.khej-h1{font-family:var(--font-heading);font-size:2.5rem;font-weight:var(--font-weight-h1);line-height:var(--line-height-h1)}.khej-h2{font-family:var(--font-heading);font-size:2rem;font-weight:var(--font-weight-h2);line-height:var(--line-height-h2)}.khej-h3{font-family:var(--font-heading);font-size:1.5rem;font-weight:var(--font-weight-h3);line-height:var(--line-height-h3)}.khej-h4{font-family:var(--font-heading);font-size:1.25rem;font-weight:var(--font-weight-h4);line-height:var(--line-height-h4)}.khej-body{font-family:var(--font-body);font-size:1rem;font-weight:var(--font-weight-body);line-height:var(--line-height-body)}.khej-lead{font-family:var(--font-body);font-size:1.125rem;font-weight:var(--font-weight-lead);line-height:var(--line-height-lead)}.khej-caption{font-family:var(--font-body);font-size:.75rem;font-weight:var(--font-weight-caption);line-height:var(--line-height-caption)}.khej-mono{font-family:var(--font-mono);font-size:.875rem;font-weight:var(--font-weight-mono);line-height:var(--line-height-mono)}.btn{cursor:pointer;font-family:var(--font-body);font-size:var(--font-size-body);white-space:nowrap;border:none;flex-shrink:0;justify-content:center;align-items:center;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn:focus-visible{outline-offset:2px;outline:2px solid}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-sm)}.btn-secondary{background:var(--color-surface-container);color:var(--color-on-surface);border-radius:var(--radius-sm)}.btn-secondary:hover{background:var(--color-surface-container-high)}.btn-ghost{color:var(--color-foreground);border-radius:var(--radius-sm);background:0 0}.btn-stamp{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-pill);border:2px solid var(--color-primary)}.btn-stamp:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-sm{height:var(--size-button-sm);padding:var(--space-1) var(--space-3);font-size:var(--font-size-caption);min-width:var(--size-button-sm)}.btn-md{height:var(--size-button-md);padding:var(--space-2) var(--space-4);min-width:var(--size-button-md)}.btn-lg{height:var(--size-button-lg);padding:var(--space-3) var(--space-5);font-size:var(--font-size-lead);min-width:var(--size-button-lg)}.card{border-radius:var(--radius-md);width:100%;transition:filter .15s;overflow:hidden}.card:hover{filter:brightness(.97)}.card.elevated{background:var(--color-card);box-shadow:var(--shadow-2)}.card.outlined{border:1px solid var(--color-outline-variant);background:0 0}.card.parchment{background:var(--color-surface);box-shadow:var(--shadow-1)}.card-header{padding:var(--space-4) var(--space-4) var(--space-2);border-bottom:1px solid var(--color-outline-variant)}.card-body{padding:0 var(--space-4) var(--space-4)}.card.compact .card-header,.card.compact .card-body{padding:var(--space-2) var(--space-3)}.card-footer{padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-outline-variant)}.card-title{font-family:var(--font-heading);font-size:var(--font-size-h4);font-weight:var(--font-weight-h4);line-height:var(--line-height-h4);color:var(--color-on-surface);margin:0}.card-body p{font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-on-surface-variant);margin:0}.input-group{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;max-width:320px;display:flex}.input-group label{font-size:var(--font-size-caption);color:var(--color-muted-foreground);white-space:nowrap}.input-field{height:var(--size-input-height);width:100%;font-family:var(--font-family-base);font-size:var(--font-size-body);color:var(--color-on-surface);background:0 0;border:none;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.input-field::placeholder{color:var(--color-muted-foreground)}.input-group .helper{font-size:var(--font-size-caption);color:var(--color-muted-foreground);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.input-underlined .input-field{border-bottom:1px solid var(--color-outline-variant);padding:0 var(--space-2);border-radius:0}.input-underlined .input-field:hover{border-bottom-color:var(--color-outline)}.input-underlined .input-field:focus{border-bottom:2px solid var(--color-primary)}.input-filled .input-field{background:var(--color-surface-container-low);border-radius:var(--radius-sm);padding:0 var(--space-3)}.input-filled .input-field:hover{background:var(--color-surface-container)}.input-filled .input-field:focus{box-shadow:inset 0 0 0 1px var(--color-primary)}.input-group.error label,.input-group.error .helper{color:var(--color-error)}.input-underlined.error .input-field{border-bottom-color:var(--color-error)}.input-underlined.error .input-field:focus{border-bottom:2px solid var(--color-error)}.input-filled.error .input-field{box-shadow:inset 0 0 0 1px var(--color-error)}.input-filled.error .input-field:focus{box-shadow:inset 0 0 0 2px var(--color-error)}.modal-demo{border-radius:var(--radius-md);background:var(--color-surface-dim);width:100%;height:260px;position:relative;overflow:hidden}.modal-backdrop{position:absolute;inset:0}.modal-backdrop.backdrop-dialog{background:#2b2b2b99}.modal-backdrop.backdrop-scroll{background:#2b2b2bb3}.modal{background:var(--color-card);width:340px;color:var(--color-on-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-4);flex-direction:column;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.modal.wide{border-radius:var(--radius-lg);width:88%;max-width:460px;max-height:210px;box-shadow:var(--shadow-5);background:var(--color-surface)}.modal-header{padding:var(--space-4) var(--space-5) var(--space-2);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.modal-title{font-family:var(--font-heading);font-size:var(--font-size-h4);font-weight:var(--font-weight-h4);white-space:nowrap;text-overflow:ellipsis;min-width:0;margin:0;overflow:hidden}.modal-close{cursor:pointer;width:28px;height:28px;color:var(--color-on-surface-variant);border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:inline-flex}.modal-close:hover{background:var(--color-surface-container-high)}.modal-body{padding:0 var(--space-5) var(--space-4);font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-on-surface);flex:1;min-width:0;overflow-y:auto}.modal-footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-outline-variant);flex-shrink:0;display:flex}.btn{cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-body);font-weight:var(--font-weight-body);white-space:nowrap;min-width:var(--size-button-sm);height:var(--size-button-sm);padding:0 var(--space-4);border-radius:var(--radius-md);border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:inline-flex}.btn-ghost{color:var(--color-on-surface-variant);border:1px solid var(--color-outline);background:0 0}.btn-ghost:hover{background:var(--color-surface-container-high)}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover{background:var(--color-primary-hover)}.nav-v{background:var(--color-surface);flex-direction:column;flex:1;min-width:0;display:flex}.nav-v-item{padding:var(--space-2) var(--space-4);font-size:var(--font-size-body);color:var(--color-on-surface-variant);cursor:pointer;white-space:nowrap;min-height:var(--size-button-sm);min-width:var(--size-button-sm);background:0 0;border:none;justify-content:flex-end;align-items:center;transition:color .15s,background .15s;display:flex;position:relative}.nav-v-item:hover{color:var(--color-primary);background:var(--color-surface-container-low)}.nav-v-item.active{color:var(--color-primary)}.nav-v-item.active:after{content:"";background:var(--color-primary);width:2px;position:absolute;top:4px;bottom:4px;right:0}.nav-h{border-bottom:1px solid var(--color-outline-variant);background:var(--color-surface);flex:1;align-items:center;min-width:0;display:flex;overflow-x:auto}.nav-h-item{padding:var(--space-2) var(--space-4);font-size:var(--font-size-body);color:var(--color-on-surface-variant);cursor:pointer;white-space:nowrap;min-height:var(--size-button-sm);min-width:var(--size-button-sm);background:0 0;border:none;align-items:center;transition:color .15s;display:flex;position:relative}.nav-h-item:hover,.nav-h-item.active{color:var(--color-primary)}.nav-h-item.active:after{content:"";bottom:0;left:var(--space-2);right:var(--space-2);background:var(--color-primary);height:2px;position:absolute}.tag{border-radius:var(--radius-sm);white-space:nowrap;font-family:var(--font-family-base);cursor:default;flex-shrink:0;align-items:center;gap:4px;font-weight:500;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.tag-sm{min-width:22px;height:22px;padding:3px 8px;font-size:11px}.tag-md{min-width:28px;height:28px;padding:5px 12px;font-size:13px}.tag-default{color:var(--color-on-surface-variant);border:1px solid var(--color-outline-variant);background:0 0}.tag-default:hover{background:var(--color-surface-container-high);border-color:var(--color-outline)}.tag-seal{background:var(--color-primary);color:var(--color-on-primary);border:1px solid var(--color-primary)}.tag-seal:hover{filter:brightness(1.08)}.tag-accent{background:var(--link);color:var(--color-on-primary);border:1px solid #0000}.tag-accent:hover{filter:brightness(1.08)}.tag-disabled{opacity:.45;pointer-events:none;cursor:not-allowed}:root{--vp-grad-start:#5bcefa;--vp-grad-end:#f5a9b8;--vp-brand-gradient:linear-gradient(90deg in oklch, var(--vp-grad-start), var(--vp-grad-end));--vp-brand-gradient-vt:linear-gradient(180deg in oklch, var(--vp-grad-start), var(--vp-grad-end));--vp-brand-gradient-soft:linear-gradient(90deg in oklch, color-mix(in oklch, var(--vp-grad-start) 18%, transparent), color-mix(in oklch, var(--vp-grad-end) 18%, transparent))}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--font-size-body);line-height:var(--line-height-body);-webkit-font-smoothing:antialiased;text-autospace:normal;margin:0}#root{flex-direction:column;display:flex}.brand-logo{background:var(--vp-brand-gradient-vt);width:40px;height:40px;display:inline-block;-webkit-mask:url(/logo.svg) 50%/contain no-repeat;mask:url(/logo.svg) 50%/contain no-repeat}.brand-logo--lg{width:56px;height:56px}.brand-name{font-family:var(--font-display);font-weight:900;font-size:var(--font-size-h4);background:var(--vp-brand-gradient);color:#0000;letter-spacing:.02em;-webkit-background-clip:text;background-clip:text}.app-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-outline-variant);background:var(--color-surface);z-index:20;display:flex;position:sticky;top:0}.app-header__brand{align-items:center;gap:var(--space-3);min-width:0;display:flex}.app-header__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.app-main{width:100%;max-width:1240px;padding:var(--space-5) var(--space-5) var(--space-8);gap:var(--space-5);flex-direction:column;flex:1;margin:0 auto;display:flex}.hero{border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6);background:var(--color-surface);box-shadow:var(--shadow-1);border:1px solid var(--color-outline-variant);position:relative;overflow:hidden}.hero:before{content:"";background:var(--vp-brand-gradient-soft);pointer-events:none;position:absolute;inset:0}.hero>*{position:relative}.hero h1{font-family:var(--font-display);font-size:var(--font-size-h2);font-weight:var(--font-weight-h2);line-height:var(--line-height-h2);margin:0 0 var(--space-2)}.hero p{max-width:62ch;color:var(--color-on-surface-variant);font-size:var(--font-size-lead);line-height:var(--line-height-lead);margin:0}.hero__rule{width:72px;height:3px;margin-top:var(--space-4);background:var(--vp-brand-gradient);border-radius:var(--radius-sm)}.hero__links{margin-top:var(--space-4);align-items:baseline;gap:var(--space-2) var(--space-4);font-size:var(--font-size-body);color:var(--color-on-surface-variant);flex-wrap:wrap;display:flex}.hero__links-label{color:var(--color-on-surface);font-weight:600}.hero__link{color:var(--color-primary);align-items:baseline;gap:6px;text-decoration:none;transition:-webkit-text-decoration .15s,text-decoration .15s;display:inline-flex}.hero__link:hover{text-decoration:underline}.hero__link-lang{font-size:var(--font-size-caption);border-radius:var(--radius-sm);background:var(--color-surface-variant);color:var(--color-on-surface-variant);white-space:nowrap;padding:2px 6px;line-height:1}.grid-panels{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (width>=1024px){.grid-panels{grid-template-columns:3fr 2fr;align-items:start}}.stack{gap:var(--space-5);flex-direction:column;display:flex}.stack-sm{gap:var(--space-3);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.row-between{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.section-title{align-items:center;gap:var(--space-2);font-family:var(--font-heading);font-size:var(--font-size-h4);font-weight:var(--font-weight-h4);color:var(--color-on-surface);margin:0;display:flex}.section-title .lucide{color:var(--color-primary)}.section-subtitle{margin:var(--space-1) 0 0;font-size:var(--font-size-caption);color:var(--muted)}.spectrum-wrap{border-radius:var(--radius-md);background:var(--color-surface-container-low);border:1px solid var(--color-outline-variant);width:100%;position:relative;overflow:hidden}.spectrum-wrap canvas{width:100%;height:340px;display:block}.spectrum-wrap--fill{flex-direction:column;flex:1;min-height:0;display:flex}.spectrum-wrap--fill canvas{flex:1;height:auto;min-height:0}.spectrum-wrap__badge{top:var(--space-2);left:var(--space-2);position:absolute}.spectrogram-ticks{pointer-events:none;position:absolute;inset:0}.spectrogram-tick{border-top:1px solid #7f7f7f38;position:absolute;left:0;right:0}.spectrogram-tick span{font-variant-numeric:tabular-nums;color:var(--muted);border-radius:var(--radius-sm);background:#14130f8c;padding:1px 3px;font-size:9px;line-height:1.2;position:absolute;top:-7px;right:4px}.spectrogram-legend{left:var(--space-2);bottom:var(--space-2);align-items:center;gap:var(--space-3);border-radius:var(--radius-sm);pointer-events:none;background:#14130f99;padding:3px 8px;display:flex;position:absolute}.spectrogram-legend__item{color:#e8e5dc;white-space:nowrap;align-items:center;gap:5px;font-size:10px;line-height:1.4;display:inline-flex}.spectrogram-legend__item i{border-radius:2px;flex-shrink:0;width:12px;height:3px}.spectrogram-legend--interactive{pointer-events:auto}.spectrogram-legend__btn{color:#e8e5dc;white-space:nowrap;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;margin:0;padding:2px 4px;font-family:inherit;font-size:10px;line-height:1.4;transition:opacity .15s,background .15s;display:inline-flex}.spectrogram-legend__btn i{border-radius:2px;flex-shrink:0;width:12px;height:3px}.spectrogram-legend__btn:hover{background:#ffffff1a}.spectrogram-legend__btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.spectrogram-legend__btn[aria-pressed=false]{opacity:.38}.fullscreen-stage{z-index:100;background:var(--bg);gap:var(--space-4);padding:var(--space-4) var(--space-5) var(--space-5);flex-direction:column;display:flex;position:fixed;inset:0;overflow:auto}.fullscreen-stage__bar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.fullscreen-stage__brand{align-items:center;gap:var(--space-3);min-width:0;display:flex}.fullscreen-stage__history{flex-shrink:0}.fullscreen-stage__controls{background:var(--color-surface-container-low);border:1px solid var(--color-outline-variant);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);flex-shrink:0}.metric-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=640px){.metric-grid{grid-template-columns:repeat(4,1fr)}}.metric{background:var(--color-surface-container-low);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.metric__label{align-items:center;gap:var(--space-1);font-size:var(--font-size-caption);color:var(--muted);display:flex}.metric__value{font-family:var(--font-heading);font-size:var(--font-size-h3);font-weight:var(--font-weight-h3);color:var(--color-on-surface);font-variant-numeric:tabular-nums;line-height:1.15}.metric__unit{font-size:var(--font-size-caption);color:var(--muted);font-weight:400}.metric__status{font-size:var(--font-size-caption)}.metric__status--in{color:var(--khej-success-600)}.dark .metric__status--in{color:var(--khej-success-300)}.metric__status--out{color:var(--color-warning)}.range-bar{border-radius:var(--radius-sm);background:var(--color-surface-container-high);height:8px;margin-top:var(--space-2);position:relative}.range-bar__zone{background:var(--vp-brand-gradient);opacity:.55;border-radius:var(--radius-sm);position:absolute;top:0;bottom:0}.range-bar__marker{background:var(--color-on-surface);border-radius:2px;width:3px;height:14px;transition:left .12s linear;position:absolute;top:-3px;transform:translate(-50%)}.history-wrap{border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);background:var(--color-surface-container-low);overflow:hidden}.history-wrap canvas{width:100%;height:160px;display:block}.target-form{gap:var(--space-3) var(--space-4);grid-template-columns:1fr 1fr;display:grid}.target-form .input-group{max-width:none}@media (width<=560px){.target-form{grid-template-columns:1fr}}.preset-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.feedback{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-outline-variant);background:var(--color-surface-container-low);display:flex}.feedback .lucide{flex-shrink:0;margin-top:2px}.feedback--good{border-color:var(--khej-success-300);background:var(--khej-success-50)}.feedback--good .lucide{color:var(--khej-success-600)}.dark .feedback--good{background:var(--khej-success-900);border-color:var(--khej-success-700)}.dark .feedback--good .lucide{color:var(--khej-success-300)}.feedback--hint{border-color:var(--khej-warning-300);background:var(--khej-warning-50)}.feedback--hint .lucide{color:var(--khej-warning-600)}.dark .feedback--hint{background:var(--khej-warning-900);border-color:var(--khej-warning-700)}.dark .feedback--hint .lucide{color:var(--khej-warning-300)}.feedback__title{font-weight:600;font-size:var(--font-size-body);margin:0 0 2px}.feedback__text{font-size:var(--font-size-caption);color:var(--color-on-surface-variant);line-height:var(--line-height-caption);margin:0}.score{align-items:center;gap:var(--space-4);display:flex}.score__ring{background:radial-gradient(closest-side, var(--color-surface) 78%, transparent 79% 100%), conic-gradient(var(--khej-success-500) calc(var(--score) * 1%), var(--color-surface-container-high) 0);border-radius:50%;flex-shrink:0;place-items:center;width:84px;height:84px;display:grid}.score__num{font-family:var(--font-heading);font-size:var(--font-size-h3);font-variant-numeric:tabular-nums;font-weight:700}.score__meta{min-width:0}.score__meta p{margin:0}.transport{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.transport__spacer{flex:1}.file-drop{border:1.5px dashed var(--color-outline);border-radius:var(--radius-md);padding:var(--space-4);text-align:center;color:var(--muted);font-size:var(--font-size-caption);cursor:pointer;transition:border-color .15s,background .15s}.file-drop:hover,.file-drop--active{border-color:var(--color-primary);background:var(--color-primary-container)}.file-drop .lucide{color:var(--color-primary);margin-bottom:var(--space-1)}.file-drop strong{color:var(--color-on-surface);font-weight:500}.icon-btn{border:1px solid var(--color-outline);width:36px;height:36px;color:var(--color-on-surface-variant);border-radius:var(--radius-sm);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.icon-btn:hover{background:var(--color-surface-container-high);color:var(--color-primary)}.icon-btn--active{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-container)}.rec-dot{background:var(--color-error);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.2s ease-in-out infinite rec-pulse}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.35}}.lang-menu{position:relative}.lang-menu__list{background:var(--color-card);border:1px solid var(--color-outline-variant);border-radius:var(--radius-md);min-width:148px;box-shadow:var(--shadow-4);padding:var(--space-1);z-index:30;position:absolute;top:calc(100% + 6px);right:0}.lang-menu__item{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-on-surface);cursor:pointer;border-radius:var(--radius-sm);text-align:left;background:0 0;border:none;display:flex}.lang-menu__item:hover{background:var(--color-surface-container-high)}.lang-menu__item[aria-checked=true]{color:var(--color-primary);font-weight:500}.status-line{align-items:center;gap:var(--space-2);font-size:var(--font-size-caption);color:var(--muted);display:flex}.status-line .lucide{color:var(--color-primary)}.wasm-veil{align-items:center;gap:var(--space-2);font-size:var(--font-size-caption);color:var(--muted);display:flex}.spin{animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-muted{color:var(--muted)}.text-caption{font-size:var(--font-size-caption)}.mono{font-variant-numeric:tabular-nums}
