.vf-recording-hud{display:flex;align-items:center;gap:6px;margin:0;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:#fffffff0;box-shadow:0 10px 28px #00000029;box-sizing:border-box;color:#1a1a2e;cursor:default;-webkit-user-select:none;user-select:none;touch-action:none;width:auto;height:auto;min-height:34px;padding:6px 8px 6px 6px;font-family:-apple-system,Inter,Segoe UI,sans-serif;animation:vf-slide-up .28s cubic-bezier(.34,1.56,.64,1) both;pointer-events:auto}.vf-recording-hud--draggable{position:absolute;z-index:2;left:50%;top:calc(100% - 46px);transform:translate(-50%);cursor:grab;will-change:left,top}.vf-recording-hud--draggable.is-positioned{animation:none}.vf-recording-hud.is-dragging{cursor:grabbing;animation:none;box-shadow:0 14px 32px #00000038}.vf-hud-grip{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#dc26261f;color:#dc2626;animation:vf-hud-pulse 1.4s ease-in-out infinite;pointer-events:none}.vf-hud-grip svg{width:14px;height:14px;fill:currentColor}.vf-hud-label{font-size:12px;font-weight:600;white-space:nowrap;padding:0 2px 0 4px;line-height:1}.vf-hud-actions{display:flex;align-items:center;gap:4px}.vf-hud-btn{width:28px;height:28px;border:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin:0;background:#0000000a;color:#4b5563;transition:background .15s ease,color .15s ease}.vf-hud-btn:hover{background:#00000014}.vf-hud-btn svg{width:12px;height:12px;pointer-events:none}.vf-hud-btn.stop{color:#dc2626;background:#fef2f2f2;border:1px solid rgba(220,38,38,.2)}.vf-hud-btn.stop:hover{background:#fee2e2}.vf-hud-btn.cancel:hover{color:#111827}@keyframes vf-hud-pulse{0%{box-shadow:0 0 #dc262659}70%{box-shadow:0 0 0 8px #dc262600}to{box-shadow:0 0 #dc262600}}@keyframes vf-slide-up{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.hero{padding:64px 0 80px}.hero-grid{display:grid;gap:48px;align-items:center}.hero-title{font-size:clamp(2.25rem,6vw,3.25rem);font-weight:700;letter-spacing:-.04em;line-height:1.08;margin-bottom:20px}.hero-title-serif{font-family:var(--font-serif);font-weight:600;font-style:italic;color:var(--color-text-muted)}.hero-lead{font-family:var(--font-serif);font-size:clamp(1.05rem,2.2vw,1.2rem);line-height:1.65;color:var(--color-text-muted);max-width:46ch;margin-bottom:28px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.hero-actions .btn{gap:8px}.hero-demo{position:relative;padding:0;overflow:hidden;box-shadow:var(--shadow-lg);touch-action:none}.hero-demo-bar{display:flex;gap:6px;padding:12px 14px;border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-muted)}.hero-demo-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border)}.hero-demo-body{position:relative;padding:20px 20px 72px;min-height:200px}.hero-demo-field{position:relative;min-height:120px;padding:14px 16px;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--radius-md)}.hero-demo-placeholder{font-size:13px;color:var(--color-text-faint);margin-bottom:8px}.hero-demo-text{font-size:14px;line-height:1.55;color:var(--color-text)}.hero-demo-cursor{display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:text-bottom;background:var(--color-text);animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}@media(min-width:900px){.hero{padding:88px 0 100px}.hero-grid{grid-template-columns:1fr 1fr;gap:64px}}.features{padding-bottom:var(--section-gap)}.features-header{margin-bottom:40px}.features-grid{display:grid;gap:16px}.feature-card{display:flex;flex-direction:column;gap:12px;transition:box-shadow .2s var(--ease-out),border-color .2s var(--ease-out)}.feature-card:hover{border-color:var(--color-text-faint);box-shadow:var(--shadow-md)}.feature-icon-wrap{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-bg-muted);border:1px solid var(--color-border);color:var(--color-text)}.feature-title{font-size:15px;font-weight:600;letter-spacing:-.02em}.feature-desc{font-size:13px;line-height:1.55;color:var(--color-text-muted)}@media(min-width:640px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.features-grid{grid-template-columns:repeat(4,1fr)}}.voicewhisper{padding-bottom:var(--section-gap)}.voicewhisper-layout{display:grid;gap:40px;align-items:start}.voicewhisper-notes{list-style:none;margin-top:24px;display:flex;flex-direction:column;gap:10px}.voicewhisper-notes li{position:relative;padding-left:18px;font-size:13px;color:var(--color-text-muted);line-height:1.5}.voicewhisper-notes li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--color-text)}.voicewhisper-models{display:grid;gap:14px}.model-card{display:flex;flex-direction:column;gap:14px}.model-card-head{display:flex;align-items:flex-start;gap:14px}.model-icon-wrap{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:var(--radius-md);background:var(--color-bg-muted);border:1px solid var(--color-border)}.model-name{font-size:16px;font-weight:600;letter-spacing:-.02em;margin-bottom:2px}.model-tagline{font-size:13px;color:var(--color-text-muted)}.model-use{font-size:13px;line-height:1.55;color:var(--color-text-muted)}@media(min-width:900px){.voicewhisper-layout{grid-template-columns:1fr 1fr;gap:56px}}.pricing{padding-bottom:var(--section-gap)}.pricing-header{margin-bottom:40px}.pricing-billing{display:flex;width:100%;margin:0 0 14px;padding:3px;gap:2px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg-muted)}.pricing-billing-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--color-text-muted);font:inherit;font-size:12px;font-weight:600;padding:7px 10px;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:1;white-space:nowrap}.pricing-billing-btn.is-active{background:var(--color-bg);color:var(--color-text);box-shadow:var(--shadow-sm)}.pricing-billing-save{font-size:10px;font-weight:600;color:var(--color-text-faint)}.pricing-billing-btn.is-active .pricing-billing-save{color:var(--color-text-muted)}.pricing-grid{display:grid;gap:16px;padding-top:14px}.pricing-card{position:relative;display:flex;flex-direction:column;gap:20px;padding:28px 24px;transition:box-shadow .2s var(--ease-out),border-color .2s var(--ease-out)}.pricing-card:hover{box-shadow:var(--shadow-md)}.pricing-card--highlighted{border-color:var(--color-text);box-shadow:var(--shadow-lg)}.pricing-badges{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:6px;z-index:1;white-space:nowrap}.pricing-badge{padding:4px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;letter-spacing:.02em;background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-muted);box-shadow:var(--shadow-sm)}.pricing-name{font-size:15px;font-weight:600;margin-bottom:8px}.pricing-price-row{display:flex;align-items:baseline;gap:4px;margin-bottom:4px}.pricing-price{font-size:2rem;font-weight:700;letter-spacing:-.04em;line-height:1}.pricing-period{font-size:13px;color:var(--color-text-faint)}.pricing-price-sub{font-size:12px;color:var(--color-text-faint);margin-bottom:8px}.pricing-minutes{font-size:13px;font-weight:600;color:var(--color-text-muted);margin-bottom:8px}.pricing-desc{font-size:13px;line-height:1.5;color:var(--color-text-muted)}.pricing-features{list-style:none;display:flex;flex-direction:column;gap:10px;flex:1}.pricing-features li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--color-text-muted);line-height:1.45}.pricing-check{flex-shrink:0;margin-top:1px;color:var(--color-text)}.pricing-cta{width:100%;margin-top:auto}.pricing-footnote{margin-top:28px;font-size:12px;line-height:1.55;color:var(--color-text-faint);max-width:62ch}.pricing-footnote-link{color:var(--color-text-muted);text-decoration:underline;text-underline-offset:2px}.pricing-footnote-link:hover{color:var(--color-text)}@media(min-width:640px){.pricing-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.pricing-grid{grid-template-columns:repeat(3,1fr)}}.cta{padding-bottom:64px}.cta-card{display:flex;flex-direction:column;gap:24px;align-items:flex-start;padding:32px 28px;background:var(--color-bg-subtle);border-color:var(--color-border)}.cta-title{font-size:clamp(1.5rem,3vw,1.875rem);font-weight:600;letter-spacing:-.03em;margin-bottom:8px}.cta-lead{font-family:var(--font-serif);font-size:1rem;line-height:1.65;color:var(--color-text-muted);max-width:42ch}.cta-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.cta-btn{display:inline-flex;align-items:center;gap:8px}@media(min-width:720px){.cta-card{flex-direction:row;align-items:center;justify-content:space-between;padding:40px 36px}.cta-actions{flex-shrink:0;flex-direction:column;align-items:stretch}}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:inline-flex;align-items:center;gap:4px;border:none;background:transparent;cursor:pointer;font:inherit}.nav-dropdown-chevron--open{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:200px;padding:6px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:var(--shadow-lg);z-index:60}.nav-dropdown-item{display:block;padding:8px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--color-text-muted);transition:background .2s var(--ease-out),color .2s var(--ease-out)}.nav-dropdown-item:hover{background:var(--color-bg-muted);color:var(--color-text)}.header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--color-bg) 88%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:60px}.header-logo{display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px;letter-spacing:-.02em}.header-logo-mark{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-primary-fg)}.header-logo-mark--brand{background:transparent;padding:0;overflow:hidden}.header-nav{display:none;align-items:center;gap:4px}.header-nav-link{padding:6px 12px;border-radius:var(--radius-pill);font-size:13px;font-weight:500;color:var(--color-text-muted);transition:background .2s var(--ease-out),color .2s var(--ease-out)}.header-nav-link:hover{background:var(--color-bg-muted);color:var(--color-text)}.header-cta{padding:8px 16px;font-size:13px;white-space:nowrap;display:inline-flex;align-items:center;gap:8px}.header-ctas{display:flex;align-items:center;gap:8px}.header-cta--desktop{padding:8px 12px}@media(max-width:1100px){.header-cta--desktop{max-width:11.5rem;overflow:hidden;text-overflow:ellipsis}}@media(max-width:520px){.header-cta--desktop{display:none}}@media(min-width:720px){.header-nav{display:flex}}.footer{border-top:1px solid var(--color-border);padding:56px 0 28px;background:var(--color-bg-subtle)}.footer-inner{display:flex;flex-direction:column;gap:40px}.footer-top{display:grid;gap:40px}.footer-brand{display:flex;flex-direction:column;gap:14px;max-width:28ch}.footer-brand-row{display:inline-flex;align-items:center;gap:10px;width:fit-content;text-decoration:none;color:inherit}.footer-logo-mark{display:block;border-radius:8px;flex-shrink:0}.footer-logo{font-size:16px;font-weight:650;letter-spacing:-.03em}.footer-tagline{font-size:13px;line-height:1.55;color:var(--color-text-muted)}.footer-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}.footer-col{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.footer-col-title{font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint);margin-bottom:2px}.footer-col a{font-size:13.5px;font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:color .2s var(--ease-out)}.footer-col a:hover{color:var(--color-text)}.footer-bottom{padding-top:22px;border-top:1px solid var(--color-border)}.footer-copy{font-size:12px;color:var(--color-text-faint)}@media(min-width:800px){.footer{padding:72px 0 32px}.footer-top{grid-template-columns:minmax(200px,.9fr) minmax(0,1.6fr);gap:48px;align-items:start}.footer-cols{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}}.transcriber-page{padding:48px 0 96px}.transcriber-inner{display:flex;flex-direction:column;gap:32px}.transcriber-header{max-width:720px}.transcriber-grid{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:900px){.transcriber-grid{grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:start}}.transcriber-panel,.transcriber-output{padding:20px}.transcriber-auth-row{margin-bottom:16px}.transcriber-user{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--color-text-muted)}.transcriber-google-btn{width:100%;justify-content:center}.transcriber-quota{padding:14px;margin-bottom:16px;background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);box-shadow:none}.transcriber-quota-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:8px}.transcriber-quota-row span{color:var(--color-text-muted)}.transcriber-quota-bar{height:6px;border-radius:var(--radius-pill);background:var(--color-bg-muted);overflow:hidden}.transcriber-quota-fill{height:100%;border-radius:inherit;background:var(--color-primary);transition:width .3s var(--ease-out)}.transcriber-quota-hint{margin-top:8px;font-size:12px;color:var(--color-text-faint)}.field-label{display:block;margin-bottom:6px;font-size:12px;font-weight:600;color:var(--color-text-muted)}.transcriber-select{width:100%;margin-bottom:16px;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit}.transcriber-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:180px;margin-bottom:16px;padding:24px;border:1.5px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-muted);text-align:center;cursor:pointer;transition:border-color .2s var(--ease-out),background .2s var(--ease-out)}.transcriber-dropzone:hover,.transcriber-dropzone:focus-visible{border-color:var(--color-text-faint);background:var(--color-bg-muted);outline:none}.transcriber-dropzone--has-file{border-style:solid}.transcriber-file-name{font-weight:600;color:var(--color-text);word-break:break-all}.transcriber-file-meta{font-size:12px;color:var(--color-text-faint)}.transcriber-submit{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px}.transcriber-error{margin-top:12px;font-size:13px;color:#ef4444}.transcriber-upgrade{margin-top:16px;padding:16px;background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);box-shadow:none}.transcriber-upgrade h3{font-size:15px;margin-bottom:6px}.transcriber-upgrade p{font-size:13px;color:var(--color-text-muted);margin-bottom:12px}.transcriber-upgrade-actions{display:flex;flex-wrap:wrap;gap:8px}.transcriber-output-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.transcriber-output-header h2{font-size:15px}.transcriber-transcript{font-family:var(--font-serif);font-size:16px;line-height:1.7;color:var(--color-text);white-space:pre-wrap}.transcriber-placeholder{font-size:14px;color:var(--color-text-faint);line-height:1.6}.btn-sm{padding:6px 10px;font-size:12px}.auth-callback{padding:96px 0;text-align:center;color:var(--color-text-muted)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.legal-page{padding:48px 0 var(--section-gap)}.legal-page-inner{max-width:720px}.legal-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;letter-spacing:-.04em;line-height:1.15;margin:8px 0 12px}.legal-lead{font-size:15px;line-height:1.6;color:var(--color-text-muted);margin-bottom:36px}.legal-section{margin-bottom:28px}.legal-heading{font-size:15px;font-weight:600;margin-bottom:10px}.legal-copy{font-size:14px;line-height:1.65;color:var(--color-text-muted);margin-bottom:10px}.legal-copy a,.legal-list a{color:var(--color-text);text-decoration:underline;text-underline-offset:3px}.legal-copy a:hover,.legal-list a:hover{opacity:.8}.legal-list{margin:0 0 8px;padding-left:1.2em;display:flex;flex-direction:column;gap:8px}.legal-list li{font-size:14px;line-height:1.55;color:var(--color-text-muted)}.legal-back{margin-top:40px;font-size:13px}.legal-back a{color:var(--color-text-muted);text-decoration:underline;text-underline-offset:3px}.legal-back a:hover{color:var(--color-text)}.admin-page{padding:48px 0 var(--section-gap)}.admin-inner{max-width:720px}.admin-inner--wide{max-width:1100px}.admin-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;letter-spacing:-.04em;margin:8px 0 12px}.admin-lead{font-size:15px;line-height:1.6;color:var(--color-text-muted);margin-bottom:24px}.admin-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:8px}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-tabs{display:flex;gap:8px;margin:16px 0 20px}.admin-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border);background:var(--color-bg-muted);color:var(--color-text-muted);font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:var(--radius-pill);cursor:pointer}.admin-tab.is-active{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.admin-toast{position:fixed;top:20px;right:20px;z-index:1000;max-width:min(360px,calc(100vw - 40px));padding:12px 16px;border-radius:var(--radius-md, 8px);font-size:14px;font-weight:500;line-height:1.4;box-shadow:0 8px 24px #0000001f;animation:admin-toast-in .25s ease-out}.admin-toast--success{background:#0f766e;color:#fff}.admin-toast--error{background:#b91c1c;color:#fff}@keyframes admin-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.admin-save-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:140px}.admin-btn-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:admin-spin .7s linear infinite;flex-shrink:0}.admin-danger .admin-btn-spinner{border-color:#b91c1c40;border-top-color:#b91c1c}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-grid{display:grid;gap:16px;grid-template-columns:1.4fr 1fr}@media(max-width:900px){.admin-grid{grid-template-columns:1fr}}.admin-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);padding:16px}.admin-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.admin-card-title{font-size:15px;font-weight:600;margin-bottom:12px}.admin-card-head .admin-card-title{margin-bottom:0}.admin-table-wrap{overflow:auto;max-height:520px}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.admin-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-faint)}.admin-table tbody tr{cursor:pointer}.admin-table tbody tr:hover,.admin-table tbody tr.is-selected{background:var(--color-bg-muted)}.admin-user-cell{display:flex;align-items:center;gap:10px}.admin-user-cell img,.admin-avatar-fallback{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.admin-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--color-bg-muted);font-size:12px;font-weight:700;color:var(--color-text-muted)}.admin-user-cell strong{display:block;font-size:13px}.admin-user-cell span{display:block;font-size:12px;color:var(--color-text-faint)}.admin-client-badges{display:inline-flex;flex-wrap:wrap;gap:4px}.admin-client-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em;border:1px solid var(--color-border);background:var(--color-bg-muted);color:var(--color-text-muted);white-space:nowrap}.admin-client-badge--extension{background:#4285f41f;border-color:#4285f447;color:#2563eb}.admin-client-badge--desktop{background:#18181814;border-color:#18181829;color:var(--color-text)}.admin-client-badge--website{background:#22c55e1f;border-color:#22c55e47;color:#15803d}.admin-client-row{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.admin-form{display:flex;flex-direction:column;gap:12px}.admin-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--color-text-muted)}.admin-form input,.admin-form select{font:inherit;font-size:14px;font-weight:400;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:8px 10px;background:var(--color-bg)}.admin-check{flex-direction:row!important;align-items:center;gap:8px!important}.admin-muted{font-size:13px;color:var(--color-text-faint);line-height:1.5}.admin-ext-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:520px;overflow:auto}.admin-ext-list li{display:flex;align-items:center;gap:8px}.admin-ext-list li>button:first-child{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border);background:var(--color-bg-muted);border-radius:var(--radius-sm);padding:8px 10px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;font:inherit}.admin-ext-list img{width:28px;height:28px;border-radius:6px;object-fit:cover}.admin-ext-list strong{display:block;font-size:13px;color:var(--color-text)}.admin-ext-list em{display:block;font-style:normal;font-size:11px;color:var(--color-text-faint)}.admin-danger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--color-border);background:transparent;color:var(--color-danger);font:inherit;font-size:12px;font-weight:600;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer}.admin-footnote{margin-top:28px;font-size:12px;color:var(--color-text-faint);line-height:1.5}.admin-footnote code{font-size:11px}.vf-changelog{--cl-primary: #181818;--cl-primary-hover: #333333;--cl-primary-light: #f4f4f4;--cl-primary-mid: #e8e8e8;--cl-bg: #ffffff;--cl-bg-secondary: #f9f9f9;--cl-border: #e8e8e8;--cl-text: #181818;--cl-text-muted: #6b6b6b;--cl-text-dim: #9ca3af;--cl-nav-dot: #e8e8e8;--cl-nav-dot-active: #181818;--cl-nav-line: #e8e8e8;--cl-sidebar-width: 200px;--cl-nav-item-h: 48px;--cl-nav-visible: 7;font-family:DM Sans,Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--cl-bg);color:var(--cl-text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}@media(prefers-color-scheme:dark){.vf-changelog{--cl-primary: #f5f5f5;--cl-primary-hover: #e5e5e5;--cl-primary-light: #262626;--cl-primary-mid: #333333;--cl-bg: #181818;--cl-bg-secondary: #202020;--cl-border: #2c2c2c;--cl-text: #f5f5f5;--cl-text-muted: #a3a3a3;--cl-text-dim: #737373;--cl-nav-dot: #333333;--cl-nav-dot-active: #f5f5f5;--cl-nav-line: #2c2c2c}.vf-changelog .badge-improved{background:#1e293b;color:#60a5fa}.vf-changelog .badge-fixed{background:#2c2415;color:#fbbf24}}.vf-changelog-layout{display:flex;max-width:960px;margin:0 auto;padding:48px 24px 80px;gap:48px}.vf-changelog-sidebar{position:sticky;top:48px;align-self:flex-start;width:var(--cl-sidebar-width);flex-shrink:0;padding-top:80px}.vf-changelog-nav-viewport{position:relative;height:calc(var(--cl-nav-item-h) * var(--cl-nav-visible));padding:8px 0;box-sizing:content-box;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 78%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 78%,transparent 100%)}.vf-changelog-nav-viewport.fade-both{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 12%,#000 88%,transparent 100%)}.vf-changelog-nav-viewport.fade-top-only{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 14%,#000 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 14%,#000 100%)}.vf-changelog-nav-viewport.fade-none{-webkit-mask-image:none;mask-image:none}.vf-changelog-nav{position:relative;padding-left:24px;will-change:transform;transition:transform .35s cubic-bezier(.22,1,.36,1);z-index:1}.vf-changelog-nav:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--cl-nav-line);border-radius:1px;z-index:0}.vf-changelog-nav-item{position:relative;display:flex;flex-direction:column;justify-content:center;width:100%;height:var(--cl-nav-item-h);padding:8px 0;box-sizing:border-box;border:none;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:opacity .2s ease;z-index:1}.vf-changelog-nav-item.active{z-index:3}.vf-changelog-nav-item:before{content:"";position:absolute;left:-23px;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:50%;background:var(--cl-nav-dot);border:2px solid var(--cl-bg);transition:background .25s ease,transform .25s ease;z-index:5}.vf-changelog-nav-item.active:before{background:var(--cl-nav-dot-active);transform:translateY(-50%) scale(1.15);z-index:6}.vf-changelog-nav-version{font-family:DM Mono,ui-monospace,monospace;font-size:13px;font-weight:500;color:var(--cl-text-dim);transition:color .2s ease;display:block}.vf-changelog-nav-item.active .vf-changelog-nav-version{color:var(--cl-primary)}.vf-changelog-nav-date{font-size:11px;color:var(--cl-text-dim);opacity:.7;display:block;margin-top:1px}.vf-changelog-nav-item.active .vf-changelog-nav-date{opacity:1;color:var(--cl-text-muted)}.vf-changelog-content{flex:1;min-width:0}.vf-changelog-header{margin-bottom:48px}.vf-changelog-logo{width:48px;height:48px;margin-bottom:16px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--cl-primary);color:var(--cl-bg)}@media(prefers-color-scheme:dark){.vf-changelog-logo{color:#181818}}.vf-changelog-header h1{font-size:28px;font-weight:600;letter-spacing:-.5px;margin:0 0 6px;color:var(--cl-text)}.vf-changelog-header>p{color:var(--cl-text-muted);font-size:15px;margin:0}.vf-changelog-back{margin-top:14px!important;font-size:13px!important}.vf-changelog-back a{color:var(--cl-text-muted);text-decoration:underline;text-underline-offset:3px}.vf-changelog-back a:hover{color:var(--cl-text)}.vf-changelog-entry{padding:32px 0;border-bottom:1px solid var(--cl-border);scroll-margin-top:24px}.vf-changelog-entry:last-of-type{border-bottom:none}.vf-changelog-entry-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.vf-changelog-tag{font-family:DM Mono,ui-monospace,monospace;font-size:14px;font-weight:500;background:var(--cl-primary-light);color:var(--cl-primary);padding:4px 10px;border-radius:6px}.vf-changelog-date{font-size:13px;color:var(--cl-text-dim)}.vf-changelog-title{font-size:18px;font-weight:500;margin:0 0 12px;color:var(--cl-text)}.vf-changelog-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.vf-changelog-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--cl-text-muted);line-height:1.5}.vf-changelog-badge{flex-shrink:0;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:2px 7px;border-radius:4px;margin-top:2px}.vf-changelog .badge-new{background:var(--cl-primary-light);color:var(--cl-primary)}.vf-changelog .badge-improved{background:#eff6ff;color:#2563eb}.vf-changelog .badge-fixed{background:#fef3c7;color:#d97706}.vf-changelog-footer{text-align:center;margin-top:48px;padding-top:24px;border-top:1px solid var(--cl-border);color:var(--cl-text-dim);font-size:13px}.vf-changelog-footer p{margin:0}@media(max-width:720px){.vf-changelog-layout{flex-direction:column;padding:32px 16px 60px;gap:0}.vf-changelog-sidebar{position:relative;top:0;width:100%;padding-top:0;margin-bottom:32px;overflow-x:auto}.vf-changelog-nav-viewport{height:auto;padding:0;overflow:visible;-webkit-mask-image:none;mask-image:none}.vf-changelog-nav{display:flex;gap:0;padding-left:0;padding-bottom:12px;transform:none!important;transition:none}.vf-changelog-nav:before{display:none}.vf-changelog-nav-item{height:auto;width:auto;padding:8px 14px;white-space:nowrap;border-radius:8px;background:var(--cl-bg-secondary);border:1px solid var(--cl-border);transition:background .2s ease,border-color .2s ease}.vf-changelog-nav-item:before{display:none}.vf-changelog-nav-item.active{background:var(--cl-primary-light);border-color:var(--cl-primary-mid)}.vf-changelog-nav-item+.vf-changelog-nav-item{margin-left:8px}.vf-changelog-header h1{font-size:24px}.vf-changelog-title{font-size:16px}}:root{--color-bg: #ffffff;--color-bg-subtle: #f9f9f9;--color-bg-muted: #f4f4f4;--color-bg-elevated: #ffffff;--color-border: #e8e8e8;--color-border-subtle: #f0f0f0;--color-text: #181818;--color-text-muted: #6b6b6b;--color-text-faint: #9ca3af;--color-primary: #181818;--color-primary-hover: #333333;--color-primary-fg: #ffffff;--color-success: #22c55e;--color-info: #3b82f6;--font-ui: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 9999px;--shadow-sm: 0 1px 2px rgba(24, 24, 24, .04), 0 1px 3px rgba(24, 24, 24, .06);--shadow-md: 0 4px 16px rgba(24, 24, 24, .06), 0 2px 4px rgba(24, 24, 24, .04);--shadow-lg: 0 12px 40px rgba(24, 24, 24, .08), 0 4px 12px rgba(24, 24, 24, .04);--shadow-focus: 0 2px 12px rgba(24, 24, 24, .06), 0 0 0 1px rgba(24, 24, 24, .04);--ease-spring: cubic-bezier(.34, 1.2, .64, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--page-max: 1080px;--section-gap: 96px}@media(prefers-color-scheme:dark){:root{--color-bg: #181818;--color-bg-subtle: #1f1f1f;--color-bg-muted: #262626;--color-bg-elevated: #222222;--color-border: #333333;--color-border-subtle: #2a2a2a;--color-text: #f5f5f5;--color-text-muted: #a3a3a3;--color-text-faint: #737373;--color-primary: #f5f5f5;--color-primary-hover: #e5e5e5;--color-primary-fg: #181818;--color-success: #4ade80;--color-info: #60a5fa;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .24), 0 1px 3px rgba(0, 0, 0, .16);--shadow-md: 0 4px 16px rgba(0, 0, 0, .28), 0 2px 4px rgba(0, 0, 0, .16);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .36), 0 4px 12px rgba(0, 0, 0, .2);--shadow-focus: 0 2px 16px rgba(0, 0, 0, .32), 0 0 0 1px rgba(255, 255, 255, .06)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-ui);font-size:14px;line-height:1.5;color:var(--color-text);background:var(--color-bg)}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}img{display:block;max-width:100%}.page{min-height:100vh}.container{width:min(100% - 40px,var(--page-max));margin-inline:auto}.section-label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint);margin-bottom:12px}.section-title{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;letter-spacing:-.03em;line-height:1.15;color:var(--color-text);margin-bottom:12px}.section-lead{font-family:var(--font-serif);font-size:clamp(1rem,2vw,1.125rem);line-height:1.65;color:var(--color-text-muted);max-width:52ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-pill);font-size:13px;font-weight:500;border:1px solid transparent;transition:background .2s var(--ease-out),border-color .2s var(--ease-out),box-shadow .2s var(--ease-out),color .2s var(--ease-out)}.btn-primary{background:var(--color-primary);color:var(--color-primary-fg)}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-md)}.btn-ghost{background:transparent;border-color:var(--color-border);color:var(--color-text)}.btn-ghost:hover{background:var(--color-bg-muted);border-color:var(--color-text-faint)}.card{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px}.card-elevated{background:var(--color-bg-elevated);box-shadow:var(--shadow-sm)}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fade-up .5s var(--ease-out) both}.animate-in-delay-1{animation-delay:.08s}.animate-in-delay-2{animation-delay:.16s}.animate-in-delay-3{animation-delay:.24s}
