:root{--indigo-50:#eef2ff;--indigo-100:#e0e7ff;--indigo-200:#c7d2fe;--indigo-300:#a5b4fc;--indigo-400:#818cf8;--indigo-500:#6366f1;--indigo-600:#4f46e5;--indigo-700:#4338ca;--indigo-800:#3730a3;--indigo-900:#312e81;--indigo-950:#1e1b4b;--flare-50:#fff1f2;--flare-100:#ffe4e6;--flare-200:#fecdd3;--flare-300:#fda4af;--flare-400:#fb7185;--flare-500:#f43f5e;--flare-600:#e11d48;--flare-700:#be123c;--emerald-50:#ecfdf5;--emerald-100:#d1fae5;--emerald-200:#a7f3d0;--emerald-300:#6ee7b7;--emerald-400:#34d399;--emerald-500:#10b981;--emerald-600:#059669;--emerald-700:#047857;--amber-50:#fffbeb;--amber-100:#fef3c7;--amber-200:#fde68a;--amber-300:#fcd34d;--amber-400:#fbbf24;--amber-500:#f59e0b;--amber-600:#d97706;--amber-700:#b45309;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--slate-950:#020617;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif:"Georgia", "Times New Roman", serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Code", "JetBrains Mono", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--text-7xl:4.5rem;--leading-tight:1.1;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.025em;--tracking-wider:.05em;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0f172a0d;--shadow-sm:0 1px 3px 0 #0f172a1a, 0 1px 2px -1px #0f172a1a;--shadow-md:0 4px 6px -1px #0f172a1a, 0 2px 4px -2px #0f172a1a;--shadow-lg:0 10px 15px -3px #0f172a1a, 0 4px 6px -4px #0f172a1a;--shadow-xl:0 20px 25px -5px #0f172a1a, 0 8px 10px -6px #0f172a1a;--shadow-glow:0 0 0 3px #6366f126;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.32s;--animate-fade-in:df-fade-in var(--duration-normal) var(--ease-out) both;--animate-slide-up:df-slide-up var(--duration-normal) var(--ease-out) both;--animate-scale-in:df-scale-in var(--duration-fast) var(--ease-spring) both;--container-max:1200px;--container-narrow:720px;--header-height:64px;--z-base:1;--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500;--color-bg:var(--slate-50);--color-bg-subtle:var(--slate-100);--color-surface:#fff;--color-surface-raised:#fff;--color-surface-sunken:var(--slate-100);--color-overlay:#0f172a66;--color-text:var(--slate-900);--color-text-secondary:var(--slate-600);--color-text-tertiary:var(--slate-500);--color-text-inverse:#fff;--color-text-on-primary:#fff;--color-border:var(--slate-200);--color-border-strong:var(--slate-300);--color-border-focus:var(--indigo-500);--color-primary:var(--indigo-600);--color-primary-hover:var(--indigo-700);--color-primary-active:var(--indigo-800);--color-primary-subtle:var(--indigo-50);--color-primary-subtle-text:var(--indigo-700);--color-accent:var(--flare-500);--color-accent-hover:var(--flare-600);--color-accent-subtle:var(--flare-50);--color-accent-subtle-text:var(--flare-700);--color-success:var(--emerald-600);--color-success-subtle:var(--emerald-50);--color-success-text:var(--emerald-700);--color-warning:var(--amber-500);--color-warning-subtle:var(--amber-50);--color-warning-text:var(--amber-700);--color-danger:var(--flare-600);--color-danger-subtle:var(--flare-50);--color-danger-text:var(--flare-700);--color-info:var(--indigo-600);--color-info-subtle:var(--indigo-50);--color-info-text:var(--indigo-700);--button-bg:var(--color-primary);--button-bg-hover:var(--color-primary-hover);--button-text:var(--color-text-on-primary);--button-border:transparent;--button-secondary-bg:var(--slate-100);--button-secondary-bg-hover:var(--slate-200);--button-secondary-text:var(--slate-800);--button-ghost-text:var(--color-text-secondary);--button-ghost-bg-hover:var(--slate-100);--input-bg:var(--color-surface);--input-border:var(--color-border-strong);--input-border-focus:var(--color-border-focus);--input-text:var(--color-text);--card-bg:var(--color-surface);--card-border:var(--color-border);--card-shadow:var(--shadow-sm);--focus-ring:0 0 0 3px #6366f166;--focus-ring-offset:2px}@keyframes df-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes df-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes df-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){:root{--animate-fade-in:none;--animate-slide-up:none;--animate-scale-in:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root[data-theme=dark]{--color-bg:var(--slate-950);--color-bg-subtle:var(--slate-900);--color-surface:var(--slate-900);--color-surface-raised:var(--slate-800);--color-surface-sunken:var(--slate-950);--color-overlay:#0009;--color-text:var(--slate-100);--color-text-secondary:var(--slate-400);--color-text-tertiary:var(--slate-500);--color-text-inverse:var(--slate-900);--color-text-on-primary:#fff;--color-border:var(--slate-800);--color-border-strong:var(--slate-700);--color-border-focus:var(--indigo-400);--color-primary:var(--indigo-500);--color-primary-hover:var(--indigo-400);--color-primary-active:var(--indigo-300);--color-primary-subtle:var(--indigo-950);--color-primary-subtle-text:var(--indigo-300);--color-accent:var(--flare-400);--color-accent-hover:var(--flare-300);--color-accent-subtle:#f43f5e1f;--color-accent-subtle-text:var(--flare-300);--color-success:var(--emerald-400);--color-success-subtle:#10b9811f;--color-success-text:var(--emerald-300);--color-warning:var(--amber-400);--color-warning-subtle:#f59e0b1f;--color-warning-text:var(--amber-300);--color-danger:var(--flare-400);--color-danger-subtle:#f43f5e1f;--color-danger-text:var(--flare-300);--color-info:var(--indigo-400);--color-info-subtle:var(--indigo-950);--color-info-text:var(--indigo-300);--button-bg:var(--color-primary);--button-bg-hover:var(--color-primary-hover);--button-text:var(--color-text-on-primary);--button-secondary-bg:var(--slate-800);--button-secondary-bg-hover:var(--slate-700);--button-secondary-text:var(--slate-100);--button-ghost-text:var(--color-text-secondary);--button-ghost-bg-hover:var(--slate-800);--input-bg:var(--slate-950);--input-border:var(--slate-700);--input-border-focus:var(--indigo-400);--input-text:var(--color-text);--card-bg:var(--color-surface);--card-border:var(--color-border);--card-shadow:0 4px 6px -1px #0000004d, 0 2px 4px -2px #0000004d;--shadow-xs:0 1px 2px 0 #0000004d;--shadow-sm:0 1px 3px 0 #0006, 0 1px 2px -1px #0006;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -2px #0006;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0006;--shadow-xl:0 20px 25px -5px #00000080, 0 8px 10px -6px #00000080;--shadow-glow:0 0 0 3px #6366f140;--focus-ring:0 0 0 3px #818cf873}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:var(--slate-950);--color-bg-subtle:var(--slate-900);--color-surface:var(--slate-900);--color-surface-raised:var(--slate-800);--color-surface-sunken:var(--slate-950);--color-overlay:#0009;--color-text:var(--slate-100);--color-text-secondary:var(--slate-400);--color-text-tertiary:var(--slate-500);--color-text-inverse:var(--slate-900);--color-text-on-primary:#fff;--color-border:var(--slate-800);--color-border-strong:var(--slate-700);--color-border-focus:var(--indigo-400);--color-primary:var(--indigo-500);--color-primary-hover:var(--indigo-400);--color-primary-active:var(--indigo-300);--color-primary-subtle:var(--indigo-950);--color-primary-subtle-text:var(--indigo-300);--color-accent:var(--flare-400);--color-accent-hover:var(--flare-300);--color-accent-subtle:#f43f5e1f;--color-accent-subtle-text:var(--flare-300);--color-success:var(--emerald-400);--color-success-subtle:#10b9811f;--color-success-text:var(--emerald-300);--color-warning:var(--amber-400);--color-warning-subtle:#f59e0b1f;--color-warning-text:var(--amber-300);--color-danger:var(--flare-400);--color-danger-subtle:#f43f5e1f;--color-danger-text:var(--flare-300);--color-info:var(--indigo-400);--color-info-subtle:var(--indigo-950);--color-info-text:var(--indigo-300);--button-bg:var(--color-primary);--button-bg-hover:var(--color-primary-hover);--button-text:var(--color-text-on-primary);--button-secondary-bg:var(--slate-800);--button-secondary-bg-hover:var(--slate-700);--button-secondary-text:var(--slate-100);--button-ghost-text:var(--color-text-secondary);--button-ghost-bg-hover:var(--slate-800);--input-bg:var(--slate-950);--input-border:var(--slate-700);--input-border-focus:var(--indigo-400);--input-text:var(--color-text);--card-bg:var(--color-surface);--card-border:var(--color-border);--card-shadow:0 4px 6px -1px #0000004d, 0 2px 4px -2px #0000004d;--focus-ring:0 0 0 3px #818cf873}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-bg);min-height:100dvh;transition:background-color var(--duration-normal) var(--ease-out), color var(--duration-normal) var(--ease-out)}#root{min-height:100dvh}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}button:disabled{cursor:not-allowed}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{line-height:var(--leading-tight);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-text)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{line-height:var(--leading-relaxed)}ul,ol{padding-left:var(--space-6)}small{font-size:var(--text-sm)}code,kbd,samp,pre{font-family:var(--font-mono);font-size:var(--text-sm)}hr{border:0;border-top:1px solid var(--color-border);margin:var(--space-8) 0}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}::selection{background:var(--indigo-200);color:var(--indigo-950)}:root[data-theme=dark] ::selection{background:var(--indigo-500);color:#fff}@media (pointer:fine){*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full);border:2px solid var(--color-bg)}}.df-animate-fade-in{animation:var(--animate-fade-in)}.df-animate-slide-up{animation:var(--animate-slide-up)}.df-animate-scale-in{animation:var(--animate-scale-in)}[dir=rtl] .df-icon-flip{transform:scaleX(-1)}.df-container{width:100%;max-width:var(--container-max);padding-inline:var(--space-4);margin-inline:auto}@media (width>=640px){.df-container{padding-inline:var(--space-6)}}@media (width>=1024px){.df-container{padding-inline:var(--space-8)}}.df-stack{flex-direction:column;display:flex}.df-row{align-items:center;display:flex}.df-wrap{flex-wrap:wrap}.df-gap-1{gap:var(--space-1)}.df-gap-2{gap:var(--space-2)}.df-gap-3{gap:var(--space-3)}.df-gap-4{gap:var(--space-4)}.df-grow{flex-grow:1}.df-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding-inline:var(--space-5);font-size:var(--text-sm);font-weight:var(--weight-semibold);border-radius:var(--radius-md);border:1px solid var(--button-border);background:var(--button-bg);color:var(--button-text);transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;line-height:1;display:inline-flex}.df-btn svg{flex-shrink:0}.df-btn:hover:not(:disabled){background:var(--button-bg-hover)}.df-btn:active:not(:disabled){transform:scale(.97)}.df-btn:disabled{opacity:.5}.df-btn-secondary{background:var(--button-secondary-bg);color:var(--button-secondary-text);border-color:var(--color-border)}.df-btn-secondary:hover:not(:disabled){background:var(--button-secondary-bg-hover)}.df-btn-ghost{color:var(--button-ghost-text);background:0 0;border-color:#0000}.df-btn-ghost:hover:not(:disabled){background:var(--button-ghost-bg-hover)}.df-btn-danger{background:var(--color-danger);color:#fff;border-color:#0000}.df-btn-danger:hover:not(:disabled){background:var(--color-danger-hover,var(--flare-700))}.df-btn-sm{min-height:36px;padding-inline:var(--space-3);font-size:var(--text-xs)}.df-btn-lg{min-height:52px;padding-inline:var(--space-8);font-size:var(--text-base)}.df-btn-icon{width:44px;min-height:44px;padding:0}.df-btn-icon.df-btn-sm{width:36px;min-height:36px}.df-btn-block{width:100%}.df-btn[aria-pressed=true]{outline:2px solid var(--color-primary);outline-offset:2px}.df-input,.df-select,.df-textarea{width:100%;min-height:44px;padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--input-text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out)}.df-input:hover:not(:disabled),.df-select:hover:not(:disabled),.df-textarea:hover:not(:disabled){border-color:var(--color-border-strong)}.df-input:focus,.df-select:focus,.df-textarea:focus{border-color:var(--input-border-focus);box-shadow:var(--focus-ring);outline:none}.df-input:disabled,.df-select:disabled,.df-textarea:disabled{opacity:.6;cursor:not-allowed}.df-input::placeholder{color:var(--color-text-tertiary)}.df-field{gap:var(--space-2);flex-direction:column;display:flex}.df-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.df-help{font-size:var(--text-xs);color:var(--color-text-tertiary);line-height:var(--leading-normal)}.df-range{appearance:none;background:var(--color-bg-subtle);border-radius:var(--radius-full);outline:none;width:100%;height:6px}.df-range::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;border:2px solid var(--color-surface);width:18px;height:18px;box-shadow:var(--shadow-sm);transition:transform var(--duration-fast) var(--ease-spring);border-radius:50%}.df-range::-webkit-slider-thumb:hover{transform:scale(1.15)}.df-range::-moz-range-thumb{background:var(--color-primary);cursor:pointer;border:2px solid var(--color-surface);width:18px;height:18px;box-shadow:var(--shadow-sm);border-radius:50%}.df-check{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer}.df-color{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);cursor:pointer;background:0 0;width:44px;height:44px;padding:0}.df-color::-webkit-color-swatch-wrapper{padding:4px}.df-color::-webkit-color-swatch{border-radius:var(--radius-sm);border:none}.df-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:var(--space-6);transition:box-shadow var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out)}.df-card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-2px)}.df-card-pad-sm{padding:var(--space-4)}.df-card-pad-lg{padding:var(--space-8)}.df-badge{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);border-radius:var(--radius-full);background:var(--color-primary-subtle);color:var(--color-primary-subtle-text);white-space:nowrap;line-height:1.4;display:inline-flex}.df-badge-icon{flex-shrink:0}.df-badge-success{background:var(--color-success-subtle);color:var(--color-success-text)}.df-badge-warning{background:var(--color-warning-subtle);color:var(--color-warning-text)}.df-badge-danger{background:var(--color-danger-subtle);color:var(--color-danger-text)}.df-badge-info{background:var(--color-info-subtle);color:var(--color-info-text)}.df-badge-neutral{background:var(--color-bg-subtle);color:var(--color-text-secondary)}.df-spinner{border:2px solid var(--color-border-strong);border-top-color:var(--color-primary);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite df-spin;display:inline-block}.df-spinner-sm{border-width:2px;width:12px;height:12px}.df-spinner-lg{border-width:3px;width:28px;height:28px}@keyframes df-spin{to{transform:rotate(360deg)}}.df-status{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--color-text-secondary);background:var(--color-surface-sunken);border-radius:var(--radius-md);display:flex}.df-status[aria-busy=true]{color:var(--color-text)}.df-alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-sm);line-height:var(--leading-normal);border:1px solid;display:flex}.df-alert-icon{flex-shrink:0;margin-top:1px}.df-alert-content{flex:1}.df-alert-success{background:var(--color-success-subtle);border-color:var(--emerald-300);color:var(--color-success-text)}.df-alert-warning{background:var(--color-warning-subtle);border-color:var(--amber-300);color:var(--color-warning-text)}.df-alert-info{background:var(--color-info-subtle);border-color:var(--indigo-200);color:var(--color-info-text)}.df-alert-danger{background:var(--color-danger-subtle);border-color:var(--flare-200);color:var(--color-danger-text)}.df-segmented{gap:var(--space-2);padding:var(--space-2);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.df-segmented .df-btn{color:var(--color-text-secondary);gap:var(--space-1);background:0 0;border-color:#0000;min-height:40px}.df-segmented .df-btn svg{flex-shrink:0}.df-segmented .df-btn:hover:not(:disabled):not([aria-pressed=true]){background:var(--color-surface);color:var(--color-text)}.df-segmented .df-btn:hover:not(:disabled):not([aria-pressed=true]) svg{color:var(--color-text)}.df-segmented .df-btn[aria-pressed=true]{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm);border-color:var(--color-border);outline:none}.df-segmented .df-btn[aria-pressed=true] svg{color:var(--color-primary)}.df-drop{align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);border:2px dashed var(--color-border-strong);border-radius:var(--radius-xl);text-align:center;cursor:pointer;transition:border-color var(--duration-normal) var(--ease-out), background var(--duration-normal) var(--ease-out);background:var(--color-surface-sunken);flex-direction:column;display:flex}.df-drop:hover{border-color:var(--color-primary);background:var(--color-primary-subtle)}.df-drop:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.df-drop input[type=file]{opacity:1;max-width:100%;margin:var(--space-3) auto 0;position:static}.df-drop-icon{width:48px;height:48px;color:var(--color-text-tertiary)}.df-drop:hover .df-drop-icon{color:var(--color-primary)}.df-file-list{gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.df-file-item{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);display:flex}.df-file-item:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-xs)}.df-file-icon{color:var(--color-primary);flex-shrink:0}.df-file-name{font-weight:var(--weight-medium);font-size:var(--text-sm);overflow-wrap:anywhere;min-width:0}.df-disclosure{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);transition:box-shadow var(--duration-normal) var(--ease-out);overflow:hidden}.df-disclosure+.df-disclosure{margin-top:var(--space-3)}.df-disclosure[open]{box-shadow:var(--shadow-sm)}.df-disclosure>summary{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);font-weight:var(--weight-semibold);font-size:var(--text-base);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--duration-fast) var(--ease-out);list-style:none;display:flex}.df-disclosure>summary::-webkit-details-marker{display:none}.df-disclosure>summary:hover{background:var(--color-surface-sunken)}.df-disclosure>summary:after{content:"";border-right:2px solid var(--color-text-tertiary);border-bottom:2px solid var(--color-text-tertiary);width:8px;height:8px;transition:transform var(--duration-normal) var(--ease-out);margin-right:var(--space-1);flex-shrink:0;transform:rotate(45deg)}.df-disclosure[open]>summary:after{transform:rotate(225deg)}.df-disclosure[open]>summary{border-bottom:1px solid var(--color-border)}.df-disclosure-body{padding:var(--space-5)}.df-toolbar{gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;display:flex}.df-tool-group{gap:var(--space-1);font-size:var(--text-sm);align-items:center;display:flex}.df-tool-group .df-btn{min-height:40px}.df-tool-group .df-btn[aria-pressed=true]{background:var(--color-primary);color:var(--color-text-on-primary);border-color:#0000;outline:none}.df-color-swatch{border-radius:var(--radius-md);border:2px solid var(--color-border);cursor:pointer;width:32px;height:32px;transition:transform var(--duration-fast) var(--ease-spring), border-color var(--duration-fast) var(--ease-out)}.df-color-swatch:hover{transform:scale(1.1)}.df-color-swatch[aria-pressed=true]{border-color:var(--color-text);box-shadow:var(--shadow-sm);transform:scale(1.1)}.df-page-canvas{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--slate-200);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.df-page-canvas canvas{display:block}.df-annotation-marker{box-sizing:border-box;border:2px solid;border-radius:2px;position:absolute}.df-annotation-remove{background:var(--color-danger);color:#fff;border:2px solid var(--color-surface);cursor:pointer;width:22px;height:22px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:flex;position:absolute;top:-10px;right:-10px}.df-skip-link{left:-9999px;top:var(--space-2);z-index:var(--z-toast);padding:var(--space-3) var(--space-4);background:var(--color-primary);color:var(--color-text-on-primary);border-radius:var(--radius-md);font-weight:var(--weight-semibold);font-size:var(--text-sm);position:absolute}.df-skip-link:focus{left:var(--space-2);text-decoration:none}.df-theme-toggle{border-radius:var(--radius-md);background:var(--button-secondary-bg);width:44px;height:44px;color:var(--color-text-secondary);border:1px solid var(--color-border);transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.df-theme-toggle:hover{background:var(--button-secondary-bg-hover);color:var(--color-text)}.df-theme-toggle svg{width:20px;height:20px}.df-text-secondary{color:var(--color-text-secondary)}.df-text-tertiary{color:var(--color-text-tertiary)}.df-text-center{text-align:center}.df-text-sm{font-size:var(--text-sm)}.df-text-xs{font-size:var(--text-xs)}.df-font-mono{font-family:var(--font-mono)}.df-mt-0{margin-top:0}.df-mt-2{margin-top:var(--space-2)}.df-mt-4{margin-top:var(--space-4)}.df-mt-6{margin-top:var(--space-6)}.df-mt-8{margin-top:var(--space-8)}.df-mb-0{margin-bottom:0}.df-mb-2{margin-bottom:var(--space-2)}.df-mb-4{margin-bottom:var(--space-4)}.df-mb-6{margin-bottom:var(--space-6)}.df-hidden{display:none}.df-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.df-fade-in{animation:df-fade-in var(--duration-slow) var(--ease-out)}.df-workspace{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--space-6);margin-top:var(--space-8);gap:var(--space-5);flex-direction:column;display:flex}@media (width>=640px){.df-workspace{padding:var(--space-8)}}.df-section-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.df-section-head h2{margin:0}.df-rotation-picker{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);gap:var(--space-5);background:var(--color-surface-sunken);flex-wrap:wrap;align-items:center;display:flex}.df-rotation-picker legend{font-weight:var(--weight-semibold);font-size:var(--text-sm);padding:0 var(--space-2);color:var(--color-text-secondary)}.df-rotation-picker label{gap:var(--space-2);font-size:var(--text-sm);cursor:pointer;align-items:center;display:flex}.df-capability-meta{gap:var(--space-3) var(--space-6);padding:var(--space-5);background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:1fr;display:grid}@media (width>=640px){.df-capability-meta{grid-template-columns:repeat(2,1fr)}}.df-capability-meta>div{gap:var(--space-1);flex-direction:column;display:flex}.df-capability-meta dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-text-tertiary);font-weight:var(--weight-semibold)}.df-capability-meta dd{font-size:var(--text-sm);color:var(--color-text);margin:0}.df-consent-panel{background:var(--color-warning-subtle);border:1px solid var(--amber-300);border-radius:var(--radius-lg);padding:var(--space-6);gap:var(--space-3);flex-direction:column;display:flex}.df-consent-panel h2{font-size:var(--text-xl);color:var(--color-warning-text);margin:0}.df-consent-panel p{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0}.df-consent-ack{gap:var(--space-3);font-size:var(--text-sm);cursor:pointer;align-items:center;display:flex}.df-pdf-editor{padding:var(--space-6) 0;gap:var(--space-4);flex-direction:column;display:flex}.df-editor-header{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.df-editor-header h2{margin:0}.df-editor-zoom,.df-editor-pages{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);display:flex}.df-pages-container{gap:var(--space-4);flex-direction:column;align-items:center;display:flex}.df-page-tabs{gap:var(--space-1);padding:var(--space-2);background:var(--color-surface-sunken);border-radius:var(--radius-md);border:1px solid var(--color-border);flex-wrap:wrap;display:flex}.df-tab{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);background:0 0;border:1px solid #0000}.df-tab:hover{background:var(--color-surface);color:var(--color-text)}.df-tab-active{background:var(--color-primary);color:var(--color-text-on-primary);font-weight:var(--weight-semibold)}.df-annotation-remove-btn{background:var(--color-danger);color:#fff;border:2px solid var(--color-surface);cursor:pointer;width:24px;height:24px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:flex}.df-editor-panel{background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.df-editor-panel label{gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:var(--weight-medium);flex-direction:column;display:flex}.df-editor-panel fieldset{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.df-editor-panel legend{font-weight:var(--weight-semibold);font-size:var(--text-sm);padding:0 var(--space-2);color:var(--color-text-secondary)}.df-mode-group{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.df-item-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--text-sm);display:flex}.df-item-row+.df-item-row{margin-top:var(--space-2)}.df-signature-canvas{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);touch-action:none;max-width:100%}.df-signature-disclaimer{background:var(--color-warning-subtle);border:1px solid var(--amber-300);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-xs);color:var(--color-warning-text)}.df-dirty-warning{color:var(--color-danger);font-weight:var(--weight-semibold);font-size:var(--text-sm);align-items:center;gap:var(--space-2);display:flex}@media (width<=639px){.df-editor-header{flex-direction:column;align-items:stretch}.df-page-canvas{max-width:100%;overflow-x:auto}}.df-nav{gap:var(--space-1);flex-wrap:wrap;align-items:center;display:flex}.df-nav-link{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);text-decoration:none}.df-nav-link:hover{background:var(--color-surface-hover);color:var(--color-text)}.df-nav-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.df-footer{border-top:1px solid var(--color-border);background:var(--color-surface);padding:var(--space-8) var(--space-4) var(--space-4)}.df-footer-inner{gap:var(--space-8);flex-wrap:wrap;justify-content:space-between;max-width:1200px;margin-inline:auto;display:flex}.df-footer-brand{flex:1;min-width:200px}.df-brand-footer{align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text);margin-bottom:var(--space-2);text-decoration:none;display:inline-flex}.df-brand-footer .df-brand-mark{width:24px;height:24px}.df-footer-desc{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2);max-width:280px}.df-footer-tagline{font-size:var(--text-xs);color:var(--color-text-tertiary)}.df-footer-cols{gap:var(--space-8);flex-wrap:wrap;display:flex}.df-footer-col{min-width:140px}.df-footer-heading{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);margin-bottom:var(--space-3)}.df-footer-nav{gap:var(--space-2);flex-flow:column wrap;display:flex}.df-footer-link{color:var(--color-text-secondary);font-size:var(--text-sm);transition:color var(--duration-fast) var(--ease-out);text-decoration:none}.df-footer-link:hover{color:var(--color-text);text-decoration:underline}.df-footer-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.df-footer-bottom{max-width:1200px;margin:var(--space-6) auto 0;padding-top:var(--space-4);border-top:1px solid var(--color-border);justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-tertiary);flex-wrap:wrap;display:flex}.df-footer-tech{color:var(--color-text-tertiary)}@media (width<=639px){.df-footer-inner{gap:var(--space-6);flex-direction:column}.df-footer-cols{gap:var(--space-6)}.df-footer-bottom{text-align:center;flex-direction:column}.df-header-inner{gap:var(--space-2);flex-wrap:wrap}.df-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:flex-start;gap:var(--space-1);flex-wrap:nowrap;order:3;width:100%;overflow-x:auto}.df-nav::-webkit-scrollbar{display:none}.df-nav-link{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);white-space:nowrap;flex-shrink:0}}.df-section{padding:var(--space-6) var(--space-4);max-width:var(--container-max);margin-inline:auto}@media (width>=640px){.df-section{padding:var(--space-8) var(--space-4)}}.df-section-tools{padding-top:var(--space-2)}@media (width>=640px){.df-section-tools{padding-top:var(--space-4)}}.df-section-title{font-size:var(--text-2xl);font-weight:var(--weight-bold);margin-bottom:var(--space-1)}@media (width>=640px){.df-section-title{font-size:var(--text-3xl);margin-bottom:var(--space-2)}}.df-section-lead{color:var(--color-text-secondary);font-size:var(--text-base);margin-bottom:var(--space-4)}@media (width>=640px){.df-section-lead{font-size:var(--text-lg);margin-bottom:var(--space-6)}}.df-hero-cta{gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.df-guide-grid{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.df-guide-card{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:inherit;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);text-decoration:none;display:block}.df-guide-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.df-guide-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.df-guide-card h3{font-size:var(--text-base);font-weight:var(--weight-semibold);margin-bottom:var(--space-1)}.df-guide-card p{color:var(--color-text-secondary);font-size:var(--text-xs);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.df-guide{max-width:760px;padding:var(--space-6) var(--space-4);margin-inline:auto}.df-breadcrumb{gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.df-breadcrumb a{color:var(--color-text-secondary);text-decoration:none}.df-breadcrumb a:hover{color:var(--color-text);text-decoration:underline}.df-guide-header{margin-bottom:var(--space-6)}.df-guide-header h1{font-size:var(--text-4xl);font-weight:var(--weight-bold);margin-bottom:var(--space-2)}.df-guide-lead{color:var(--color-text-secondary);font-size:var(--text-lg)}.df-guide-content{line-height:1.7}.df-guide-content h2{font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin-top:var(--space-6);margin-bottom:var(--space-3)}.df-guide-content h3{font-size:var(--text-lg);font-weight:var(--weight-semibold);margin-top:var(--space-4);margin-bottom:var(--space-2)}.df-guide-content p{margin-bottom:var(--space-3)}.df-guide-content ul,.df-guide-content ol{margin-bottom:var(--space-3);padding-left:var(--space-5)}.df-guide-content li{margin-bottom:var(--space-1)}.df-guide-cta{margin:var(--space-8) 0;text-align:center}.df-legal-page{max-width:760px;padding:var(--space-6) var(--space-4);margin-inline:auto;line-height:1.7}.df-legal-page h1{font-size:var(--text-4xl);font-weight:var(--weight-bold);margin-bottom:var(--space-4)}.df-legal-page h2{font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin-top:var(--space-6);margin-bottom:var(--space-3)}.df-legal-page p{margin-bottom:var(--space-3)}.df-legal-page ul{margin-bottom:var(--space-3);padding-left:var(--space-5)}.df-affiliate-disclosure{background:var(--color-info-subtle);border:1px solid var(--color-info);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);margin-bottom:var(--space-4)}.df-affiliate-disclosure code{background:var(--color-surface);padding:0 var(--space-1);border-radius:var(--radius-sm);font-size:var(--text-xs)}.df-ad-slot{margin:var(--space-6) 0;min-height:100px}.df-ad-container{width:100%}.df-table{border-collapse:collapse;width:100%;margin:var(--space-4) 0}.df-table th,.df-table td{border:1px solid var(--color-border);padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--text-sm)}.df-table th{background:var(--color-surface);font-weight:var(--weight-semibold)}.df-form{max-width:600px}.df-contact-page{max-width:900px}.df-contact-header{text-align:center;margin-bottom:var(--space-8)}.df-contact-icon-wrap{border-radius:var(--radius-full);background:var(--color-primary-subtle);width:72px;height:72px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:inline-flex}.df-contact-icon{color:var(--color-primary)}.df-contact-intro{color:var(--color-text-secondary);max-width:560px;margin-inline:auto}.df-contact-grid{gap:var(--space-8);grid-template-columns:1fr 1.5fr;align-items:start;display:grid}.df-contact-info{gap:var(--space-4);flex-direction:column;display:flex}.df-contact-info-card{gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.df-contact-info-card strong{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin-bottom:var(--space-1);display:block}.df-contact-info-card span{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.5}.df-contact-info-card a{color:var(--color-primary);text-decoration:none}.df-contact-info-card a:hover{text-decoration:underline}.df-contact-info-icon{color:var(--color-primary);flex-shrink:0}.df-contact-form-wrap{min-width:0}.df-contact-form{gap:var(--space-4);padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;display:flex}.df-form-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.df-contact-form .df-label{align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-medium);margin-bottom:var(--space-1);display:inline-flex}.df-contact-form .df-label svg{color:var(--color-text-tertiary)}.df-textarea{resize:vertical;min-height:120px;font-family:inherit}@media (width<=767px){.df-contact-grid{gap:var(--space-6);grid-template-columns:1fr}.df-form-row{grid-template-columns:1fr}}.df-loading{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-8);color:var(--color-text-secondary);display:flex}.df-lang-switcher{align-items:center;gap:var(--space-2);display:inline-flex}.df-lang-icon{color:var(--color-text-secondary);flex-shrink:0}.df-select-sm{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer}.df-select-sm:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}[dir=rtl] .df-header-inner,[dir=rtl] .df-nav{flex-direction:row-reverse}[dir=rtl] .df-footer-nav{flex-direction:column}[dir=rtl] .df-breadcrumb{flex-direction:row-reverse}[dir=rtl] .df-guide-content ul,[dir=rtl] .df-guide-content ol{padding-left:0;padding-right:var(--space-5)}[dir=rtl] .df-hero-cta{flex-direction:row-reverse}[dir=rtl] .df-skip-link{left:auto;right:-9999px}[dir=rtl] .df-skip-link:focus{right:var(--space-4)}.df-conversion-options{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0;background:var(--color-surface)}.df-conversion-options legend{font-size:var(--text-sm);color:var(--color-text-secondary);padding:0 var(--space-2);font-weight:600}.df-conversion-options label{font-size:var(--text-sm);align-items:center;display:inline-flex}.df-conversion-results{margin:var(--space-3) 0;gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.df-conversion-result{display:inline-flex}.df-md-preview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:300px;padding:var(--space-3);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;word-break:break-word;overflow:auto}.df-tool-panel,.df-conversion-panel{gap:var(--space-4);padding:var(--space-4) 0;flex-direction:column;display:flex}.df-markdown-preview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);max-height:400px;font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;word-break:break-word;color:var(--color-text);line-height:1.6;overflow:auto}.df-tool-category{margin:var(--space-4) 0}.df-tool-category-title{align-items:center;gap:var(--space-2);font-size:var(--text-lg);color:var(--color-text-secondary);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);font-weight:600;display:flex}.df-tool-category-title svg{color:var(--color-primary)}.df-tool-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.df-tool-card{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:inherit;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);text-decoration:none;display:flex}.df-tool-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.df-tool-card:active{transform:translateY(0)}.df-tool-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.df-tool-card-icon{background:var(--color-primary-subtle,#4f46e51a);border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.df-tool-icon{width:22px;height:22px}.df-tool-card-body{flex-direction:column;gap:2px;min-width:0;display:flex}.df-tool-card-title{font-size:var(--text-sm);color:var(--color-text);font-weight:600}.df-tool-card-desc{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.4}.df-tools-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-2);display:flex}.df-tools-cta{white-space:nowrap;flex-shrink:0}@media (width<=639px){.df-tools-cta{display:none}}.df-why-section{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-5);margin:var(--space-4) 0}@media (width>=640px){.df-why-section{padding:var(--space-5) var(--space-6);margin:var(--space-6) 0}}.df-why-strip{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=768px){.df-why-strip{gap:var(--space-4);grid-template-columns:repeat(4,1fr)}}.df-why-item{padding:var(--space-2);flex-direction:column;gap:2px;display:flex}.df-why-item .df-tool-icon{width:20px;height:20px;color:var(--color-primary);margin-bottom:2px}.df-why-item strong{font-size:var(--text-sm);color:var(--color-text)}.df-why-item span{font-size:var(--text-xs);color:var(--color-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}[dir=rtl] .df-tool-card{flex-direction:row-reverse}[dir=rtl] .df-tool-card-icon{margin-left:var(--space-3);margin-right:0}@media (width<=640px){.df-tool-grid{gap:var(--space-2);grid-template-columns:repeat(2,1fr)}.df-tool-card{padding:var(--space-3);gap:var(--space-2)}.df-tool-card-icon{width:32px;height:32px}.df-tool-icon{width:18px;height:18px}.df-tool-card-title{font-size:var(--text-xs)}.df-tool-card-desc{display:none}.df-why-section{padding:var(--space-3) var(--space-4)}}.df-form-fields{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.df-field-group{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.df-field-group:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle,#3b82f626)}.df-required{color:var(--color-danger);margin-left:var(--space-1);font-weight:600}.df-readonly{background:var(--color-surface-sunken);color:var(--color-text-secondary);cursor:not-allowed}.df-comparison{gap:var(--space-4);margin-top:var(--space-3);flex-direction:column;display:flex}.df-comparison-item{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.df-comparison-label{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:500}.df-comparison-value{font-size:var(--text-base);color:var(--color-text)}.df-diff-result{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.df-diff-summary{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.df-diff-pages{gap:var(--space-4);flex-direction:column;display:flex}.df-diff-page{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.df-diff-page-title{padding:var(--space-2) var(--space-3);background:var(--color-surface-sunken);font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:600}.df-diff-lines{font-family:var(--font-mono);font-size:var(--text-xs);flex-direction:column;display:flex}.df-diff-line{gap:var(--space-2);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--color-border);line-height:1.5;display:flex}.df-diff-line:last-child{border-bottom:none}.df-diff-added{background:var(--color-success-subtle);color:var(--color-success-text)}.df-diff-removed{background:var(--color-danger-subtle);color:var(--color-danger-text)}.df-diff-modified{background:var(--color-warning-subtle);color:var(--color-warning-text)}.df-diff-marker{text-align:center;-webkit-user-select:none;user-select:none;flex-shrink:0;width:1.5em;font-weight:700}.df-diff-text{white-space:pre-wrap;word-break:break-word;flex:1}.df-scan-video{border-radius:var(--radius-md);aspect-ratio:16/9;object-fit:cover;background:#000;width:100%;max-width:100%}.df-scan-thumbnails{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.df-scan-thumb{align-items:center;gap:var(--space-1);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.df-scan-thumb img{object-fit:cover;border-radius:var(--radius-sm);width:100px;height:130px}@media (width<=640px){.df-scan-thumbnails{gap:var(--space-1)}.df-scan-thumb img{width:72px;height:96px}.df-diff-lines{font-size:10px}.df-diff-line{padding:var(--space-1)}.df-comparison-item{padding:var(--space-2)}}.df-crop-container{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.df-crop-canvas-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);max-width:100%;margin-inline:auto;position:relative;overflow:hidden}.df-crop-canvas-wrap canvas{max-width:100%;height:auto}.df-crop-info{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.df-crop-all-label{cursor:pointer}.df-app{flex-direction:column;min-height:100dvh;display:flex}.df-header{z-index:var(--z-sticky);justify-content:space-between;align-items:center;gap:var(--space-4);min-height:var(--header-height);padding-inline:var(--space-4);background:color-mix(in srgb, var(--color-surface) 85%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);display:flex;position:sticky;top:0}@media (width>=640px){.df-header{padding-inline:var(--space-6)}}@media (width>=1024px){.df-header{padding-inline:var(--space-8)}}.df-header-inner{width:100%;max-width:var(--container-max);justify-content:space-between;align-items:center;gap:var(--space-4);margin-inline:auto;display:flex}.df-brand{align-items:center;gap:var(--space-2);font-size:var(--text-xl);font-weight:var(--weight-extrabold);letter-spacing:var(--tracking-tight);color:var(--color-text);text-decoration:none;display:inline-flex}.df-brand:hover{text-decoration:none}.df-brand-mark{flex-shrink:0;width:32px;height:32px}.df-brand-accent{color:var(--color-accent)}.df-header-tag{font-size:var(--text-sm);color:var(--color-text-secondary)}@media (width<=639px){.df-header-tag{display:none}}.df-header-actions{align-items:center;gap:var(--space-2);display:flex}.df-main{width:100%;max-width:var(--container-max);padding:var(--space-2) var(--space-4) var(--space-16);flex:1;margin-inline:auto}@media (width>=640px){.df-main{padding-inline:var(--space-6);padding-top:var(--space-4)}}@media (width>=1024px){.df-main{padding-inline:var(--space-8);padding-top:var(--space-6)}}.df-hero{padding:0 0 var(--space-2)}@media (width>=900px){.df-hero{padding:var(--space-2) 0 var(--space-4)}}.df-hero-content{max-width:640px}.df-eyebrow{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-2)}.df-hero-title{letter-spacing:-.02em;margin-bottom:var(--space-2);font-size:clamp(1.5rem,3.5vw,2.5rem);line-height:1.15}.df-hero-title em{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-normal);color:var(--color-accent)}.df-hero-lead{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:52ch;margin-bottom:0;line-height:1.5}@media (width>=640px){.df-hero-lead{font-size:var(--text-base);line-height:var(--leading-relaxed)}}.df-trust-strip{margin:var(--space-3) 0 0;gap:var(--space-1) var(--space-3);flex-wrap:wrap;padding:0;list-style:none;display:flex}.df-trust-strip li{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-secondary);display:flex}@media (width>=640px){.df-trust-strip li{font-size:var(--text-sm);gap:var(--space-2)}}.df-trust-strip li:before{content:"";background:var(--color-success);border-radius:50%;flex-shrink:0;width:16px;height:16px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") 50%/10px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") 50%/10px no-repeat}.df-footer{border-top:1px solid var(--color-border);padding:var(--space-8) var(--space-4);color:var(--color-text-tertiary);font-size:var(--text-sm)}.df-footer-inner{max-width:var(--container-max);gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;margin-inline:auto;display:flex}
