.dashboard{max-width:80rem;margin:0 auto}.dashboard-hero{text-align:center;margin-bottom:3rem;padding:1.5rem 0 0}.hero-title{letter-spacing:-.035em;color:var(--text-primary);margin-bottom:1rem;font-size:2.5rem;font-weight:700;line-height:1.05}@media (width>=768px){.dashboard-hero{margin-bottom:4.5rem;padding-top:2.5rem}.hero-title{font-size:4.25rem}}.hero-description{color:var(--text-secondary);letter-spacing:-.01em;max-width:34rem;margin:0 auto 2.25rem;font-size:1.1875rem;line-height:1.45}@media (width>=640px){.hero-description{font-size:1.375rem}}.dashboard-search{max-width:30rem;margin:0 auto;position:relative}.dashboard-search-icon{color:var(--text-tertiary);pointer-events:none;position:absolute;top:50%;left:1.125rem;transform:translateY(-50%)}.dashboard-search input[type=search]{background:var(--bg-secondary);min-height:48px;box-shadow:none;border-color:#0000;border-radius:9999px;padding-left:2.875rem}.dashboard-search input[type=search]:focus{background:var(--bg-primary);border-color:var(--text-primary)}.dashboard-search-status:empty{display:none}.dashboard-search-status{text-align:center;color:var(--text-secondary);padding:1rem 0}.tools-section{margin-bottom:4rem}.tool-group+.tool-group{margin-top:2.5rem}.tool-group-title{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:1rem;font-size:1.5rem;font-weight:600}.dashboard .tools-grid{grid-template-columns:1fr;gap:.75rem;display:grid}@media (width>=560px){.dashboard .tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.dashboard .tools-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}}.tool-card{background:var(--bg-secondary);text-align:left;color:inherit;transition:background-color var(--transition-fast);cursor:pointer;border-radius:1.125rem;align-items:center;gap:1rem;padding:1.125rem;text-decoration:none;display:flex}@media (width>=640px){.tool-card{padding:1.375rem 1.25rem}}.tool-card:hover{background:var(--bg-tertiary)}.tool-card:focus-visible{outline:2px solid var(--text-primary);outline-offset:3px}@media (prefers-reduced-motion:reduce){.tool-card{transition:none}}.tool-icon{background:var(--bg-primary);width:2.75rem;height:2.75rem;color:var(--text-primary);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tool-icon svg{stroke-width:1.75px;width:1.375rem;height:1.375rem}.tool-card-text{min-width:0}.tool-title{letter-spacing:-.01em;color:var(--text-primary);margin-bottom:.125rem;font-size:1.0625rem;font-weight:600}.tool-description{color:var(--text-secondary);font-size:.9375rem;line-height:1.4}.info-banner{background:var(--bg-secondary);text-align:center;border-radius:1.5rem;flex-direction:column;align-items:center;gap:1.25rem;padding:2.5rem 1.5rem;display:flex}@media (width>=768px){.info-banner{padding:3.5rem 3rem}}.info-banner-icon{width:2.75rem;height:2.75rem;color:var(--text-primary);stroke-width:1.5px;flex-shrink:0}.banner-title{letter-spacing:-.03em;color:var(--text-primary);margin-bottom:.5rem;font-size:1.75rem;font-weight:700}@media (width>=768px){.banner-title{font-size:2.25rem}}.banner-description{color:var(--text-secondary);max-width:36rem;margin:0 auto 1.5rem;font-size:1.0625rem;line-height:1.5}.feature-badges{flex-wrap:wrap;justify-content:center;gap:.5rem;font-size:.875rem;list-style:none;display:flex}.feature-badge{border:1px solid var(--border-color);color:var(--text-primary);border-radius:9999px;padding:.375rem .875rem;font-weight:500}.feature-badge:before{content:"✓ ";color:var(--text-primary)}.start-files{max-width:36rem;margin:1rem auto 0}.sr-only-input{display:none}.start-files-prompt{border:1px dashed var(--border-color);color:var(--text-secondary);transition:border-color var(--transition-fast), background var(--transition-fast);border-radius:1rem;flex-wrap:wrap;justify-content:center;align-items:center;gap:.25rem .5rem;padding:.5rem 1rem;font-size:.9375rem;display:flex}.start-files-icon{color:var(--text-secondary);flex-shrink:0}.start-files-choose{font:inherit;color:var(--text-primary);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;min-height:44px;padding:.25rem .125rem;font-weight:600;text-decoration:underline;display:inline-flex}.start-files--dragging .start-files-prompt{border-style:solid;border-color:var(--text-primary);background:var(--bg-secondary);color:var(--text-primary)}.start-files-result{text-align:left;background:var(--bg-secondary);border-radius:1.125rem;padding:1rem}.start-files-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.start-files-title{color:var(--text-primary);overflow-wrap:anywhere;min-width:0;font-size:1rem;font-weight:600}.start-files-title:focus{outline:none}.start-files-title:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.start-files-clear{width:2.5rem;height:2.5rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.start-files-clear:hover{background:var(--bg-tertiary);color:var(--text-primary)}.start-files-hint{color:var(--text-secondary);margin:.25rem 0 .75rem;font-size:.875rem}.start-files-hint--warn{color:var(--warning-text);margin:.75rem 0 0}.start-files-tools{grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));gap:.5rem;list-style:none;display:grid}.start-files-tool{background:var(--bg-primary);width:100%;min-height:44px;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast);border:0;border-radius:.875rem;align-items:center;gap:.625rem;padding:.375rem .75rem .375rem .375rem;font-size:.9375rem;font-weight:600;display:flex}.start-files-tool:hover{background:var(--bg-tertiary)}.start-files-tool-icon{background:var(--bg-secondary);width:2rem;height:2rem;color:var(--text-primary);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-900:oklch(39.6% .141 25.723);--color-gray-50:var(--gray-50);--color-gray-100:var(--gray-100);--color-gray-200:var(--gray-200);--color-gray-300:var(--gray-300);--color-gray-400:var(--gray-400);--color-gray-500:var(--gray-500);--color-gray-600:var(--gray-600);--color-gray-700:var(--gray-700);--color-gray-800:var(--gray-800);--color-gray-900:var(--gray-900);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--drop-shadow-md:0 3px 3px #0000001f;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.mr-1{margin-right:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-16{height:calc(var(--spacing) * 16)}.h-px{height:1px}.max-h-36{max-height:calc(var(--spacing) * 36)}.min-h-\[44px\]{min-height:44px}.min-h-\[140px\]{min-height:140px}.min-h-\[180px\]{min-height:180px}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-16{width:calc(var(--spacing) * 16)}.w-full{width:100%}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.touch-pan-x{--tw-pan-x:pan-x;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.touch-pan-y{--tw-pan-y:pan-y;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:2147483647px}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:.75rem}.rounded-b-2xl{border-bottom-right-radius:1rem;border-bottom-left-radius:1rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-titan-500{border-color:var(--titan-500)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-titan-100{background-color:var(--titan-100)}.bg-white{background-color:var(--color-white)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.font-serif{font-family:var(--font-serif)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-red-500{color:var(--color-red-500)}.text-titan-600{color:var(--titan-600)}.text-titan-700{color:var(--titan-700)}.text-titan-900{color:var(--titan-900)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-titan-900\/10{--tw-shadow-color:var(--titan-900)}@supports (color:color-mix(in lab, red, red)){.shadow-titan-900\/10{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--titan-900) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-titan-300{--tw-ring-color:var(--titan-300)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.drop-shadow-md{--tw-drop-shadow-size:drop-shadow(0 3px 3px var(--tw-drop-shadow-color,#0000001f));--tw-drop-shadow:drop-shadow(var(--drop-shadow-md));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.focus-within\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-within\:ring-titan-500:focus-within{--tw-ring-color:var(--titan-500)}@media (hover:hover){.hover\:border-gray-400:hover{border-color:var(--color-gray-400)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:text-red-500:hover{color:var(--color-red-500)}.hover\:text-red-600:hover{color:var(--color-red-600)}}@media (width>=40rem){.sm\:mb-3{margin-bottom:calc(var(--spacing) * 3)}.sm\:mb-6{margin-bottom:calc(var(--spacing) * 6)}.sm\:mb-8{margin-bottom:calc(var(--spacing) * 8)}.sm\:inline{display:inline}.sm\:h-8{height:calc(var(--spacing) * 8)}.sm\:h-10{height:calc(var(--spacing) * 10)}.sm\:h-20{height:calc(var(--spacing) * 20)}.sm\:max-h-48{max-height:calc(var(--spacing) * 48)}.sm\:min-h-\[220px\]{min-height:220px}.sm\:w-8{width:calc(var(--spacing) * 8)}.sm\:w-10{width:calc(var(--spacing) * 10)}.sm\:w-20{width:calc(var(--spacing) * 20)}.sm\:gap-3{gap:calc(var(--spacing) * 3)}.sm\:gap-6{gap:calc(var(--spacing) * 6)}:where(.sm\:space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.sm\:p-3{padding:calc(var(--spacing) * 3)}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:p-10{padding:calc(var(--spacing) * 10)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\:border-gray-600:where(.dark,.dark *){border-color:var(--color-gray-600)}.dark\:border-gray-700:where(.dark,.dark *){border-color:var(--color-gray-700)}.dark\:border-titan-400:where(.dark,.dark *){border-color:var(--titan-400)}.dark\:bg-gray-600:where(.dark,.dark *){background-color:var(--color-gray-600)}.dark\:bg-gray-700:where(.dark,.dark *){background-color:var(--color-gray-700)}.dark\:bg-gray-800:where(.dark,.dark *),.dark\:bg-gray-800\/900:where(.dark,.dark *){background-color:var(--color-gray-800)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-800\/900:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-gray-800) 900%, transparent)}}.dark\:bg-gray-900:where(.dark,.dark *),.dark\:bg-gray-900\/50:where(.dark,.dark *){background-color:var(--color-gray-900)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-gray-900\/50:where(.dark,.dark *){background-color:color-mix(in oklab, var(--color-gray-900) 50%, transparent)}}.dark\:bg-titan-900:where(.dark,.dark *){background-color:var(--titan-900)}.dark\:text-gray-200:where(.dark,.dark *){color:var(--color-gray-200)}.dark\:text-gray-300:where(.dark,.dark *){color:var(--color-gray-300)}.dark\:text-gray-400:where(.dark,.dark *){color:var(--color-gray-400)}.dark\:text-red-400:where(.dark,.dark *){color:var(--color-red-400)}.dark\:text-titan-100:where(.dark,.dark *){color:var(--titan-100)}.dark\:text-titan-300:where(.dark,.dark *){color:var(--titan-300)}.dark\:text-titan-400:where(.dark,.dark *){color:var(--titan-400)}.dark\:text-white:where(.dark,.dark *){color:var(--color-white)}.dark\:ring-titan-600:where(.dark,.dark *){--tw-ring-color:var(--titan-600)}@media (hover:hover){.dark\:hover\:border-gray-500:where(.dark,.dark *):hover{border-color:var(--color-gray-500)}.dark\:hover\:bg-gray-700:where(.dark,.dark *):hover,.dark\:hover\:bg-gray-700\/50:where(.dark,.dark *):hover{background-color:var(--color-gray-700)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-gray-700\/50:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-gray-700) 50%, transparent)}}.dark\:hover\:bg-red-900\/20:where(.dark,.dark *):hover{background-color:#82181a33}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-red-900\/20:where(.dark,.dark *):hover{background-color:color-mix(in oklab, var(--color-red-900) 20%, transparent)}}.dark\:hover\:text-red-300:where(.dark,.dark *):hover{color:var(--color-red-300)}.dark\:hover\:text-red-400:where(.dark,.dark *):hover{color:var(--color-red-400)}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}:root{--font-sans:-apple-system, BlinkMacSystemFont, "Inter", "Helvetica Neue", "Segoe UI", sans-serif;--titan-50:#f5f5f7;--titan-100:#e8e8ed;--titan-200:#d2d2d7;--titan-300:#c7c7cc;--titan-400:#a1a1a6;--titan-500:#1d1d1f;--titan-600:#1d1d1f;--titan-700:#1d1d1f;--titan-800:#000;--titan-900:#1d1d1f;--gray-50:#f5f5f7;--gray-100:#ececf0;--gray-200:#e0e0e5;--gray-300:#d2d2d7;--gray-400:#a1a1a6;--gray-500:#6e6e73;--gray-600:#48484a;--gray-700:#3a3a3c;--gray-800:#1c1c1e;--gray-900:#161617;--accent:#1d1d1f;--accent-hover:#000;--on-accent:#fff;--focus-ring:#1d1d1f;--toast-bg:#1d1d1ff0;--surface-raised:#fff;--success:#1d7a3a;--error:#d70015;--warning:#b25000;--info:#1d1d1f;--warning-text:#9a4400;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-2xl:2rem;--shadow-sm:none;--shadow-md:0 2px 10px #0000000f;--shadow-lg:0 8px 28px #0000001a;--shadow-xl:0 20px 50px #00000029;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.4, 0, .2, 1)}.dark{--bg-primary:#000;--bg-secondary:#1c1c1e;--bg-tertiary:#2c2c2e;--text-primary:#f5f5f7;--text-secondary:#a1a1a6;--text-tertiary:#98989d;--border-color:#38383a;--titan-50:#1c1c1e;--titan-100:#2c2c2e;--titan-200:#3a3a3c;--titan-300:#d2d2d7;--titan-400:#e8e8ed;--titan-500:#f5f5f7;--titan-600:#f5f5f7;--titan-700:#f5f5f7;--titan-800:#fff;--titan-900:#1c1c1e;--accent:#f5f5f7;--accent-hover:#fff;--on-accent:#000;--focus-ring:#f5f5f7;--toast-bg:#3a3a3cf0;--surface-raised:#1c1c1e;--success:#30d158;--error:#ff453a;--warning:#ff9f0a;--info:#f5f5f7;--warning-text:#ffb340}:root:not(.dark){--bg-primary:#fff;--bg-secondary:#f5f5f7;--bg-tertiary:#e8e8ed;--text-primary:#1d1d1f;--text-secondary:#515154;--text-tertiary:#6e6e73;--border-color:#d2d2d7}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-primary);letter-spacing:-.011em;-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5}button,a,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media (pointer:coarse),(width<=767px){button:not(.no-min-size),a:not(.no-min-size),[role=button]:not(.no-min-size){min-width:44px;min-height:44px}}button:focus-visible,a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.022em;font-weight:600;line-height:1.15}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:2rem 1rem}@media (width>=768px){.main-content{padding:3rem 2rem}}.main-content--editor{max-width:none;padding:0}@media (width>=768px){.main-content--editor{padding:0}}.header{z-index:100;-webkit-backdrop-filter:saturate(180%)blur(20px);background:#ffffffb8;border-bottom:1px solid #00000014;position:sticky;top:0}.dark .header{background:#161617b8;border-bottom-color:#ffffff1a}.header-content{justify-content:space-between;align-items:center;max-width:1280px;height:3.25rem;margin:0 auto;padding:0 1rem;display:flex}@media (width>=768px){.header-content{padding:0 2rem}}.logo-button{color:inherit;border-radius:var(--radius-lg);transition:var(--transition-base);align-items:center;gap:.625rem;padding:.5rem;text-decoration:none;display:flex}.logo-button:hover{opacity:.72}.logo-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.logo-image{filter:grayscale()brightness(0);width:auto;height:1.5rem}.dark .logo-image{filter:grayscale()brightness(0)invert()}.logo-text{flex-direction:column;gap:0;display:flex}.logo-title{letter-spacing:-.02em;color:var(--text-primary);font-size:1.0625rem;font-weight:600;line-height:1}.logo-subtitle{color:var(--text-tertiary);letter-spacing:0;font-size:.6875rem;font-weight:400;line-height:1.1}.theme-toggle{color:var(--text-primary);transition:background-color var(--transition-fast);background:0 0;border-radius:9999px;justify-content:center;align-items:center;padding:.625rem;display:flex}.theme-toggle:hover{background:var(--bg-secondary)}.theme-icon{width:1.25rem;height:1.25rem}.theme-icon.sun,.theme-icon.moon{color:currentColor}.footer{border-top:1px solid var(--border-color);background:var(--bg-secondary);padding:1.25rem 0}.footer-content{flex-direction:column;justify-content:space-between;align-items:center;gap:1rem;max-width:1280px;margin:0 auto;padding:0 1rem;font-size:.875rem;display:flex}@media (width>=768px){.footer-content{flex-direction:row;padding:0 2rem}}.footer-content p{color:var(--text-tertiary);font-size:.8125rem}.privacy-badge{border:1px solid var(--border-color);color:var(--text-secondary);border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;display:flex}.lock-icon{color:currentColor;flex-shrink:0}.card{background:var(--bg-secondary);border-radius:1.5rem;padding:2rem}.btn{letter-spacing:-.01em;transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);cursor:pointer;z-index:10;pointer-events:auto;border:none;border-radius:9999px;outline:none;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:44px;padding:.75rem 1.5rem;font-size:1.0625rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}@media (width>=640px){.btn{width:auto;min-width:180px}}.btn:active:not(:disabled){opacity:.8}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{color:var(--text-primary);border:1px solid var(--text-primary);background:0 0}.btn-secondary:hover:not(:disabled){background:var(--text-primary);color:var(--bg-primary)}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.92)}.btn-ghost{color:var(--text-primary);width:auto;min-width:auto;box-shadow:none;background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg-tertiary);box-shadow:none;transform:none}.dark .btn-ghost{color:var(--text-primary)}.dark .btn-ghost:hover:not(:disabled){background:var(--bg-tertiary)}.btn-ghost svg{color:inherit}.btn-primary svg{color:currentColor}.btn-success{background:var(--accent);color:var(--on-accent)}.btn-success:hover:not(:disabled){background:var(--accent-hover)}.btn-sm{min-height:36px;padding:.625rem 1.25rem;font-size:.875rem}.btn-lg{min-height:52px;padding:1.125rem 2.5rem;font-size:1.125rem}@media (width>=640px){.btn-lg{padding:1.25rem 3rem}}.w-12{min-width:3rem;width:3rem!important}.h-12{min-height:3rem;height:3rem!important}.w-16{width:4rem}.w-20{width:5rem}.h-px{height:1px}.btn.w-12.h-12,.btn.w-12{flex-shrink:0;padding:0!important}.flex-1{flex:1}.overflow-hidden{overflow:hidden}.bg-white{background:#fff}.shadow-sm{box-shadow:var(--shadow-sm)}.dark .bg-white{background:var(--gray-800)}.scrollbar-hide{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-hide::-webkit-scrollbar{display:none}.sign-canvas-area{justify-content:flex-start;padding:.5rem}@media (width>=640px){.sign-canvas-area{justify-content:center;padding:1.5rem}}@media (width>=768px){.sign-canvas-area{padding:2rem}}.min-w-\[36px\],.min-h-\[36px\]{min-width:36px;min-height:36px}.min-w-\[32px\],.min-h-\[32px\]{min-width:32px;min-height:32px}.bg-gray-100{background:var(--bg-tertiary)}.dark .bg-gray-100{background:var(--gray-700)}.bg-gray-200{background:var(--gray-200)}.dark .bg-gray-200{background:var(--gray-600)}.bg-gray-700,.dark .bg-gray-700{background:var(--gray-700)}.text-gray-700{color:var(--gray-700)}.dark .text-gray-700,.text-gray-200,.dark .text-gray-200{color:var(--gray-200)}.text-gray-300{color:var(--gray-300)}.text-gray-400{color:var(--gray-400)}.text-gray-500{color:var(--gray-500)}.text-gray-600{color:var(--gray-600)}.dark .text-gray-600{color:var(--gray-300)}.text-gray-900{color:var(--gray-900)}.dark .text-gray-900{color:var(--gray-100)}.text-white,.dark .text-white{color:#fff}.border-gray-200{border-color:var(--gray-200)}.dark .border-gray-200{border-color:var(--gray-700)}.border-gray-300{border-color:var(--gray-300)}.dark .border-gray-300,.border-gray-600{border-color:var(--gray-600)}.border-gray-700{border-color:var(--gray-700)}.bg-gray-300{background:var(--gray-300)}.bg-gray-600{background:var(--gray-600)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.border{border:1px solid var(--border-color)}.border-2{border-width:2px}.border-b{border-bottom:1px solid var(--border-color)}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.w-px{width:1px}.w-full{width:100%}.h-full{height:100%}.h-screen{height:100vh}.shrink-0,.flex-shrink-0{flex-shrink:0}.text-xs{font-size:.75rem}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.hover\:bg-white:hover{background:#fff}.dark .hover\:bg-gray-600:hover{background:var(--gray-600)}.dark .hover\:bg-gray-700:hover{background:var(--gray-700)}.hover\:bg-gray-100:hover{background:var(--gray-100)}.hover\:shadow-sm:hover{box-shadow:var(--shadow-sm)}.transition-all{transition:all .3s}.transition-colors{transition:color .3s,background-color .3s}.inline-flex{display:inline-flex}.inline-block{display:inline-block}.block{display:block}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.fixed{position:fixed}.top-0{top:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.inset-0{inset:0}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[9999\]{z-index:9999}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px)}.backdrop-blur-md{-webkit-backdrop-filter:blur(8px)}.bg-black\/60{background:#0009}.bg-black\/80,.dark .bg-black\/80{background:#000c}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-h-\[95vh\]{max-height:95vh}.max-h-\[90vh\]{max-height:90vh}.max-w-7xl{max-width:80rem}.m-auto{margin:auto}.p-0\.5{padding:.125rem}.flex-wrap{flex-wrap:wrap}.shadow-2xl{box-shadow:0 25px 50px -12px #00000040}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-inner{box-shadow:inset 0 2px 4px #0000000f}.ring-1{box-shadow:0 0 0 1px #0000000d}.ring-2{box-shadow:0 0 0 2px var(--titan-500)}.overflow-auto{overflow:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.animate-in{animation:.2s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.space-y-10>*+*{margin-top:2.5rem}.bg-white\/90{background:#ffffffe6}.bg-white\/95{background:#fffffff2}.bg-gray-800\/80{background:#1f2937cc}.bg-gray-800\/90{background:#1f2937e6}.bg-gray-800\/95{background:#1f2937f2}.dark .bg-gray-800\/50{background:#1f293780}.dark .bg-gray-800\/80{background:#1f2937cc}.dark .bg-gray-800\/90{background:#1f2937e6}.dark .bg-gray-800\/95{background:#1f2937f2}.dark .bg-gray-900\/50{background:#11182780}.dark .bg-gray-900\/30{background:#1118274d}.dark .bg-gray-700\/50{background:#37415180}.dark .bg-red-900\/20{background:#7f1d1d33}.dark .bg-red-900\/30{background:#7f1d1d4d}.bg-green-50{background:#f0fdf4}.dark .bg-green-900\/20{background:#14532d33}.text-green-700{color:#15803d}.dark .text-green-300{color:#86efac}.text-green-900{color:#14532d}.dark .text-green-100{color:#dcfce7}.text-green-800{color:#166534}.dark .text-green-200{color:#bbf7d0}.text-green-600{color:#16a34a}.dark .text-green-400{color:#4ade80}.text-red-600{color:#dc2626}.dark .text-red-400{color:#f87171}.text-amber-600{color:#d97706}.dark .text-amber-400{color:#fbbf24}.border-green-200{border-color:#bbf7d0}.dark .border-green-800{border-color:#166534}.border-gray-200\/50{border-color:#e5e7eb80}.border-gray-200\/60{border-color:#e5e7eb99}.dark .border-gray-700\/50{border-color:#37415180}.dark .border-gray-700\/60{border-color:#37415199}.ring-black\/5{box-shadow:0 0 0 1px #0000000d}.dark .ring-white\/10{box-shadow:0 0 0 1px #ffffff1a}.z-30{z-index:30}.z-90{z-index:90}.z-95{z-index:95}.z-100{z-index:100}.dark .dark\:bg-gray-600{background:var(--gray-600)}.dark .dark\:bg-gray-700{background:var(--gray-700)}.dark .dark\:bg-gray-700\/95{background:#374151f2}.dark .dark\:bg-gray-800{background:var(--gray-800)}.dark .dark\:bg-gray-800\/90{background:#1f2937e6}.dark .dark\:bg-gray-900{background:var(--gray-900)}.dark .dark\:bg-gray-900\/50{background:#11182780}.dark .dark\:bg-titan-900{background:var(--titan-900)}.dark .dark\:bg-titan-900\/20{background:#ffffff0f}.dark .dark\:bg-titan-900\/30{background:#ffffff14}.dark .dark\:bg-amber-900\/20{background:#78350f33}.dark .dark\:bg-blue-900\/20{background:#1e3a8a33}.dark .dark\:bg-green-900\/20{background:#14532d33}.dark .dark\:bg-red-900\/20{background:#7f1d1d33}.dark .dark\:bg-red-900\/50{background:#7f1d1d80}.dark .dark\:hover\:bg-gray-600:hover{background:var(--gray-600)}.dark .dark\:hover\:bg-gray-700:hover{background:var(--gray-700)}.dark .dark\:text-white{color:#fff}.dark .dark\:text-gray-200{color:var(--gray-200)}.dark .dark\:text-gray-300{color:var(--gray-300)}.dark .dark\:text-gray-400{color:var(--gray-400)}.dark .dark\:text-gray-500{color:var(--gray-500)}.dark .dark\:text-gray-600{color:var(--gray-300)}.dark .dark\:text-titan-100{color:var(--titan-100)}.dark .dark\:text-titan-300{color:var(--titan-300)}.dark .dark\:text-titan-400{color:var(--titan-400)}.dark .dark\:text-amber-300{color:#fcd34d}.dark .dark\:text-amber-400{color:#fbbf24}.dark .dark\:text-blue-400{color:#60a5fa}.dark .dark\:text-green-100{color:#dcfce7}.dark .dark\:text-green-200{color:#bbf7d0}.dark .dark\:text-green-300{color:#86efac}.dark .dark\:text-green-400{color:#4ade80}.dark .dark\:text-red-300{color:#fca5a5}.dark .dark\:text-red-400{color:#f87171}.dark .dark\:border-gray-600{border-color:var(--gray-600)}.dark .dark\:border-gray-700{border-color:var(--gray-700)}.dark .dark\:border-gray-700\/60{border-color:#37415199}.dark .dark\:border-titan-400{border-color:var(--titan-400)}.dark .dark\:border-titan-700{border-color:var(--titan-700)}.dark .dark\:border-t-titan-400{border-top-color:var(--titan-400)}.dark .dark\:border-amber-800{border-color:#92400e}.dark .dark\:border-blue-400{border-color:#60a5fa}.dark .dark\:border-blue-800{border-color:#1e40af}.dark .dark\:border-green-800{border-color:#166534}.dark .dark\:border-red-800{border-color:#991b1b}.dark .dark\:border-red-900{border-color:#7f1d1d}.dark .dark\:ring-gray-600{box-shadow:0 0 0 2px var(--gray-600)}.dark .dark\:ring-titan-600{box-shadow:0 0 0 2px var(--titan-600)}::selection{color:inherit;background:#00000029}.dark ::selection{color:#fff;background:#ffffff47}.text-left{text-align:left}.text-right{text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wider{letter-spacing:.05em}.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}.font-light{font-weight:300}.font-normal{font-weight:400}.font-mono{font-family:Courier New,monospace}.select-none{-webkit-user-select:none;user-select:none}.cursor-pointer{cursor:pointer}.cursor-move{cursor:move}.cursor-crosshair{cursor:crosshair}.aspect-square{aspect-ratio:1}.bg-titan-50{background:var(--titan-50)}.bg-titan-100{background:var(--titan-100)}.bg-titan-500{background:var(--titan-500)}.bg-titan-600{background:var(--titan-600)}.bg-titan-900,.dark .bg-titan-900{background:var(--titan-900)}.dark .bg-titan-900\/30{background:#ffffff14}.dark .bg-titan-900\/50{background:#ffffff1f}.text-titan-100{color:var(--titan-100)}.text-titan-300{color:var(--titan-300)}.text-titan-400{color:var(--titan-400)}.text-titan-600{color:var(--titan-600)}.text-titan-700{color:var(--titan-700)}.text-titan-900{color:var(--titan-900)}.dark .text-titan-100{color:var(--titan-100)}.dark .text-titan-400{color:var(--titan-400)}.border-titan-200{border-color:var(--titan-200)}.border-titan-300{border-color:var(--titan-300)}.border-titan-400{border-color:var(--titan-400)}.border-titan-500{border-color:var(--titan-500)}.border-titan-600{border-color:var(--titan-600)}.dark .border-titan-400{border-color:var(--titan-400)}.dark .border-titan-700{border-color:var(--titan-700)}.ring-titan-500{box-shadow:0 0 0 2px var(--titan-500)}.ring-titan-600{box-shadow:0 0 0 1px var(--titan-600)}.dark .ring-titan-400{box-shadow:0 0 0 1px var(--titan-400)}.dark .bg-gray-800{background:var(--gray-800)}.dark .bg-gray-900{background:var(--gray-900)}.dark .bg-gray-700{background:var(--gray-700)}.bg-gray-50{background:var(--gray-50)}.dark .bg-gray-50{background:var(--gray-800)}.border-b-2{border-bottom-style:solid;border-bottom-width:2px}.border-r{border-right:1px solid var(--border-color)}.border-l{border-left:1px solid var(--border-color)}.border-t{border-top:1px solid var(--border-color)}.min-h-\[280px\]{min-height:280px}.min-h-\[320px\]{min-height:320px}.min-h-\[60px\]{min-height:60px}.min-h-\[44px\]{min-height:44px}.min-h-\[180px\]{min-height:180px}.min-h-\[220px\]{min-height:220px}.h-48{height:12rem}.h-64{height:16rem}.h-96{height:24rem}.max-h-36{max-height:9rem}.max-h-48{max-height:12rem}.max-h-\[280px\]{max-height:280px}.max-h-\[500px\]{max-height:500px}.w-8{width:2rem}.w-10{width:2.5rem}.w-32{width:8rem}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.drop-shadow-md{filter:drop-shadow(0 4px 3px #00000012)}.whitespace-pre{white-space:pre}.whitespace-nowrap{white-space:nowrap}.outline-none{outline:none}.group:hover .group-hover\:scale-110{transform:scale(1.1)}.-translate-x-1\/2{transform:translate(-50%)}.translate-x-0{transform:translate(0)}.touch-none{touch-action:none}.touch-pan-x{touch-action:pan-x}.touch-pan-y{touch-action:pan-y}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}@media (width>=768px){.container{padding:0 2rem}}.text-center{text-align:center}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}input[type=file]:not([style]){opacity:0;width:1px;height:1px;position:absolute;left:-9999px}@media (width>=1024px){.image-grid{grid-template-columns:repeat(5,1fr)}}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.m-4{margin:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-black{font-weight:900}.text-gradient{color:var(--text-primary)}.spinner{border:4px solid #0000001a;border-top-color:var(--titan-600);border-radius:50%;width:3rem;height:3rem;animation:1s linear infinite spin}.processing-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9000;background:#00000080;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.processing-overlay-content{background:var(--bg-primary);border-radius:1rem;flex-direction:column;align-items:center;gap:1rem;max-width:90vw;padding:2rem 2.5rem;display:flex;box-shadow:0 25px 50px -12px #00000080}.processing-overlay-text{color:var(--text-primary);font-size:1.125rem;font-weight:600}.dark .spinner{border-color:#ffffff1a;border-top-color:var(--titan-400)}@keyframes spin{to{transform:rotate(360deg)}}input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],textarea,select{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);width:100%;color:var(--text-primary);transition:var(--transition-base);padding:.75rem 1rem;font-size:1rem}input:focus,textarea:focus,select:focus{border-color:var(--titan-500);outline:none;box-shadow:0 0 0 3px #0000001f}.dark input:focus,.dark textarea:focus,.dark select:focus{box-shadow:0 0 0 3px #ffffff2e}input:focus-visible,textarea:focus-visible,select:focus-visible,[role=tab]:focus-visible,[role=menuitemradio]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--titan-500);outline-offset:2px}h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus,main[tabindex="-1"]:focus{outline:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.dark ::-webkit-scrollbar-thumb{background:var(--gray-600)}.dark ::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.sign-left-toolbar{flex-shrink:0;gap:.25rem;width:3rem;padding:.5rem .25rem}@media (width<=639px){.sign-left-toolbar.sign-left-toolbar--collapsed{display:none!important}}.sign-left-toolbar .btn{width:2.5rem!important;min-width:2.5rem!important;height:2.5rem!important;min-height:2.5rem!important;padding:0!important}.sign-left-toolbar .btn svg{width:18px;height:18px}.sign-left-toolbar>div[class*=h-px]{margin:.25rem 0}.sign-left-toolbar .flex-col{gap:.5rem}@media (width>=640px){.sign-left-toolbar{gap:.5rem;width:5rem;padding:1rem .5rem}.sign-left-toolbar .btn{width:3rem!important;min-width:3rem!important;height:3rem!important;min-height:3rem!important}.sign-left-toolbar .btn svg{width:20px;height:20px}}.text-format-bar{scrollbar-width:thin;padding:0}.text-format-bar::-webkit-scrollbar{height:4px}.text-format-bar::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:4px}.dark .text-format-bar::-webkit-scrollbar-thumb{background:var(--gray-600)}.sign-text-input,.sign-text-input:focus,.sign-text-input:hover,.sign-text-input:active{box-shadow:none!important;appearance:none!important;-webkit-tap-highlight-color:transparent!important;border:none!important;outline:none!important}.icon-btn{min-width:36px;min-height:36px;color:var(--text-primary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.5rem;justify-content:center;align-items:center;padding:.5rem;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--border-color)}.icon-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn svg{color:currentColor;stroke:currentColor;pointer-events:none}@media (width<=767px){.mobile-hidden{display:none}}@media (width>=768px){.desktop-hidden{display:none}}.skip-link{z-index:10000;border-radius:var(--radius-md);background:var(--accent);color:var(--on-accent);padding:.75rem 1rem;font-weight:600;text-decoration:none;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:.5rem}.main-content:focus{outline:none}.app:has(.main-content--editor)>.footer{display:none}.btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.header-start{align-items:center;gap:.25rem;min-width:0;display:flex}@media (width>=640px){.header-start{gap:.75rem}}.dark .logo-subtitle{color:var(--text-secondary)}.header-btn{border-radius:var(--radius-md);color:var(--text-primary);transition:background var(--transition-fast);align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.9375rem;font-weight:600;display:inline-flex}.header-btn:hover,.header-btn[aria-expanded=true]{background:var(--bg-tertiary)}.chevron{transition:transform var(--transition-fast)}.chevron--open{transform:rotate(180deg)}.header-btn>span{white-space:nowrap}.logo-button,.logo-image{flex-shrink:0}@media (width<=399px){.logo-image{height:1.625rem}}@media (width<=479px){.logo-text{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=399px){.header-btn>span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.tools-menu{position:relative}.tools-menu-panel{background:var(--surface-raised);border:1px solid var(--border-color);width:min(44rem,100vw - 2rem);max-height:calc(100vh - 6rem);box-shadow:var(--shadow-xl);z-index:200;border-radius:1.125rem;padding:.75rem;position:absolute;top:calc(100% + .5rem);left:0;overflow-y:auto}@media (width<=639px){.tools-menu-panel{width:auto;position:fixed;top:4.25rem;left:1rem;right:1rem}}.tools-menu-search{margin-bottom:.5rem;position:relative}.tools-menu-search svg{color:var(--text-tertiary);pointer-events:none;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.tools-menu-search input[type=search]{padding:.5rem .75rem .5rem 2.25rem;font-size:.9375rem}.tools-menu-groups{grid-template-columns:1fr;gap:.5rem 1rem;display:grid}@media (width>=640px){.tools-menu-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}.tools-menu-group-label{color:var(--text-tertiary);padding:.5rem .5rem .25rem;font-size:.8125rem;font-weight:500}.tools-menu-group ul{list-style:none}.tools-menu-link{border-radius:var(--radius-sm);color:var(--text-primary);flex-direction:column;justify-content:center;padding:.5rem;text-decoration:none;display:flex}.tools-menu-link:hover,.tools-menu-link:focus-visible{background:var(--bg-tertiary)}.tools-menu-link[aria-current=page]{background:var(--titan-50)}.dark .tools-menu-link[aria-current=page]{background:var(--bg-tertiary)}.tools-menu-link-title{font-size:.9375rem;font-weight:600}.tools-menu-link-desc{color:var(--text-secondary);font-size:.8125rem}.tools-menu-empty{color:var(--text-secondary);padding:.75rem .5rem}.theme-control{flex-shrink:0;align-items:center;gap:.125rem;display:flex;position:relative}.theme-menu-button{border-radius:var(--radius-md);color:var(--text-secondary);justify-content:center;align-items:center;padding:.5rem .25rem;display:inline-flex}.theme-menu-button:hover,.theme-menu-button[aria-expanded=true]{background:var(--bg-tertiary)}.theme-menu{background:var(--surface-raised);border:1px solid var(--border-color);min-width:10rem;box-shadow:var(--shadow-xl);z-index:200;border-radius:.875rem;padding:.25rem;position:absolute;top:calc(100% + .5rem);right:0}.theme-menu-item{border-radius:var(--radius-sm);width:100%;min-height:40px;color:var(--text-primary);text-align:left;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.9375rem;display:flex}.theme-menu-item:hover,.theme-menu-item:focus{background:var(--bg-tertiary);outline:none}.theme-menu-item:focus-visible{outline:2px solid var(--titan-500);outline-offset:-2px}.theme-menu-check{color:var(--titan-500);margin-left:auto}.tool-page{flex-direction:column;gap:1rem;display:flex}.breadcrumb ol{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.875rem;list-style:none;display:flex}.breadcrumb li{align-items:center;display:inline-flex}.breadcrumb a{color:var(--text-secondary);align-items:center;text-decoration:none;display:inline-flex}.breadcrumb a:hover{color:var(--text-primary);text-decoration:underline}.breadcrumb [aria-current=page]{color:var(--text-primary);font-weight:500}.mode-tabs{background:var(--bg-secondary);scrollbar-width:none;border-radius:9999px;align-self:center;gap:.25rem;max-width:100%;padding:.25rem;display:flex;overflow-x:auto}.mode-tabs::-webkit-scrollbar{display:none}.mode-tab{min-height:40px;color:var(--text-secondary);white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast);border-radius:9999px;flex-shrink:0;align-items:center;padding:.5rem 1rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex}.mode-tab:hover{color:var(--text-primary)}@media (width<=479px){.mode-tab{padding:.5rem .625rem;font-size:.875rem}}.mode-tab--active{background:var(--accent);color:var(--on-accent)}.mode-tab--active:hover{color:var(--on-accent)}.route-loading{min-height:40vh;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-weight:500;display:flex}.not-found{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:4rem 1rem;display:flex}.not-found h1{font-size:2rem}.not-found a{text-decoration:none}.hidden{display:none}@media (width>=640px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:inline-block{display:inline-block}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:grid{display:grid}}@media (width>=768px){.md\:hidden{display:none}.md\:block{display:block}.md\:inline{display:inline}.md\:inline-block{display:inline-block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:grid{display:grid}}@media (width>=1024px){.lg\:hidden{display:none}.lg\:block{display:block}.lg\:inline{display:inline}.lg\:inline-block{display:inline-block}.lg\:flex{display:flex}.lg\:inline-flex{display:inline-flex}.lg\:grid{display:grid}}@media (width>=1280px){.xl\:hidden{display:none}.xl\:block{display:block}.xl\:inline{display:inline}.xl\:inline-block{display:inline-block}.xl\:flex{display:flex}.xl\:inline-flex{display:inline-flex}.xl\:grid{display:grid}}.continue-with{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.continue-with-label{color:var(--text-secondary);font-size:.875rem;font-weight:600}.continue-with-list{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.continue-with-link{border:1px solid var(--border-color);background:var(--bg-primary);min-height:40px;color:var(--text-primary);transition:border-color var(--transition-fast), color var(--transition-fast);border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem .875rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.continue-with-link:hover{border-color:var(--text-primary)}.prerender{max-width:48rem;color:var(--text-primary);margin:0 auto;padding:6rem 1rem 3rem}.prerender h1{letter-spacing:-.02em;margin-bottom:.75rem;font-size:1.875rem;font-weight:700;line-height:1.2}.prerender p{color:var(--text-secondary);margin-bottom:1rem}.prerender h2{margin:1.5rem 0 .5rem;font-size:1.125rem;font-weight:700}.prerender ul{color:var(--text-secondary);margin-bottom:1rem;padding-left:1.25rem}.prerender li{margin:.25rem 0}.prerender a{color:var(--text-primary)}.noscript-message{max-width:48rem;margin:0 auto;padding:1rem;font-family:sans-serif}.header-content button,.header-content a{min-width:44px;min-height:44px}.drag-drop-zone{position:relative}.drag-overlay{border:2px dashed var(--text-primary);z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff9;border-radius:1.5rem;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.dark .drag-overlay{background:#0009}.drag-message{background:var(--bg-primary);box-shadow:var(--shadow-xl);border-radius:9999px;padding:1.5rem 2rem}.drag-message-text{color:var(--text-primary);font-size:1.25rem;font-weight:600}.tool-layout{flex-direction:column;gap:1.5rem;width:100%;margin:0 auto;display:flex}@media (width>=640px){.tool-layout{gap:2rem}}.tool-layout--md{max-width:56rem}.tool-layout--lg{max-width:75rem}.tool-layout--xl{max-width:80rem}.tool-header{text-align:center}.tool-heading{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.75rem;font-size:2rem;font-weight:700;line-height:1.15}.tool-heading:focus{outline:none}@media (width>=768px){.tool-heading{font-size:3rem}}.tool-subheading{color:var(--text-secondary);max-width:40rem;margin:0 auto;font-size:1.0625rem}@media (width>=768px){.tool-subheading{font-size:1.25rem}}.tool-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}.tool-card-main{background:var(--bg-primary);flex-direction:column;gap:1.5rem;padding:0;display:flex}.upload-zone{border:1px dashed var(--border-color);background:var(--bg-secondary);min-height:20rem;transition:var(--transition-base);z-index:1;border-radius:1.125rem;flex-direction:column;justify-content:center;align-items:center;padding:2rem 1rem;display:flex;position:relative}.upload-zone:hover{border-color:var(--text-tertiary)}@media (width>=640px){.upload-zone{min-height:24rem}}.upload-icon-wrapper{color:var(--text-primary);background:var(--bg-primary);border-radius:9999px;justify-content:center;align-items:center;margin-bottom:1.5rem;padding:1rem;display:flex}@media (width>=640px){.upload-icon-wrapper{margin-bottom:2rem;padding:1.25rem}}.upload-title{color:var(--text-primary);letter-spacing:-.02em;text-align:center;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}@media (width>=640px){.upload-title{margin-bottom:.75rem;font-size:1.25rem}}.upload-subtitle{color:var(--text-secondary);text-align:center;max-width:28rem;margin-bottom:2rem;padding:0 1rem;font-size:.875rem}@media (width>=640px){.upload-subtitle{margin-bottom:2.5rem;font-size:1rem}}.file-info-bar{border-bottom:1px solid var(--border-color);align-items:center;gap:.75rem;padding-bottom:1rem;display:flex}.file-info{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.file-icon-wrapper{color:var(--text-primary);background:var(--bg-secondary);border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem;display:flex}@media (width>=640px){.file-icon-wrapper{padding:.625rem}}.file-text{flex:1;min-width:0}.file-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:600;overflow:hidden}@media (width>=640px){.file-name{font-size:1.0625rem}}.file-meta{color:var(--text-secondary);font-size:.8125rem}.remove-button{color:#dc2626;border-radius:var(--radius-md);transition:var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.625rem;display:flex}.remove-button:hover{background:#ef44441a}.dark .remove-button{color:#f87171}.dark .remove-button:hover{background:#ef444433}.tool-options{flex-direction:column;gap:1.5rem;display:flex}.tool-field{flex-direction:column;gap:.5rem;min-width:0;display:flex}.tool-field-row{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=640px){.tool-field-row{grid-template-columns:1fr 1fr}}.tool-label{color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.tool-label output{font-variant-numeric:tabular-nums;color:var(--text-primary)}.tool-help{color:var(--text-secondary);font-size:.8125rem}.tool-input{min-height:44px}.tool-range{width:100%;height:44px;accent-color:var(--titan-600);cursor:pointer;background:0 0;margin:0;padding:0}.dark .tool-range{accent-color:var(--titan-400)}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.option-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=479px){.option-grid--3{gap:.5rem}}.option-btn{background:var(--bg-secondary);min-height:48px;color:var(--text-primary);text-align:center;transition:border-color var(--transition-fast), background var(--transition-fast);border:2px solid #0000;border-radius:.875rem;justify-content:center;align-items:center;gap:.5rem;padding:.75rem .5rem;font-size:.875rem;font-weight:600;display:flex}.option-btn--compact{padding:.5rem .25rem;font-size:.8125rem}.option-btn:hover{background:var(--bg-tertiary)}.option-btn[aria-pressed=true]{border-color:var(--text-primary);background:var(--bg-primary);color:var(--text-primary)}.option-btn svg{flex-shrink:0}.option-btn-text{flex-direction:column;min-width:0;display:flex}.option-btn-desc{color:var(--text-secondary);margin-top:.125rem;font-size:.75rem;font-weight:500}.tool-notice{border-radius:var(--radius-lg);text-align:left;border:1px solid;gap:.75rem;padding:1rem;display:flex}.tool-notice-icon{flex-shrink:0;margin-top:.125rem}.tool-notice-body{flex-direction:column;gap:.375rem;min-width:0;font-size:.875rem;line-height:1.55;display:flex}.tool-notice-title{font-size:.9375rem;font-weight:700}.tool-notice-text ul{margin:.25rem 0 0 1.1rem;list-style:outside}.tool-notice-text li+li{margin-top:.25rem}.tool-notice-actions{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.tool-notice--info{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.tool-notice--success{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.tool-notice--warning{color:#78350f;background:#fffbeb;border-color:#fde68a}.tool-notice--error{color:#7f1d1d;background:#fef2f2;border-color:#fecaca}.dark .tool-notice--success{color:#d1fae5;background:#10b9811f;border-color:#34d39959}.dark .tool-notice--warning{color:#fef3c7;background:#f59e0b1f;border-color:#fbbf2459}.dark .tool-notice--error{color:#fee2e2;background:#ef44441f;border-color:#f8717159}.tool-notice code{font-size:.8125rem}.tool-result{scroll-margin:6rem 0 2rem}.tool-result-title{letter-spacing:normal;margin:0;line-height:1.4}.tool-result-title:focus{outline:none}.tool-result-title:focus-visible{outline-offset:3px;border-radius:2px;outline:2px solid}.tool-result-next{border-top:1px solid color-mix(in srgb, currentColor 20%, transparent);margin-top:.5rem;padding-top:.75rem}.tool-result .continue-with-label{color:inherit}.image-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;max-height:500px;padding-right:.5rem;list-style:none;display:grid;overflow-y:auto}@media (width<=479px){.image-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}}@media (width>=480px) and (width<=639px){.image-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=640px){.image-grid{grid-template-columns:repeat(3,1fr);gap:1rem}}@media (width>=768px){.image-grid{grid-template-columns:repeat(4,1fr)}}@media (width>=1024px){.image-grid{grid-template-columns:repeat(5,1fr)}}.image-card{aspect-ratio:3/4;border-radius:var(--radius-2xl);border:2px solid var(--border-color);background:var(--bg-tertiary);box-shadow:var(--shadow-md);transition:var(--transition-base);position:relative;overflow:hidden}.image-card:hover{box-shadow:var(--shadow-lg);border-color:var(--gray-300);transform:scale(1.05)}.dark .image-card:hover{border-color:var(--gray-600)}.image-grid--previews{max-height:none;overflow:visible}.image-card img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.image-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:var(--transition-base);background:#00000080;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.image-card:hover .image-overlay,.image-card:focus-within .image-overlay{opacity:1}@media (width<=639px){.image-overlay{display:none}}.overlay-delete-btn{color:#ef4444;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);transition:var(--transition-base);background:#fff;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.75rem;display:flex}.dark .overlay-delete-btn{background:var(--gray-800);color:#f87171}.overlay-delete-btn:hover{background:#fee2e2;transform:scale(1.1)}.dark .overlay-delete-btn:hover{background:#ef44444d}.mobile-delete-btn{color:#ef4444;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;justify-content:center;align-items:center;min-width:36px;min-height:36px;padding:.5rem;display:flex;position:absolute;top:.5rem;right:.5rem}.dark .mobile-delete-btn{color:#f87171;background:#1f2937f2}@media (width>=640px){.mobile-delete-btn{display:none}}.image-label{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border-color);background:#fffffff2;padding:.5rem;position:absolute;bottom:0;left:0;right:0}.dark .image-label{background:#1f2937f2}@media (width>=640px){.image-label{padding:.625rem}}.image-label-text{color:var(--text-primary);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:500;overflow:hidden}.dark .image-label-text{color:var(--text-secondary)}.add-more-card{aspect-ratio:3/4;border:2px dashed var(--gray-300);border-radius:var(--radius-2xl);cursor:pointer;transition:var(--transition-base);background:var(--bg-tertiary);flex-direction:column;justify-content:center;align-items:center;min-height:120px;display:flex}.dark .add-more-card{border-color:var(--gray-600)}.add-more-card:hover{background:var(--bg-secondary);border-color:var(--gray-400)}.dark .add-more-card:hover{background:var(--gray-700);border-color:var(--gray-500)}.add-more-icon-wrapper{background:var(--bg-tertiary);border-radius:var(--radius-2xl);transition:var(--transition-base);margin-bottom:.75rem;padding:.75rem}.add-more-card:hover .add-more-icon-wrapper{background:var(--bg-primary);box-shadow:var(--shadow-md)}.dark .add-more-icon-wrapper{background:var(--gray-700)}.dark .add-more-card:hover .add-more-icon-wrapper{background:var(--gray-600)}@media (width>=640px){.add-more-icon-wrapper{margin-bottom:1rem;padding:1rem}}.add-more-icon{width:1.75rem;height:1.75rem;color:var(--text-tertiary);transition:var(--transition-base)}.add-more-card:hover .add-more-icon{color:var(--text-primary)}@media (width>=640px){.add-more-icon{width:2rem;height:2rem}}.add-more-text{color:var(--text-secondary);text-align:center;transition:var(--transition-base);padding:0 .5rem;font-size:.75rem;font-weight:600}.add-more-card:hover .add-more-text{color:var(--text-primary)}@media (width>=640px){.add-more-text{font-size:.875rem}}.processing-state{text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;padding:3rem 0;display:flex}.processing-spinner{border:4px solid #0000001a;border-top-color:var(--titan-600);border-radius:50%;width:2.5rem;height:2.5rem;margin-bottom:.75rem;animation:1s linear infinite spin}.dark .processing-spinner{border-color:#ffffff1a;border-top-color:var(--titan-400)}@media (width>=640px){.processing-spinner{width:3rem;height:3rem;margin-bottom:1rem}}.processing-text{color:var(--text-primary);font-size:.9375rem;font-weight:600}.processing-detail{color:var(--text-secondary);margin-top:.25rem;font-size:.875rem}@media (width>=640px){.processing-text{font-size:1rem}}.action-bar{flex-direction:column;align-items:center;gap:.75rem;display:flex}@media (width>=640px){.action-bar .btn-lg{min-width:280px}}.action-hint{color:var(--text-secondary);text-align:center;font-size:.875rem}.organize-toolbar{z-index:30;-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);background:#fffffff0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding:.75rem 1rem;display:flex;position:sticky;top:5rem}.dark .organize-toolbar{background:#0f172af0}.organize-toolbar .file-info{flex:14rem}.organize-counts{color:var(--text-secondary);font-size:.8125rem}.organize-counts strong{color:var(--text-primary)}.organize-toolbar-actions{flex:auto;justify-content:flex-end;gap:.5rem;display:flex}.organize-toolbar-actions .btn{width:auto;min-width:0;min-height:44px}@media (width<=639px){.organize-toolbar-actions .btn{flex:1;padding-left:.75rem;padding-right:.75rem}}.organize-help{text-align:center;color:var(--text-secondary);font-size:.875rem}.organize-help kbd{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);border-radius:.375rem;padding:.0625rem .375rem;font-family:inherit;font-size:.8125rem}.organize-grid{-webkit-user-select:none;user-select:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}@media (width>=640px){.organize-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}}@media (width>=768px){.organize-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=1024px){.organize-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width>=1280px){.organize-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.organize-card{border:2px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-primary);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), opacity var(--transition-fast);flex-direction:column;display:flex;position:relative;overflow:hidden}.organize-card:hover{border-color:var(--titan-400);box-shadow:var(--shadow-lg)}.organize-card:focus-visible{outline:3px solid var(--titan-500);outline-offset:2px}.organize-card.is-dragging{border-color:var(--titan-500);opacity:.85}.organize-card.is-removed{background:#fef2f2;border-color:#fca5a5}.dark .organize-card.is-removed{background:#7f1d1d40;border-color:#991b1b}.organize-card-bar{background:var(--bg-secondary);justify-content:space-between;align-items:center;gap:.125rem;padding:.125rem;display:flex}.organize-card-bar--top{border-bottom:1px solid var(--border-color)}.organize-card-bar--bottom{border-top:1px solid var(--border-color)}.dark .organize-card-bar{background:var(--bg-secondary)}.organize-page-label{text-align:center;min-width:0;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8125rem;font-weight:700;overflow:hidden}.organize-handle,.organize-icon-btn{border-radius:var(--radius-sm);width:44px;min-width:44px;height:44px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.organize-handle{cursor:grab;touch-action:none}.organize-handle:active{cursor:grabbing}.organize-icon-btn{transition:background var(--transition-fast), color var(--transition-fast)}.organize-icon-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--titan-700)}.dark .organize-icon-btn:hover:not(:disabled){color:var(--titan-200)}.organize-icon-btn:disabled{opacity:.35;cursor:not-allowed}.organize-icon-btn--remove:hover:not(:disabled){color:#b91c1c}.organize-icon-btn--remove[aria-pressed=true]{color:#fff;background:#dc2626}.organize-icon-btn--remove[aria-pressed=true]:hover:not(:disabled){color:#fff;background:#b91c1c}.dark .organize-icon-btn--remove:hover:not(:disabled){color:#fca5a5}.organize-thumb{aspect-ratio:3/4;cursor:pointer;justify-content:center;align-items:center;padding:.5rem;display:flex;position:relative;overflow:hidden}.organize-thumb img{-o-object-fit:contain;object-fit:contain;pointer-events:none;width:100%;height:100%;transition:transform var(--transition-base), opacity var(--transition-base)}.is-removed .organize-thumb img{opacity:.35;filter:grayscale()}.organize-removed-badge{border-radius:var(--radius-md);color:#b91c1c;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;box-shadow:var(--shadow-lg);background:#fff;border:2px solid #fca5a5;padding:.375rem .875rem;font-size:.8125rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-12deg)}.dark .organize-removed-badge{background:var(--gray-800);color:#fca5a5;border-color:#991b1b}.files-header{border-bottom:1px solid var(--border-color);flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;display:flex}@media (width>=640px){.files-header{flex-direction:row;justify-content:space-between;align-items:center}}.files-count{align-items:center;gap:.5rem;font-size:1rem;display:flex}.files-count-number{color:var(--titan-700);font-size:1.5rem;font-weight:700}.dark .files-count-number{color:var(--titan-300)}.files-count-label{color:var(--text-secondary);font-weight:600}.files-list{flex-direction:column;gap:.5rem;max-height:26rem;padding-right:.25rem;list-style:none;display:flex;overflow-y:auto}.file-item{background:var(--bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--border-color);transition:var(--transition-base);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.25rem .75rem;padding:.625rem .75rem;display:flex}.file-item:hover,.file-item:focus-within{border-color:var(--titan-300);background:var(--bg-primary)}.dark .file-item:hover,.dark .file-item:focus-within{border-color:var(--titan-600);background:var(--gray-700)}.file-item-main{flex:12rem;align-items:center;gap:.75rem;min-width:0;display:flex}.file-item-order{text-align:center;min-width:1.25rem;color:var(--text-secondary);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.8125rem;font-weight:700}.file-item-icon{background:var(--bg-secondary);width:2.5rem;height:2.5rem;color:var(--text-primary);border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.file-item-text{flex-direction:column;flex:1;min-width:0;display:flex}.file-item-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-size:.9375rem;font-weight:600;overflow:hidden}.file-item-meta{color:var(--text-secondary);font-size:.8125rem}.file-item-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.file-action-btn{border-radius:var(--radius-md);width:44px;height:44px;transition:var(--transition-base);color:var(--text-secondary);justify-content:center;align-items:center;display:inline-flex}.file-action-btn:hover:not(:disabled){background:var(--bg-secondary);color:var(--text-primary)}.dark .file-action-btn:hover:not(:disabled){background:var(--gray-600)}.file-action-btn:disabled{opacity:.3;cursor:not-allowed}.file-action-divider{background:var(--border-color);width:1px;height:1.25rem;margin:0 .125rem}.file-action-btn.delete{color:#dc2626}.file-action-btn.delete:hover{color:#b91c1c;background:#ef44441a}.dark .file-action-btn.delete{color:#f87171}.dark .file-action-btn.delete:hover{color:#fca5a5;background:#ef444433}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dancing-script-latin-400-normal--YrtvvVF.woff2)format("woff2"),url(/assets/dancing-script-latin-400-normal-BY5FxJb0.woff)format("woff")}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/great-vibes-latin-400-normal-q5-78SH_.woff2)format("woff2"),url(/assets/great-vibes-latin-400-normal-BAZ173uY.woff)format("woff")}@font-face{font-family:Sacramento;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sacramento-latin-400-normal-mRAQrhvZ.woff2)format("woff2"),url(/assets/sacramento-latin-400-normal-D-mHOmJi.woff)format("woff")}.sign-sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.sign-hidden-input{display:none}.sign-measure{opacity:0;visibility:hidden;pointer-events:none;white-space:pre;font-family:Helvetica,sans-serif;position:absolute;top:-9999px;left:-9999px}.sign-root{background:var(--gray-50);flex-direction:column;min-height:0;display:flex}.dark .sign-root{background:var(--gray-900)}.sign-main{flex:1;display:flex;overflow:hidden}.sign-column{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.sign-canvas-area.sign-canvas-area{-webkit-user-select:none;user-select:none;background:var(--gray-100);flex:1;justify-content:flex-start;min-width:0;min-height:0;display:flex;position:relative;overflow:auto;box-shadow:inset 0 2px 4px #0000000d}.dark .sign-canvas-area.sign-canvas-area{background:var(--gray-900)}.sign-canvas-area:focus-visible,.sign-topbar-left:focus-visible,.text-format-bar:focus-visible,.sign-panel:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.sign-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:28rem;height:100%;margin:0 auto;padding:0 1rem;display:flex}.sign-page{cursor:default;background:#fff;flex-shrink:0;margin-inline:auto;position:relative;box-shadow:0 25px 50px -12px #00000040}.dark .sign-page{background:var(--gray-800)}.sign-page.is-placing{cursor:crosshair}.sign-page-canvas{pointer-events:none;display:block}.sign-topbar{z-index:20;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem;display:flex;position:relative;box-shadow:0 1px 2px #0000000d}.dark .sign-topbar{background:var(--gray-800);border-bottom-color:var(--gray-700)}.sign-topbar-left{-webkit-overflow-scrolling:touch;flex:1;align-items:center;gap:.5rem;min-width:0;display:flex;overflow-x:auto}.sign-topbar-history{align-items:center;gap:.25rem;display:flex}.sign-topbar-divider{background:var(--gray-300);flex-shrink:0;width:1px;height:1.5rem;margin:0 .25rem}.dark .sign-topbar-divider{background:var(--gray-600)}.sign-topbar-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.sign-pill{background:var(--gray-100);border:1px solid var(--gray-200);border-radius:.5rem;flex-shrink:0;align-items:center;gap:.125rem;padding:.125rem;display:flex}.dark .sign-pill{background:var(--gray-700);border-color:var(--gray-600)}.sign-pill-btn{min-width:44px;min-height:44px;color:var(--gray-700);cursor:pointer;background:0 0;border:0;border-radius:.375rem;justify-content:center;align-items:center;padding:0;transition:background .15s,box-shadow .15s;display:flex}.sign-pill-btn--text{font-size:.875rem;font-weight:700}.dark .sign-pill-btn{color:var(--gray-200)}.sign-pill-btn:hover:not(:disabled){background:#fff;box-shadow:0 1px 2px #00000014}.dark .sign-pill-btn:hover:not(:disabled){background:var(--gray-600)}.sign-pill-btn:disabled{opacity:.3;cursor:not-allowed}.sign-pill-label{text-align:center;width:2.75rem;color:var(--gray-700);font-size:.75rem;font-weight:600}.sign-pill-label--page{width:3rem}.dark .sign-pill-label{color:var(--gray-200)}.sign-topbar .icon-btn{flex-shrink:0;min-width:44px;min-height:44px}.sign-count-btn{position:relative}.sign-count-badge{background:var(--accent);min-width:1.1rem;height:1.1rem;color:var(--on-accent);text-align:center;border-radius:9999px;padding:0 .25rem;font-size:.6875rem;font-weight:700;line-height:1.1rem;position:absolute;top:2px;right:2px}.sign-topbar .sign-action-btn,.sign-topbar .sign-square-btn{width:auto;min-width:44px;min-height:44px}.sign-topbar .sign-square-btn{border:1px solid var(--gray-200);border-radius:10px;width:44px;height:44px;padding:0}.dark .sign-topbar .sign-square-btn{border-color:var(--gray-600)}.sign-topbar .sign-save-btn{font-size:.875rem}@media (width>=640px){.sign-topbar{gap:1rem;padding:.75rem 1rem}.sign-topbar-left{gap:.75rem}.sign-pill-label--page{width:4rem}.sign-pill-label{width:3rem}}@media (width<=1023px){.sign-topbar .sign-action-btn{width:44px;padding:0}.sign-topbar .sign-action-btn span{display:none}}.sign-left-toolbar.sign-left-toolbar .btn{width:2.75rem!important;min-width:2.75rem!important;height:2.75rem!important;min-height:2.75rem!important;padding:0!important}.sign-color-group{flex-direction:column;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.sign-color-apply{width:44px;height:44px;box-shadow:0 0 0 2px var(--gray-300), 0 4px 6px -1px #0000001a;cursor:pointer;border:2px solid #fff;border-radius:.5rem;padding:0;transition:transform .15s}.dark .sign-color-apply{border-color:var(--gray-700);box-shadow:0 0 0 2px var(--gray-600)}.sign-color-apply:hover:not(:disabled){transform:scale(1.08)}.sign-color-apply:disabled{cursor:not-allowed;opacity:.7}.sign-left-toolbar .sign-color-group button{min-width:44px;min-height:44px}@media (width>=640px){.sign-left-toolbar.sign-left-toolbar .btn{width:3rem!important;min-width:3rem!important;height:3rem!important;min-height:3rem!important}}.text-format-bar.text-format-bar{-webkit-overflow-scrolling:touch;z-index:20;background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-shrink:0;order:-1;position:relative;overflow:auto hidden;box-shadow:0 2px 8px #0000000f}.sign-format-row{flex-wrap:nowrap;width:max-content;min-width:100%}.text-format-bar button{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.sign-swatch-btn{cursor:pointer;background:0 0;border:0;border-radius:.5rem;padding:0}.sign-swatch{width:1.5rem;height:1.5rem;display:block;position:relative}.sign-swatch--none:after{content:"";background:#ef4444;height:1px;position:absolute;top:50%;left:-2px;right:-2px;transform:rotate(45deg)}.sign-ann{z-index:10;cursor:pointer;touch-action:none;position:absolute}.sign-ann.is-selected{z-index:50;cursor:move;outline-offset:3px;outline:1.5px solid #1d1d1f;box-shadow:0 0 0 4.5px #ffffffe6}.sign-ann.is-locked{cursor:not-allowed}.sign-ann.is-selected.is-locked{outline-color:#a3a3a3}.sign-ann-fill{pointer-events:none;width:100%;height:100%;display:block}.sign-ann-img{-o-object-fit:contain;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.sign-ann-svg{pointer-events:none;overflow:visible}.sign-ann-shape{box-sizing:border-box;border:2px solid}.sign-ann-shape--circle{border-radius:50%}.sign-ann-eraser{outline-offset:-1px;outline:1px dotted #0000002e}.sign-ann-highlight{opacity:.4}.sign-text-input.sign-text-input{border-radius:0;margin:0;padding:0;transition:none}.sign-text-input--single{white-space:pre;vertical-align:top;line-height:1}.sign-text-input--multi{resize:none;white-space:pre-wrap;word-break:break-word;line-height:1.2;overflow:hidden}.sign-ann-sticky{box-sizing:border-box;white-space:pre-wrap;border:1px solid;width:100%;height:100%;font-family:Helvetica,sans-serif;line-height:1.25;position:relative;overflow:hidden}.sign-ann-sticky-input{resize:none;width:100%;height:100%;font:inherit;color:inherit;background:0 0;border:none;outline:none;margin:0;padding:0}.sign-ann-sticky-fold{pointer-events:none;border-bottom-style:solid;border-left-style:solid;border-left-color:#0000;width:0;height:0;position:absolute;bottom:0;right:0}.sign-lock-badge{z-index:51;color:#fff;pointer-events:none;background:#737373;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:-10px;right:-10px;box-shadow:0 2px 4px #00000040}.sign-handle{touch-action:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute}.sign-handle--move{z-index:51;cursor:move;top:-48px;left:50%;transform:translate(-50%)}.sign-ann--text>.sign-handle--move{left:-6px;transform:none}.sign-handle--resize{z-index:52;cursor:se-resize;bottom:-22px;right:-22px}.sign-handle-dot{pointer-events:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.sign-handle-dot--move{color:#1d1d1f;background:#fff;border:1.5px solid #1d1d1f;box-shadow:0 4px 6px -1px #0000001a}.sign-handle-dot--resize{background:#1d1d1f;border:2px solid #fff;box-shadow:0 4px 6px -1px #0003}.sign-text-run{z-index:60;cursor:text;background:#0000000d;border:1px dashed #00000073;border-radius:2px;position:absolute}.sign-text-run:hover,.sign-text-run:focus-visible{background:#0000001f}.sign-marquee{z-index:65;pointer-events:none;background:#0000000f;border:1px dashed #0009;position:absolute}.sign-snap{z-index:70;pointer-events:none;background:#ff2d55;position:absolute}.sign-snap--v{width:1px;height:100%;top:0}.sign-snap--h{width:100%;height:1px;left:0}.sign-field{z-index:40;border-radius:3px;position:absolute}.sign-field.sign-field{min-width:0;min-height:0}.sign-field--signature{color:#1d1d1f;cursor:pointer;background:#0000000a;border:1.5px dashed #1d1d1f;border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.sign-field--checkbox{cursor:pointer;background:#0000000a;border:1.5px solid #1d1d1f;justify-content:center;align-items:center;display:flex}.sign-field--checkbox.is-checked{background:#00000014}.sign-field--text{font:inherit;color:#000;background:#0000000a;border:1.5px solid #0000008c;outline:none;padding:0 4px}.sign-print-frame{border:0;width:0;height:0;position:fixed;bottom:0;right:0}.sign-progress{z-index:250;color:#fff;background:#000000d9;border-radius:24px;align-items:center;gap:10px;padding:10px 18px;font-size:13px;font-weight:600;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.sign-progress-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}.sign-fab{z-index:95;background:var(--accent);width:48px;height:48px;color:var(--on-accent);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:16px;left:16px;box-shadow:0 6px 16px #00000047}.sign-consent{color:#78350f;background:#fffbeb;border-bottom:1px solid #fcd34d;flex-shrink:0;order:-2;padding:.75rem 1rem}.dark .sign-consent{color:#fef3c7;background:#422006;border-bottom-color:#a16207}.sign-consent-title{margin:0 0 .25rem;font-size:.9rem;font-weight:700}.sign-consent-desc{max-width:60rem;margin:0 0 .5rem;font-size:.8125rem}.sign-consent-actions{flex-wrap:wrap;gap:.5rem;display:flex}.sign-consent-btn{min-width:44px;min-height:44px;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:.5rem;padding:0 1rem;font-size:.875rem;font-weight:600}.sign-consent-btn--primary{color:#fff;background:#92400e;border-color:#92400e}.dark .sign-consent-btn--primary{color:#422006;background:#fde68a;border-color:#fde68a}.sign-panel{z-index:90;background:var(--bg-primary);border:1px solid var(--border-color);width:min(340px,100vw - 16px);max-height:calc(100vh - 120px);color:var(--text-primary);border-radius:12px;padding:14px;position:fixed;top:80px;right:20px;overflow-y:auto;box-shadow:0 15px 30px #0000002e}@media (width<=400px){.sign-panel{width:auto;left:8px;right:8px}}.sign-panel-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:10px;display:flex}.sign-panel-title{color:var(--text-primary);margin:0;font-size:14px;font-weight:700}.sign-panel-note{color:var(--text-tertiary);margin:0 0 10px;font-size:12px}.sign-panel-stack{flex-direction:column;gap:8px;display:flex}.sign-panel .btn{min-height:44px}.sign-icon-btn{min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.sign-icon-btn:hover{background:var(--bg-tertiary);border-color:var(--border-color)}.sign-icon-btn--danger{color:#dc2626}.dark .sign-icon-btn--danger{color:#f87171}.sign-ann-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.sign-ann-row{border-radius:8px;align-items:center;gap:2px;display:flex}.sign-ann-row.is-selected{background:var(--bg-tertiary);box-shadow:inset 3px 0 0 var(--text-primary)}.sign-ann-item{min-width:0;min-height:44px;color:var(--text-primary);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:auto;padding:0 10px;font-size:13px;overflow:hidden}.sign-ann-item:hover{background:var(--bg-tertiary)}.sign-input{border:2px solid var(--border-color);background:var(--bg-primary);width:100%;min-height:44px;color:var(--text-primary);border-radius:8px;outline:none;padding:8px 10px}.sign-input:focus-visible{border-color:var(--titan-500)}.sign-input--stack{margin-bottom:8px}.sign-input--large{border-radius:.75rem;padding:.75rem;font-size:1.125rem}.sign-popover{z-index:9000;background:var(--bg-primary);border:1px solid var(--border-color);max-width:calc(100vw - 24px);padding:6px;position:fixed;box-shadow:0 15px 35px #00000038}.sign-popover.is-measuring{visibility:hidden}.sign-menu{border-radius:10px}.sign-menu--pageops{min-width:230px}.sign-menu--profile{border-radius:12px;min-width:220px}.sign-menu-item{width:100%;min-height:44px;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 12px;font-size:13px;display:block}.sign-menu-item:hover:not(:disabled),.sign-menu-item:focus-visible{background:var(--bg-tertiary)}.sign-menu-item:disabled{opacity:.4;cursor:not-allowed}.sign-menu-item--danger{color:#dc2626}.dark .sign-menu-item--danger{color:#f87171}.sign-menu-item--accent{color:var(--titan-600);font-weight:600}.dark .sign-menu-item--accent{color:var(--titan-300)}.sign-menu-item--split{justify-content:space-between;align-items:center;gap:8px;display:flex}.sign-menu-item--split.is-empty{color:var(--text-tertiary)}.sign-menu-value{text-overflow:ellipsis;white-space:nowrap;max-width:130px;color:var(--text-tertiary);overflow:hidden}.sign-menu-sep{border-top:1px solid var(--border-color);margin:6px 0}.sign-capitalize{text-transform:capitalize}.sign-context-layer{z-index:200;position:fixed;inset:0}.sign-context-menu{background:var(--bg-primary);border:1px solid var(--border-color);min-width:180px;padding:6px;position:absolute;box-shadow:0 12px 30px #00000040}.sign-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.sign-backdrop--signature{z-index:100;background:#000000b3}.sign-backdrop--profile{z-index:150;background:#0000008c}.sign-dialog{background:var(--bg-primary);width:100%;max-height:95vh;color:var(--text-primary);outline:none;box-shadow:0 25px 50px -12px #00000080}.sign-dialog--profile{border-radius:16px;max-width:480px;padding:22px;overflow-y:auto}.sign-dialog--signature{border-radius:1rem;flex-direction:column;max-width:32rem;display:flex;overflow:hidden}.sign-dialog-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.sign-dialog-title{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:700}.sign-dialog-note{color:var(--text-tertiary);margin:0 0 14px;font-size:13px}.sign-dialog-note--after{margin:8px 0 0;font-size:12px}.sign-dialog-actions{gap:10px;margin-top:16px;display:flex}.sign-field-row{margin-bottom:10px}.sign-label{color:var(--text-tertiary);margin:0 0 4px;font-size:.8125rem;font-weight:500;display:block}.sign-close-btn{background:var(--bg-tertiary);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.sign-sig-head{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.sign-sig-modes{background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-shrink:0;display:flex}.sign-sig-mode{min-height:44px;color:var(--text-secondary);text-transform:capitalize;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;padding:.75rem;font-size:.875rem;font-weight:600;transition:all .2s}.sign-sig-mode.is-active{background:var(--accent);color:var(--on-accent);border-bottom-color:#0000}.sign-sig-body{background:var(--bg-primary);flex:1;min-height:320px;padding:1.5rem;overflow-y:auto}.sign-sig-saved{margin-bottom:18px}.sign-sig-saved-list{gap:12px;padding:14px 14px 4px 0;display:flex;overflow-x:auto}.sign-sig-saved-item{flex-shrink:0;position:relative}.sign-sig-saved-btn{border:2px solid var(--border-color);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;width:120px;height:60px;padding:4px;display:flex}.sign-sig-saved-img{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:100%}.sign-sig-remove{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:absolute;top:-16px;right:-16px}.sign-sig-remove-dot{color:#fff;background:#dc2626;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;line-height:1;display:flex}.sign-sig-pad{border:2px solid var(--border-color);background:#fff;border-radius:.75rem;width:100%;height:16rem;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.sign-sig-canvas{cursor:crosshair;touch-action:none;background:#fff;width:100%;height:100%;display:block}.sign-sig-watermark{pointer-events:none;color:#d1d5db;letter-spacing:.1em;justify-content:center;align-items:center;font-size:1.875rem;font-weight:700;display:flex;position:absolute;inset:0}.sign-sig-clear{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:absolute;top:.5rem;right:.5rem;box-shadow:0 2px 4px #0000001a}.sign-sig-type,.sign-sig-styles{flex-direction:column;gap:.75rem;display:flex}.sign-sig-type{gap:1rem}.sign-sig-style{border:2px solid var(--border-color);background:var(--bg-primary);min-height:70px;color:var(--text-primary);text-align:center;cursor:pointer;border-radius:.75rem;padding:1rem;font-size:2.25rem;transition:all .2s}.sign-sig-style.is-active{border:2px solid var(--text-primary);background:var(--bg-secondary)}.sign-sig-upload-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.sign-dialog .btn.sign-action-btn{min-height:44px}@media (width<=639px){.sign-topbar.sign-topbar{flex-wrap:wrap;row-gap:.375rem}.sign-topbar .sign-topbar-left{display:contents}.sign-topbar .sign-topbar-divider{display:none}.sign-topbar .sign-topbar-actions{gap:.375rem;margin-left:auto}.sign-topbar .sign-topbar-history{gap:0}.sign-topbar .sign-action-btn{padding:0 .75rem}.sign-topbar .sign-save-btn{width:44px;padding:0}.sign-left-toolbar.sign-left-toolbar{width:3.25rem;padding:.5rem .25rem}.sign-column{position:relative}.text-format-bar.text-format-bar{position:absolute;top:0;left:0;right:0}.sign-canvas-area.sign-canvas-area{scroll-padding-top:4rem}}
/*$vite$:1*/