:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1c1917;background:#fafaf9;font-synthesis:none;text-rendering:optimizeLegibility;--stone-950: #1c1917;--stone-700: #44403c;--stone-500: #78716c;--stone-400: #a8a29e;--stone-300: #d6d3d1;--stone-200: #e7e5e4;--stone-100: #f5f5f4;--stone-50: #fafaf9}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{overflow:hidden;background:var(--stone-50)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #78716c;outline-offset:2px}.app-shell,.desktop-app{width:100%;height:100%}.desktop-app{display:flex}.signature-sidebar{width:450px;flex:0 0 450px;height:100%;display:flex;flex-direction:column;overflow:hidden;color:var(--stone-950);background:var(--stone-50);border-right:1px solid var(--stone-200)}.sidebar-header{height:60px;flex:0 0 60px;display:flex;align-items:center;padding:16px 32px;border-bottom:1px solid var(--stone-200)}.brand-logo{width:104px;height:auto;display:block}.sidebar-scroll{flex:1;overflow-y:auto;padding:20px 32px 16px;scrollbar-width:thin;scrollbar-color:var(--stone-300) transparent}.sidebar-scroll::-webkit-scrollbar{width:6px}.sidebar-scroll::-webkit-scrollbar-thumb{background:var(--stone-300);border-radius:99px}.editor-section{margin:0 0 20px}.section-label{margin:0 0 8px;color:var(--stone-400);font-size:12px;font-weight:400;line-height:16px}.signature-field{position:relative;display:flex;align-items:center;width:100%;height:42px;margin-bottom:8px;overflow:hidden;border:1px solid var(--stone-200);border-radius:8px;background:#fff;transition:border-color .14s ease,box-shadow .14s ease}.signature-field:focus-within{border-color:var(--stone-300);box-shadow:0 0 0 2px #a8a29e1f}.signature-field-icon{width:17px;height:17px;flex:0 0 17px;margin-left:12px;color:var(--stone-300);stroke-width:1.7}.signature-field input{min-width:0;flex:1;height:100%;padding:0 10px;border:0;outline:0;color:var(--stone-700);background:transparent;font-size:14px;line-height:20px}.signature-field input::placeholder{color:var(--stone-400);opacity:1}.field-clear{display:flex;align-items:center;justify-content:center;width:30px;height:100%;flex:0 0 30px;padding:0;border:0;color:var(--stone-400);background:transparent;opacity:0;pointer-events:none;transition:opacity .12s ease,color .12s ease}.field-clear svg{width:14px;height:14px}.signature-field:hover .field-clear,.signature-field:focus-within .field-clear,.signature-field.has-value .field-clear{opacity:1;pointer-events:auto}.field-clear:hover{color:var(--stone-950)}.upload-card,.employee-import-card{width:100%;border:1px solid var(--stone-200);border-radius:12px;background:linear-gradient(135deg,#fff 0%,var(--stone-50) 100%)}.upload-card{margin-bottom:8px}.upload-card-trigger{display:flex;align-items:center;width:100%;min-height:118px;padding:20px;cursor:pointer}.image-upload-card{padding:16px 20px;cursor:pointer;transition:background-color .16s ease}.image-upload-card:hover,.image-upload-card:focus-within{background-color:#f7f6f5;background-image:none}.image-upload-card-dropzone{padding:0;border:0;border-radius:0;background:transparent}.image-upload-card-dropzone:hover,.image-upload-card-dropzone:focus-within,.image-upload-card-dropzone.has-value{border:0;background:transparent;background-image:none}.image-upload-card-dropzone .logo-btn-content{display:flex;flex-direction:column;gap:8px}.image-upload-card-dropzone .logo-btn-content>.signature-field{margin-bottom:0}.logo-dropzone{display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:124px;padding:16px;border:1px dashed var(--stone-200);border-radius:10px;color:var(--stone-500);background:#fff;cursor:pointer;text-align:center;transition:background-color .16s ease,border-color .16s ease}.logo-dropzone:hover,.logo-dropzone:focus-within{border-color:var(--stone-300);background:#fff}.logo-dropzone-upload{display:inline-flex;align-items:center;justify-content:center;min-width:102px;min-height:36px;padding:0 14px;border:1px solid var(--stone-200);border-radius:8px;color:var(--stone-700);background:#fff;appearance:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;line-height:18px}.logo-dropzone-upload svg{width:15px;height:15px;margin-right:7px;stroke-width:1.8}.logo-dropzone-upload:hover{border-color:var(--stone-300);background:var(--stone-100)}.logo-dropzone-preview{display:block;max-width:150px;max-height:28px;object-fit:contain}.logo-dropzone-copy{margin-top:11px;color:var(--stone-700);font-size:12px;line-height:16px}.logo-dropzone small{margin-top:2px;color:var(--stone-400);font-size:11px;line-height:15px}.logo-uploaded-preview{position:relative;display:flex;align-items:center;justify-content:center;min-height:124px;padding:2px 52px 2px 2px;border:0;border-radius:10px;background:var(--stone-100)}.logo-uploaded-image{display:block;width:auto;max-width:100%;max-height:120px;padding:2px;box-sizing:border-box;object-fit:contain}.logo-uploaded-clear{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--stone-200);border-radius:7px;color:var(--stone-500);background:#fff}.logo-uploaded-clear:hover{color:var(--stone-950);background:var(--stone-100)}.logo-uploaded-clear svg{width:15px;height:15px}.logo-dropzone .logo-url-input-inline{align-self:stretch;width:100%;margin-top:16px}.logo-btn-content-top{display:flex;align-items:center;min-height:44px}.image-upload-card .upload-card-trigger{min-width:0;min-height:44px;padding:0}.upload-icon-box{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--stone-200);border-radius:12px;color:var(--stone-700);background:var(--stone-50)}.upload-icon-box.has-image-preview{overflow:hidden;border-color:var(--stone-300);background:#fff}.upload-preview-image{display:block;width:100%;height:100%;object-fit:contain;border-radius:10px}.upload-icon-box svg{width:20px;height:20px;stroke-width:1.6}.upload-card-copy{display:flex;flex-direction:column;gap:4px;min-width:0;margin-left:16px}.upload-card-copy strong{color:var(--stone-950);font-size:14px;font-weight:600;line-height:18px}.upload-card-copy small{color:var(--stone-500);font-size:12px;line-height:16px}.logo-btn-indicator{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;margin-left:12px;padding:0;border:0;border-radius:7px;color:var(--stone-400);background:transparent}.logo-btn-indicator:hover{color:var(--stone-950);background:var(--stone-100)}.logo-btn-indicator svg{width:16px;height:16px}.logo-url-input-inline{position:relative;display:flex;align-items:center;height:42px;margin-top:20px;overflow:hidden;border:1px solid var(--stone-200);border-radius:8px;background:#fff;transition:border-color .14s ease,box-shadow .14s ease}.logo-url-input-inline:focus-within{border-color:var(--stone-300);box-shadow:0 0 0 2px #a8a29e1f}.logo-url-input-inline .input-icon{width:17px;height:17px;flex:0 0 17px;margin-left:12px;color:var(--stone-300);stroke-width:1.7}.logo-url-input-inline input{min-width:0;flex:1;height:100%;padding:0 10px;border:0;outline:0;color:var(--stone-700);background:transparent;font-size:14px;line-height:20px}.logo-url-input-inline input::placeholder{color:var(--stone-400);opacity:1}.clear-btn{display:flex;align-items:center;justify-content:center;width:30px;height:100%;flex:0 0 30px;padding:0;border:0;color:var(--stone-400);background:transparent;opacity:0;pointer-events:none;transition:opacity .12s ease,color .12s ease}.logo-url-input-inline:hover .clear-btn,.logo-url-input-inline:focus-within .clear-btn,.logo-url-input-inline.has-value .clear-btn{opacity:1;pointer-events:auto}.clear-btn:hover{color:var(--stone-950)}.clear-btn svg{width:14px;height:14px}.apply-all-toggle{display:inline-flex;align-items:center;gap:7px;margin-top:5px;color:var(--stone-500);font-size:11px;line-height:16px;cursor:pointer;-webkit-user-select:none;user-select:none}.apply-all-toggle input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.apply-all-switch{position:relative;display:inline-flex;width:28px;height:16px;flex:0 0 28px;align-items:center;padding:2px;border-radius:999px;background:var(--stone-300);transition:background .16s ease,box-shadow .16s ease}.apply-all-switch:after{width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #1c191729;content:"";transition:transform .16s ease}.apply-all-toggle input:checked+.apply-all-switch{background:var(--stone-700)}.apply-all-toggle input:checked+.apply-all-switch:after{transform:translate(12px)}.apply-all-toggle input:focus-visible+.apply-all-switch{box-shadow:0 0 0 2px #a8a29e59}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-input-hidden{display:none}.color-field{display:flex;align-items:center;height:42px;margin-bottom:8px;overflow:hidden;border:1px solid var(--stone-200);border-radius:8px;background:#fff}.color-field input[type=color]{flex:0 0 28px;width:28px;height:28px;margin:0 8px;padding:0;overflow:hidden;border:0;border-radius:6px;outline:0;appearance:none;aspect-ratio:1;cursor:pointer}.color-field input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-field input[type=color]::-webkit-color-swatch{border:0;border-radius:6px}.color-field input[type=text],.color-field input:not([type]){min-width:0;flex:1;height:100%;padding:0 12px;border:0;outline:0;color:var(--stone-700);background:transparent;font-size:14px}.sidebar-footer{flex:0 0 auto;padding:16px 32px;border-top:1px solid var(--stone-200)}.employee-import-card{display:flex;align-items:center;min-height:78px;padding:16px 20px;text-align:left;cursor:pointer;transition:border-color .14s ease,background .14s ease}.employee-import-card:hover{border-color:var(--stone-300);background:#fff}.employee-import-card .upload-card-copy{margin-left:16px}.employee-import-arrow{display:none}.preview-workspace{position:relative;display:flex;flex:1;min-width:0;height:100%;overflow:hidden;color:var(--stone-950);background:var(--stone-50)}.preview-workspace-dark{background:#292524}.preview-topbar{position:absolute;top:24px;right:24px;z-index:2;display:flex;align-items:center;gap:12px}.help-button,.language-select{display:inline-flex;align-items:center;height:36px;border:1px solid var(--stone-200);border-radius:10px;color:var(--stone-950);background:#fff;font-size:14px}.help-button{gap:8px;padding:0 14px}.help-button:hover{border-color:var(--stone-300);background:var(--stone-50)}.help-button svg{width:16px;height:16px}.language-select{gap:10px;padding:0 12px}.flag-icon{font-size:16px;line-height:1}.language-select select{min-width:26px;padding:0;border:0;outline:0;color:var(--stone-950);background:transparent;font-size:14px;cursor:pointer}.preview-content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:80px 32px 116px}.preview-welcome{margin:0 0 46px;text-align:center}.welcome-mark{width:65px;height:65px;margin:0 auto 29px;overflow:hidden;opacity:.18;filter:grayscale(1)}.welcome-mark img{width:410px;max-width:none;height:auto}.preview-welcome h1{margin:0;color:#d6d3d1;font-size:36px;font-weight:700;letter-spacing:-.04em;line-height:1.15}.preview-welcome p{margin:18px 0 0;color:#d6d3d1;font-size:16px;line-height:24px}.preview-toggle-row{display:flex;gap:8px;margin:0 0 14px}.segmented-toggle{display:flex;align-items:center;gap:2px;height:34px;padding:3px;border:1px solid var(--stone-300);border-radius:8px;background:var(--stone-100)}.segmented-toggle button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:26px;padding:0;border:0;border-radius:6px;color:var(--stone-400);background:transparent}.segmented-toggle button.selected{color:var(--stone-700);background:#fff;box-shadow:0 1px 2px #1c191714}.segmented-toggle button:hover{color:var(--stone-700)}.segmented-toggle svg{width:16px;height:16px;stroke-width:1.7}.preview-card{display:flex;align-items:center;width:700px;max-width:100%;min-height:180px;max-height:60vh;overflow:auto;padding:32px;border:1px solid var(--stone-200);border-radius:16px;background:#fff}.preview-card-mobile{width:375px}.preview-workspace-dark .preview-card{background:#1c1917}.empty-preview{position:relative;width:100%;min-height:150px;color:var(--stone-400);text-align:left}.empty-placeholder-image{display:block;width:min(324px,100%);height:150px;opacity:1}.empty-placeholder-image svg{display:block;width:100%;height:auto}.empty-preview p{position:absolute;top:8px;left:min(205px,45%);margin:0;font-size:14px;font-style:italic;line-height:20px}.signature-render{width:100%;color:var(--stone-950);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:-.03em;line-height:1.6}.signature-render-dark{padding:12px;background:#fff}.preview-actions{position:absolute;right:0;bottom:32px;left:0;display:flex;justify-content:center}.preview-actions-group{display:flex;align-items:center;gap:12px}.copy-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:136px;height:36px;padding:0 14px;border:1px solid var(--stone-200);border-radius:10px;color:var(--stone-950);background:#fff;font-size:14px;font-weight:500;transition:transform .14s ease,border-color .14s ease,background .14s ease}.copy-button:hover:not(:disabled){border-color:var(--stone-400);background:var(--stone-50);transform:translateY(-1px)}.copy-button:disabled{color:#fff;border-color:#c4b5fd;background:#c4b5fd;cursor:not-allowed}.copy-button svg{width:16px;height:16px}.download-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:155px;height:36px;padding:0 14px;border:0;border-radius:10px;color:#fff;background:var(--stone-950);font-size:14px;font-weight:500;transition:transform .14s ease,background .14s ease}.download-button:hover:not(:disabled){background:var(--stone-700);transform:translateY(-1px)}.download-button:disabled{color:#fff;background:#c4b5fd;cursor:not-allowed}.download-button svg{width:16px;height:16px}.mobile-message{display:none}.modal-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:#1c191766;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-card{width:100%;max-height:calc(100vh - 48px);overflow:hidden;border:1px solid var(--stone-200);border-radius:20px;background:#fff;box-shadow:0 24px 72px #1c19172e}.help-modal{max-width:560px}.csv-modal{max-width:640px;border-radius:20px}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:16px 28px;border-bottom:1px solid var(--stone-200)}.modal-header h2{margin:0;color:var(--stone-950);font-size:16px;font-weight:500;line-height:24px}.modal-header p{margin:5px 0 0;color:var(--stone-500);font-size:13px;line-height:19px}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;padding:0;border:0;border-radius:7px;color:var(--stone-400);background:transparent}.modal-close:hover{color:var(--stone-950);background:var(--stone-100)}.modal-close svg{width:16px;height:16px}.modal-body{max-height:calc(100vh - 150px);overflow-y:auto;padding:28px}.modal-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border:1px solid var(--stone-200);border-radius:9px;background:var(--stone-100)}.modal-tabs button{height:34px;padding:0 12px;border:0;border-radius:6px;color:var(--stone-500);background:transparent;font-size:13px}.modal-tabs button.selected{color:var(--stone-950);background:#fff;box-shadow:0 1px 2px #1c191714}.help-content{margin-top:20px;padding:20px;border:1px solid var(--stone-200);border-radius:10px;background:var(--stone-50)}.help-content h3,.csv-preview h3{margin:0 0 14px;color:var(--stone-950);font-size:14px;font-weight:600}.help-content ol{margin:0;padding-left:20px;color:var(--stone-500);font-size:13px;line-height:1.65}.help-content li+li{margin-top:7px}.template-button{display:inline-flex;align-items:center;gap:8px;height:36px;margin-bottom:16px;padding:0 13px;border:1px solid var(--stone-200);border-radius:8px;color:var(--stone-700);background:#fff;font-size:13px;font-weight:500}.template-button:hover{background:var(--stone-50)}.template-button svg{width:15px;height:15px}.csv-dropzone{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:190px;padding:28px;border:1px dashed var(--stone-300);border-radius:12px;background:var(--stone-50);text-align:center;cursor:pointer;transition:border-color .14s ease,background .14s ease}.csv-dropzone:hover,.csv-dropzone.dragging{border-color:var(--stone-500);background:#fff}.csv-drop-icon{width:30px;height:30px;margin-bottom:14px;color:var(--stone-400);stroke-width:1.4}.csv-drop-icon.success{color:#65a30d}.csv-dropzone strong{color:var(--stone-950);font-size:14px;font-weight:500}.csv-dropzone span{margin-top:6px;color:var(--stone-400);font-size:12px}.csv-preview{margin-top:24px}.csv-preview-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--stone-200);border-radius:10px;background:#fff}.csv-preview-card>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}.csv-preview-card strong{overflow:hidden;color:var(--stone-950);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.csv-preview-card span{color:var(--stone-500);font-size:12px}.csv-row-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.csv-row-actions button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--stone-200);border-radius:7px;color:var(--stone-500);background:#fff}.csv-row-actions button:hover:not(:disabled){color:var(--stone-950);background:var(--stone-50)}.csv-row-actions button:disabled{opacity:.35;cursor:not-allowed}.csv-row-actions button svg{width:14px;height:14px}.csv-row-actions>span{min-width:46px;text-align:center}.preview-content-filled{justify-content:center;padding:12px 36px 116px}.preview-card-filled{min-height:320px;align-items:flex-start}.preview-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:28px}.preview-pagination>button,.preview-page-switcher{height:36px;border:1px solid var(--stone-200);border-radius:8px;background:var(--stone-50)}.preview-pagination>button{display:inline-flex;align-items:center;justify-content:center;width:36px;padding:0;color:var(--stone-500)}.preview-pagination .duplicate-signature-button{width:auto;min-width:104px;gap:7px;padding:0 12px;font-size:13px;font-weight:500}.preview-pagination>button:hover,.preview-page-switcher button:hover:not(:disabled){color:var(--stone-950);background:#fff}.preview-page-switcher{display:grid;grid-template-columns:34px 46px 34px;align-items:center;width:116px}.preview-page-switcher button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;color:var(--stone-400);background:transparent}.preview-page-switcher button:disabled{opacity:.35;cursor:not-allowed}.preview-page-switcher span{color:var(--stone-700);font-size:14px;font-weight:500;text-align:center}.preview-pagination svg{width:16px;height:16px;stroke-width:1.6}.csv-overlay{padding:0;background:#fafaf9d1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.csv-modal{width:548px;max-width:calc(100vw - 32px);max-height:calc(100vh - 24px);border:0;border-radius:20px;box-shadow:0 18px 50px #1c191724}.csv-modal .modal-header{height:45px;padding:0 20px;align-items:center}.csv-modal .modal-header h2{font-size:16px;font-weight:600;line-height:20px}.csv-modal .modal-close{width:24px;height:24px;flex-basis:24px}.csv-modal .modal-close svg{width:14px;height:14px}.csv-modal-body{max-height:calc(100vh - 69px);overflow-y:auto;padding:28px 20px 26px}.csv-description{max-width:480px;margin:0;color:var(--stone-700);font-size:14px;line-height:20px}.csv-modal .template-button{height:22px;margin:29px 0 47px 10px;padding:0;border:0;border-radius:0;color:var(--stone-950);background:transparent;font-size:14px;font-weight:400}.csv-modal .template-button:hover{background:transparent;text-decoration:underline}.csv-modal .template-button svg{width:15px;height:15px;stroke-width:1.7}.csv-modal .csv-dropzone{min-height:265px;border-radius:6px}.csv-error{margin:12px 0 0;color:#b42318;font-size:13px;line-height:18px}.csv-modal .csv-preview{margin:0}.csv-modal .csv-preview h3{margin:0 0 15px;color:var(--stone-950);font-size:14px;font-weight:600;line-height:20px}.csv-table-wrap{width:100%;height:267px;overflow:auto;border:1px solid var(--stone-200);border-radius:6px;background:#fff;scrollbar-color:var(--stone-300) transparent;scrollbar-width:auto}.csv-table-wrap::-webkit-scrollbar{width:14px;height:16px}.csv-table-wrap::-webkit-scrollbar-track{background:transparent}.csv-table-wrap::-webkit-scrollbar-thumb{min-width:76px;border-radius:3px;background:var(--stone-300)}.csv-table{width:100%;min-width:670px;border-spacing:0;border-collapse:collapse;color:var(--stone-700);font-size:14px;text-align:left}.csv-table th,.csv-table td{height:36px;padding:0 13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csv-table th{height:48px;color:var(--stone-700);background:var(--stone-50);font-size:13px;font-weight:600}.csv-table td{border-top:1px solid var(--stone-200)}.csv-table th:nth-child(1),.csv-table td:nth-child(1){width:108px}.csv-table th:nth-child(2),.csv-table td:nth-child(2){width:138px}.csv-table th:nth-child(3),.csv-table td:nth-child(3){width:84px}.csv-table th:nth-child(4),.csv-table td:nth-child(4){width:104px}.csv-table th:nth-child(5),.csv-table td:nth-child(5){width:220px}.csv-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.csv-modal-actions button{height:34px;border-radius:5px;font-size:13px;font-weight:500}.csv-clear-button{min-width:65px;padding:0 16px;border:1px solid var(--stone-200);color:var(--stone-700);background:#fff}.csv-clear-button:hover{background:var(--stone-50)}.csv-generate-button{min-width:150px;padding:0 16px;border:1px solid var(--stone-950);color:#fff;background:var(--stone-950)}.csv-generate-button:hover{background:var(--stone-700)}@media(max-width:699px){.desktop-app{display:none}.mobile-message{display:flex;align-items:center;justify-content:center;flex-direction:column;width:100%;height:100%;padding:32px;color:var(--stone-950);background:var(--stone-50);text-align:center}.mobile-logo{width:104px;height:auto;margin-bottom:28px}.mobile-message p{max-width:260px;margin:0;color:var(--stone-500);font-size:16px;line-height:24px}}
