@font-face{font-family:Noto;src:url(../fonts/NotoSans-Regular.ttf)}@font-face{font-family:Noto;src:url(../fonts/NotoSans-Bold.ttf);font-weight:700}*{box-sizing:border-box}body{margin:0;color:#202d44;background:#f8fafc;font:13px Noto,system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.38}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b4c5ff;outline-offset:3px}button{transition:background .15s,color .15s,box-shadow .15s}button:hover:not(:disabled){filter:brightness(.98)}[hidden]{display:none!important}header{height:88px;display:flex;align-items:center;padding:0 42px;border-bottom:1px solid #e3e8f0;background:#fff;gap:32px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#21304b;font-size:23px;font-weight:700;letter-spacing:-1px}.brand small{display:block;font-size:8px;letter-spacing:2px;color:#8694ab;margin-top:1px}.brand-mark{height:43px;width:43px;background:#345ce6;border-radius:13px;color:#fff;font:700 39px Georgia;text-align:center;line-height:45px;box-shadow:0 3px 8px #345ce61a}.private-badge{font-size:11px;color:#64816f;background:#f1f8f4;border:1px solid #dfede4;border-radius:30px;padding:6px 10px;display:flex;align-items:center;gap:7px}.private-badge i{width:5px;height:5px;background:#75a988;border-radius:50%}.private-badge span{color:#95a49a}.header-actions{margin-left:auto;display:flex;gap:10px}.button{border:1px solid #dde4ee;border-radius:10px;background:#fff;color:#364965;padding:10px 17px;display:inline-flex;align-items:center;justify-content:center;gap:18px;box-shadow:0 1px 2px #27375503}.button.primary{background:#345ce6;border-color:#345ce6;color:#fff;box-shadow:0 4px 10px #345ce615}.button.large{padding:16px 23px;border-radius:12px}.button.danger{color:#a2575e}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#8492a9}.welcome-copy h1{font-size:clamp(40px,4.5vw,68px);line-height:1.15;letter-spacing:-3px;margin:23px 0;color:#202d44;font-weight:500}.welcome-copy em{font-style:normal;color:#345ce6}.welcome-copy p{color:#7e8ca3;line-height:1.9;margin:0 0 28px;font-size:15px}.drop-hint{display:block;color:#9ba7ba;font-size:11px;margin:12px 0 35px}.features{display:flex;gap:22px;color:#738299;font-size:11px}#welcome{min-height:calc(100vh - 150px);max-width:1200px;margin:auto;padding:70px 50px;display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:70px}.document-art{position:relative;transform:rotate(4deg);background:#fff;width:330px;height:427px;border-radius:8px;box-shadow:0 30px 80px #20355914,0 0 0 1px #e6eaf0;padding:30px;margin:0 auto}.art-top{display:flex;justify-content:space-between;color:#9da8ba;font-size:9px}.art-title{font-size:37px;line-height:1.13;letter-spacing:-1.8px;margin:29px 0 17px}.art-rule{height:1px;background:#dbe2ed;margin-bottom:20px}.art-line{height:5px;width:80%;background:#edf0f5;margin:10px 0;border-radius:5px}.art-line.long{width:100%}.art-line.short{width:55%}.art-sign{font-family:Georgia,serif;font-style:italic;color:#3f5dd4;font-size:33px;margin:25px 0 4px;transform:rotate(-6deg)}.art-stamp{font-size:8px;letter-spacing:2px;color:#8797b2}.art-caption{border-top:1px solid #edf0f5;margin-top:24px;padding-top:12px;font-size:8px;color:#a0aaba}.art-chip{position:absolute;bottom:60px;right:-37px;background:#fff;border:1px solid #e4e9f2;color:#628c77;border-radius:12px;padding:15px 20px;font-size:11px;transform:rotate(-4deg);box-shadow:0 10px 30px #1720330d}footer{height:42px;padding:0 35px;display:flex;align-items:center;justify-content:space-between;color:#9aa5b6;font-size:10px;border-top:1px solid #e5eaf1;background:#fff}footer>div{display:flex;gap:20px;align-items:center}footer a,footer button{color:#7e8ba1;font-size:10px;text-decoration:none;background:none;border:0;padding:0}.muted{color:#b5bdca}#status{padding:6px 35px;background:#f8fafc;color:#8692a6;font-size:10px;min-height:26px}#status.error{color:#a4424e}.toolbar{height:84px;background:#fff;display:flex;align-items:center;padding:0 25px;gap:28px;border-bottom:1px solid #e2e8f1}.file-info{min-width:120px;max-width:210px;flex:1}.file-info span{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700}.file-info small{font-size:10px;color:#9aa6b7}.tools{display:flex;gap:7px}.tool{width:70px;height:59px;border:1px solid #e0e7f1;background:#fff;border-radius:12px;color:#53637d;display:grid;place-content:center;gap:5px;font-size:10px}.tool svg{width:20px;height:20px;justify-self:center;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.tool.active{background:#eef2ff;color:#345ce6;border-color:#b9c8fc;box-shadow:0 2px 5px #345ce610}.view-controls{display:flex;align-items:center;gap:7px;margin-left:auto}.view-controls>button{width:30px;height:32px;border:1px solid #e4e9f0;border-radius:9px;background:#fff;font-size:18px;color:#4b6398}.divider{height:22px;width:1px;background:#e2e7f0;margin:0 7px}#pageNumber{font-size:10px;color:#8a97ad;white-space:nowrap}.zoom{display:flex;align-items:center;gap:10px;margin-left:10px;padding:9px 12px;border:1px solid #e2e7ef;border-radius:10px}.zoom input{width:80px;height:3px;accent-color:#345ce6}.zoom output{font-size:11px;color:#6c7e9b;min-width:33px}.editor-body{display:flex;height:calc(100vh - 240px);min-height:350px}aside{width:248px;flex-shrink:0;border-right:1px solid #e2e8f0;background:#fff;padding:24px 20px;overflow:auto;display:flex;flex-direction:column}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.panel-dot{width:5px;height:5px;border-radius:50%;background:#b8c8ed}.aside-footer{display:flex;gap:10px;align-items:center;margin-top:auto;padding-top:35px;color:#98a6b9;font-size:11px}.aside-footer p{line-height:1.8}.aside-footer small{font-size:9px}.field{display:flex;flex-direction:column;gap:6px;font-size:10px;color:#8997ad;margin-bottom:14px}.field input,.field select{height:36px;width:100%;min-width:0;border:1px solid #dfe5ef;border-radius:9px;background:#fff;color:#344763;padding:0 10px;font-size:12px}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='m5 6 3 3 3-3' fill='none' stroke='%238494ad' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;padding-right:29px}.row{display:flex;gap:10px}.row>*{flex:1;min-width:0}.color-field{flex:0 0 53px}.field input[type=color]{padding:7px;width:53px;cursor:pointer}.field input[type=color]::-webkit-color-swatch-wrapper{padding:0}.field input[type=color]::-webkit-color-swatch{border:0;border-radius:5px}.format-toggles{display:flex;gap:7px;margin:0 0 17px}.format-toggles button{flex:1;background:#fff;border:1px solid #dfe5ef;border-radius:8px;height:32px;color:#50617c}.format-toggles button.active{background:#eef2ff;border-color:#b3c6fb;color:#345ce6}.note{color:#94a0b3;font-size:10px;line-height:1.7}.font-note{padding:10px;background:#f5f7fc;border-radius:8px;color:#8190a6;font-size:10px;line-height:1.6;overflow-wrap:anywhere}.text-action{border:0;background:none;color:#5276d5;font-size:10px;padding:5px 0;text-align:left}.empty-panel{padding:10px 0;color:#8391a6;line-height:1.9;font-size:12px}.panel-icon{display:block;font-size:35px;color:#b9c8e6;margin-bottom:18px}#workspace{overflow:auto;flex:1;background:#edf1f6;overscroll-behavior:contain;scroll-behavior:smooth;padding:24px 35px 50px}#pages{display:flex;flex-direction:column;align-items:center;gap:28px;min-width:fit-content}.page-shell{position:relative}.page-caption{display:flex;justify-content:space-between;align-items:center;height:29px;font-size:10px;color:#99a6b9;margin-bottom:8px}.delete-page{border:0;background:none;color:#9ba8ba;font-size:10px;padding:3px 6px}.delete-page:hover{color:#ac5362}.page{position:relative;background:#fff;box-shadow:0 4px 22px #3045670b}.page canvas{display:block;width:100%;height:100%;pointer-events:none}.layer{position:absolute;inset:0}.native-target{position:absolute;padding:0;border:1px solid transparent;background:transparent;border-radius:2px;cursor:text}.native-target:hover{border-color:#7d9ceb;background:#5275df0a}.object{position:absolute;white-space:pre;cursor:default;line-height:1.3;transform-origin:0 100%;user-select:none}.object.selectable{cursor:move}.object.selectable:hover{outline:1px solid #99b0ef}.object img,.object svg{width:100%;height:100%;display:block;pointer-events:none}.editing{outline:1px solid #7c9bf2!important}.inline-editor{display:block;position:absolute;border:0;outline:1px solid #7c9bf2;padding:0;margin:0;background:transparent;resize:none;overflow:hidden;white-space:pre;line-height:1.3;color:#202d44;caret-color:#345ce6;min-width:25px}.floating{position:absolute;display:flex;align-items:center;gap:4px;padding:5px;background:#fff;border:1px solid #d9e2f2;border-radius:13px;box-shadow:0 8px 25px #243b6c13;z-index:9;white-space:nowrap}.floating button{height:29px;width:29px;border:0;border-radius:9px;color:#7b8ba7;background:#f4f7fb;display:grid;place-content:center;font-size:16px}.floating .confirm{background:#345ce6;color:#fff}.floating .move{width:42px;cursor:grab;touch-action:none}.floating .delete{color:#ae7078}.resize{position:absolute;right:-4px;bottom:-4px;width:9px;height:9px;background:#fff;border:1px solid #5276de;border-radius:50%;cursor:nwse-resize;touch-action:none}.library-card{display:flex;gap:5px;margin-bottom:10px;border:1px solid #e2e7f0;border-radius:12px;padding:6px}.library-card .choose{width:calc(100% - 29px);border:0;border-radius:8px;background:#f7f9fe;padding:10px;color:#617391}.library-card .choose.active{background:#edf2ff;outline:1px solid #a9bffb}.library-card img{width:100%;height:48px;object-fit:contain}.library-card span{display:block;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:8px}.library-actions{display:flex;flex-direction:column;justify-content:center;gap:4px}.library-actions button{border:0;background:#f8f9fc;width:23px;height:25px;color:#97a3b7;border-radius:6px}.full{width:100%}.symbol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px}.symbol-grid button{border:1px solid #e0e6f0;border-radius:10px;background:#fff;color:#566887;padding:12px 5px;font-size:24px}.symbol-grid button.active{background:#eef2ff;border-color:#aebffa;color:#345ce6}.symbol-grid small{display:block;font-size:9px;margin-top:5px}.success-icon{display:block;width:64px;height:64px;line-height:64px;border-radius:50%;background:#e9f5ef;color:#61957a;font-size:28px;margin:0 auto 28px}#saved{text-align:center;min-height:calc(100vh - 156px);padding:100px 20px}#saved h1{font-size:40px;font-weight:500;letter-spacing:-1px;margin:16px 0}#saved p{color:#94a0b3;margin-bottom:30px}#saved>div{display:flex;justify-content:center;gap:10px}#busy{position:fixed;inset:0;background:#f8fafce8;display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:100;color:#6d7e98;backdrop-filter:blur(3px)}.spinner{width:25px;height:25px;border:2px solid #d5dded;border-top-color:#345ce6;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}dialog{border:1px solid #e3e8f1;border-radius:20px;padding:28px;width:560px;box-shadow:0 25px 100px #20305225;color:#263751}dialog::backdrop{background:#20304b44;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.dialog-heading h2{font-size:23px;letter-spacing:-.6px;font-weight:500;margin:5px 0}.icon-button{border:0;background:#f5f7fc;border-radius:8px;width:29px;height:29px;color:#8493aa;font-size:20px}.signature-methods{display:flex;gap:9px}.signature-methods .button{flex:1;padding:10px 5px;font-size:11px}.dialog-actions{display:flex;justify-content:space-between;margin-top:20px}#signatureEmpty{padding:45px 20px;color:#a1acbd;text-align:center;font-size:12px}#signatureVariants{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:20px 0}#signatureVariants:empty{display:none}.variant{border:1px solid #e0e6ee;border-radius:10px;background:#fff;padding:5px;color:#8694aa;font-size:10px}.variant img{width:100%;height:75px;object-fit:contain;background:repeating-conic-gradient(#f0f2f6 0 25%,#fff 0 50%) 0/12px 12px;border-radius:7px}.variant.active{border-color:#7699f2;color:#345ce6;background:#f3f6ff}#drawing{margin:20px 0}#drawBoard{width:100%;height:145px;border:1px dashed #bbcbe6;border-radius:12px;touch-action:none;cursor:crosshair}#drawing>div{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}body.dragging:after{content:"Drop your PDF to begin";position:fixed;inset:15px;z-index:150;display:grid;place-content:center;border:2px dashed #345ce6;border-radius:25px;background:#f7f9ffee;color:#345ce6;font-size:28px;pointer-events:none}@media(max-width:1150px){.toolbar{gap:15px;padding:0 15px}.tool{width:57px}.file-info{max-width:130px;min-width:80px}.view-controls{gap:4px}.zoom{padding:8px;gap:5px;margin-left:4px}.zoom input{width:55px}aside{width:215px;padding:20px 15px}}@media(max-width:850px){header{padding:0 20px;height:74px}.private-badge{display:none}#welcome{grid-template-columns:1fr;padding:60px 25px;gap:55px}.document-art{width:280px;height:400px}.toolbar{height:auto;padding:14px;flex-wrap:wrap;gap:12px}.file-info{max-width:none;flex-basis:100%}.tools{flex:1}.tool{width:60px}.view-controls{flex-basis:100%;justify-content:center}.editor-body{height:calc(100vh - 315px)}aside{width:190px;padding:17px 12px}#workspace{padding:15px 20px}.features{gap:12px;font-size:10px}footer{padding:0 15px}footer .muted{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}#fontDialog{width:min(500px,calc(100vw - 32px));padding:28px}#fontDialog .dialog-heading{align-items:flex-start;margin-bottom:14px}#fontDialog h2{font-size:24px;line-height:1.25}#fontDialog .eyebrow{font-size:9px;letter-spacing:1.6px}.dialog-description{font-size:14px;line-height:1.7;color:#6b7b92;margin:0 0 22px}.dialog-description strong{color:#263751;font-weight:600;overflow-wrap:anywhere}.font-preview{margin:16px 0 12px;padding:18px;background:#f5f7fc;border:1px solid #e8edf5;border-radius:12px}.font-preview p{font-size:20px;line-height:1.45;max-height:110px;overflow:auto;margin:12px 0 0;overflow-wrap:anywhere;color:#172033}.dialog-error{font-size:12px;line-height:1.5;background:#fff2f3;border-radius:9px;padding:10px;color:#aa4050}#fontDialog .dialog-actions{gap:12px;border-top:1px solid #edf0f6;padding-top:20px}#fontDialog .dialog-actions .button{min-width:130px}#fontDialogImport{font-size:12px;margin-top:4px}select optgroup{font-weight:600;color:#7d8da5}select option{font-weight:400;color:#263751}.font-source{display:flex;padding:4px;gap:4px;border:1px solid #e1e6ef;border-radius:12px;background:#f4f6fb;margin-bottom:16px}.font-source button{flex:1;border:0;border-radius:8px;padding:9px 5px;background:transparent;color:#65718a;font:inherit;font-size:12px;cursor:pointer}.font-source button[aria-pressed=true]{background:#fff;color:#354edc;box-shadow:0 2px 7px #20345512}.font-source button:focus-visible{outline:2px solid #5971ed}#fontDialogLocal{margin-top:8px}#replacementPreview{overflow-wrap:anywhere;white-space:pre-wrap}#fontDialog{width:min(480px,calc(100vw - 32px));padding:26px;max-height:calc(100dvh - 32px);overflow:auto}#fontDialog .dialog-heading{align-items:center;gap:16px;margin-bottom:14px}#fontDialog h2{font-size:23px;margin:0;letter-spacing:-.4px}#fontDialog .icon-button,#blockedDocumentDialog .icon-button{width:34px;height:34px;flex-shrink:0;border-radius:10px}#fontDialog .dialog-description{font-size:13px;line-height:1.65;margin-bottom:20px}.font-device-actions{display:flex;gap:10px}#fontDialog .font-device-actions .button{flex:1;min-height:46px;margin:0;padding:10px 12px;font-size:13px;font-weight:600;gap:8px;border-radius:11px}#fontDialog .font-device{background:#edf2ff;border-color:#c3d0fc;color:#284bca}.font-divider{display:flex;align-items:center;gap:12px;color:#8492a8;font-size:11px;margin:22px 0 16px}.font-divider:before,.font-divider:after{content:"";height:1px;flex:1;background:#e7ecf4}#fontDialog .field{font-size:12px;margin-bottom:0}#fontDialog select{min-height:44px;font-size:13px}#fontDialog .font-preview{padding:15px 16px;margin:12px 0 8px;border-radius:12px}#fontDialog .font-preview p{margin-top:8px;max-height:90px}#fontDialog .note{font-size:11px;line-height:1.5;margin:0}#fontDialog .dialog-actions{margin-top:20px;padding-top:18px;gap:12px}#fontDialog .dialog-actions .button{min-height:46px;min-width:100px;font-size:13px;font-weight:600;border-radius:11px}#fontDialog #useReplacementFont{flex:1}#blockedDocumentDialog{width:min(460px,calc(100vw - 32px));padding:26px}#blockedDocumentDialog h2{font-size:21px;line-height:1.3;margin:0}#blockedDocumentDialog .dialog-heading{gap:16px;align-items:center}#blockedDocumentDialog .dialog-actions{justify-content:flex-end}#blockedDocumentOkay{min-width:120px;min-height:44px;font-weight:600}@media(max-width:420px){#fontDialog{padding:20px}.font-device-actions{flex-direction:column}#fontDialog h2{font-size:21px}}body{height:100dvh;display:flex;flex-direction:column;overflow:hidden}header{height:72px;flex-shrink:0;padding:0 28px}#editor{display:flex;flex-direction:column;flex:1;min-height:0}.toolbar{height:66px;flex-shrink:0;gap:22px;padding:0 22px}.tool{height:46px;width:70px;border-radius:10px;gap:3px;font-size:10px}.tool svg{width:18px;height:18px}.editor-body{flex:1;min-height:0;height:auto}#workspace{min-height:0}aside{padding:20px 18px}footer{height:32px;min-height:32px;flex-shrink:0;padding:0 24px}footer>div{gap:18px}footer button,footer a{padding:6px 0}#welcome{flex:1;min-height:0;width:100%;overflow:auto}#status{position:fixed;left:0;bottom:0;width:1px;height:1px;min-height:0;overflow:hidden;clip-path:inset(50%);padding:0;white-space:nowrap}#status.error{clip-path:none;left:24px;bottom:44px;width:max-content;max-width:calc(100vw - 48px);height:auto;white-space:normal;padding:12px 16px;border:1px solid #edcdd2;border-radius:12px;background:#fff7f8;box-shadow:0 6px 25px #26375116;font-size:12px;z-index:30}.view-controls>.history-action{width:auto;min-width:88px;height:38px;padding:0 12px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:600;color:#39598d;border-color:#d3def0;box-shadow:0 1px 3px #26375108;border-radius:10px}.history-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.view-controls>.history-action:disabled{opacity:1;color:#a4b1c8;background:#f8faff;border-color:#e6ecf5;box-shadow:none}.view-controls>.history-action:not(:disabled):hover{background:#edf3ff;border-color:#b4c8ee}.inline-editor{caret-color:#243c70;caret-animation:auto;cursor:text}.floating svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.floating .move{width:48px;color:#3158a0;background:#eaf0ff;border:1px solid #d2def8;cursor:move}.floating .move:hover,.floating .move:active{cursor:move;background:#dae5ff;border-color:#a9bfe9}.floating .delete{background:#fff3f4;color:#a65564}.floating .delete:hover{background:#ffe7eb}#fontDialog .font-device-actions{margin-bottom:20px}#fontDialog .font-device-actions #fontDialogLocal{flex:1}#fontDialog .font-device-actions #useReplacementFont{flex:1.15}#fontDialog .font-preview{margin-bottom:0}@media(max-width:1100px){.toolbar{gap:14px;padding:0 16px}.view-controls>.history-action{min-width:36px;padding:0 8px}.history-action span{display:none}.tool{width:60px}}@media(max-width:850px){header{height:64px;padding:0 18px}.toolbar{height:auto;padding:10px 14px;gap:9px}.file-info{flex-basis:100%;max-width:none}.tools{justify-content:center}.tool{flex:1;max-width:90px}.view-controls{flex-basis:100%;justify-content:center}.view-controls>.history-action{min-width:82px}.history-action span{display:inline}.editor-body{height:auto}footer{padding:0 14px}footer>div{gap:12px}footer>span{display:none}footer>div{margin-left:auto}}@media(max-width:420px){#fontDialog .font-device-actions{flex-direction:row;gap:8px}#fontDialog .font-device-actions .button{font-size:12px;padding:10px 8px;min-height:48px}}.font-picker{position:relative;min-width:0}.font-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:36px;padding:8px 12px;border:1px solid #dce4f0;border-radius:10px;background:#fff;color:#364965;text-align:left;font-size:12px}.font-trigger:after{content:"";width:6px;height:6px;border-right:1.6px solid #8395b3;border-bottom:1.6px solid #8395b3;transform:rotate(45deg);flex-shrink:0;margin-right:3px;margin-top:-3px}.font-menu{position:absolute;z-index:50;left:0;top:calc(100% + 6px);width:100%;max-width:calc(100vw - 40px);max-height:min(340px,45vh);overflow:auto;padding:7px;background:#fff;border:1px solid #dce4f0;border-radius:13px;box-shadow:0 12px 32px #25375323}.font-group{padding:11px 9px 6px;font:600 10px Noto,sans-serif;letter-spacing:.6px;color:#8492aa;text-transform:uppercase}.font-choice{display:block;width:100%;padding:9px 10px;border:0;border-radius:7px;background:#fff;text-align:left;color:#24334c;font-size:16px;line-height:1.4}.font-choice[aria-selected=true]{background:#edf2ff;color:#315be0}.font-choice:hover,.font-choice:focus-visible{background:#f0f4fb;outline-offset:-2px}#fontDialog .font-trigger{min-height:44px;font-size:14px}#fontDialog .font-menu{width:100%;max-height:230px}.symbol-grid button{display:flex;flex-direction:column;align-items:center;gap:6px}.symbol-grid svg{width:23px;height:23px}.symbol-grid small{margin:0}.placement-preview{position:absolute;pointer-events:none;opacity:.55;z-index:4}.placement-preview img,.placement-preview svg{display:block;width:100%;height:100%}.page.placing{cursor:crosshair}.weight-labels{display:flex;justify-content:space-between;font-size:10px;color:#8b99ae;margin-top:5px}#signatureWeight{padding:0;height:24px;accent-color:#345ce6}.native-target{cursor:text}#fontDialog[open]{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 32px)}#fontDialog>.dialog-heading,#fontDialog>.dialog-description,#fontDialog>.font-device-actions{flex-shrink:0}#fontDialog>.field,#fontDialog .font-picker{min-height:0;display:flex;flex-direction:column}#fontDialog .font-trigger{flex-shrink:0}#fontDialog.fonts-expanded .font-preview{display:none}#fontDialog .font-menu{position:relative;top:0;margin-top:6px;max-height:280px;min-height:0;flex:0 1 auto;box-shadow:none;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bcc8dc transparent}#fontDialog.fonts-expanded>.field{flex:1;overflow:hidden}#fontDialog.fonts-expanded .font-picker{flex:1;overflow:hidden}#fontDialog .dialog-error{flex-shrink:0;max-height:60px;overflow:auto}.font-choice{padding:6px 9px;font-size:14px;line-height:20px;font-size-adjust:.5}.font-group{padding:9px 9px 4px;font-size:9px}.font-menu{scrollbar-width:thin;scrollbar-color:#bcc8dc transparent}.view-controls>.history-action{min-width:72px;height:34px;padding:0 9px;gap:5px;font-size:11px;border-radius:9px}.history-action svg{width:17px;height:17px}.brand-mark{display:grid;place-items:center;line-height:1;background:none;flex-shrink:0}.brand-mark img{display:block;width:100%;height:100%}@media(max-width:1100px)and (min-width:851px){.view-controls>.history-action{min-width:34px;width:34px;padding:0}}@media(max-height:600px){#fontDialog{padding:18px}#fontDialog .dialog-heading{margin-bottom:10px}#fontDialog .dialog-description{font-size:12px;line-height:1.5;margin-bottom:12px;max-height:60px;overflow:auto}#fontDialog .font-device-actions{margin-bottom:12px}#fontDialog .font-preview{padding:10px}#fontDialog .font-preview p{max-height:48px}#fontDialog .font-menu{max-height:220px}}.font-recommendation{margin-top:16px;padding:12px;border:1px solid #e3e8f3;border-radius:12px;background:#f7f9ff}.font-recommendation p{font-size:12px;line-height:1.5;margin:0 0 10px;color:#667796}.font-recommendation .button{width:100%;min-height:36px;font-size:13px}.font-recommendation .dialog-error{color:#a13549;margin:10px 0 0}.font-group{display:flex;align-items:center;min-height:23px;margin:4px 0;padding:5px 9px;border-radius:6px;background:#eaf2ff;color:#536f9e;font-size:9px;line-height:13px;letter-spacing:.65px}.size-picker{position:relative;display:flex;align-items:center;min-width:0}.size-picker input{padding-right:34px;-moz-appearance:textfield}.size-picker input::-webkit-inner-spin-button,.size-picker input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.size-trigger{position:absolute;right:1px;top:1px;width:30px;height:34px;display:grid;place-content:center;border:0;border-radius:0 8px 8px 0;background:transparent;color:#8395b3}.size-trigger:after{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);margin-top:-3px}.size-trigger:hover,.size-trigger[aria-expanded=true]{background:#edf3ff;color:#365ce0}.size-menu{position:absolute;z-index:55;top:calc(100% + 6px);left:0;width:100%;min-width:125px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:6px;border:1px solid #dce4f0;border-radius:11px;background:#fff;box-shadow:0 10px 28px #25375323}.size-menu button{min-width:0;height:29px;padding:0;border:0;border-radius:6px;background:transparent;color:#344763;font-size:12px}.size-menu button:hover,.size-menu button:focus-visible{background:#edf3ff;outline:1px solid #b8ccf5;outline-offset:-1px}.size-menu button[aria-selected=true]{background:#e4edff;color:#3159d6;font-weight:600}.font-choice{position:relative;padding-right:32px}.font-choice:hover{background:#f6f7f9}.font-choice[aria-selected=true]{background:#f1f3f6;color:#24334c;box-shadow:inset 0 0 0 1px #cbd3df}.font-choice[aria-selected=true]:hover{background:#e9edf2}.font-choice[aria-selected=true]:after{content:"";position:absolute;right:13px;top:50%;width:6px;height:10px;border-right:2px solid #365ce6;border-bottom:2px solid #365ce6;transform:translateY(-65%) rotate(45deg)}.font-choice:focus-visible{background:#f6f7f9;outline:2px solid #637ee4;outline-offset:-2px}.font-choice[aria-selected=true]:focus-visible{background:#f1f3f6}.font-menu{padding:6px;max-height:min(410px,55vh);display:flex;flex-direction:column;overflow:hidden;border-color:#dce4ef;border-radius:12px;box-shadow:0 12px 35px #2134501c}.font-search{flex-shrink:0;padding:2px 2px 7px;border-bottom:1px solid #edf0f5;margin-bottom:4px}.font-search input{height:32px;padding:0 9px;border-color:#e4eaf2;border-radius:7px;background:#f8fafc;font:12px Noto,sans-serif;appearance:none}.font-search input::placeholder{color:#8996aa}.font-options{overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#c7d1df transparent;overscroll-behavior:contain}.font-group{min-height:22px;margin:5px 1px 3px;padding:4px 8px;background:#eff3f8;border-radius:4px;color:#657994;font:600 9px/14px Noto,sans-serif;letter-spacing:.75px;text-transform:uppercase}.font-choice{position:relative;min-height:33px;margin:1px 0;padding:6px 34px 6px 11px;border-radius:6px;box-shadow:none;background:#fff;color:#27374f;line-height:20px}.font-choice:hover{background:#f4f6fa}.font-choice[aria-selected=true],.font-choice[aria-selected=true]:hover,.font-choice[aria-selected=true]:focus-visible{background:#fff;color:#3159cf;box-shadow:inset 2px 0 #496de1}.font-choice[aria-selected=true]:before{content:"";position:absolute;right:9px;top:50%;width:17px;height:17px;border-radius:50%;background:#3b60d9;transform:translateY(-50%)}.font-choice[aria-selected=true]:after{right:15px;width:4px;height:7px;border-color:#fff;border-width:0 1.5px 1.5px 0}.font-choice:focus-visible{background:#f4f6fa;outline:1.5px solid #9baeea;outline-offset:-2px}.font-empty{margin:0;padding:20px 8px;text-align:center;color:#8290a7;font:12px Noto,sans-serif}.font-search input:focus{outline:0;border-color:#93a9e7;box-shadow:0 0 0 2px #e7edfb}.font-choice{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.font-choice{padding:6px 10px;border-radius:7px}.font-choice[aria-selected=true],.font-choice[aria-selected=true]:hover,.font-choice[aria-selected=true]:focus-visible{background:#eaf0fc;color:#465f88;box-shadow:inset 0 0 0 1px #d5dff0}.font-choice[aria-selected=true]:before,.font-choice[aria-selected=true]:after{content:none;display:none}.font-choice[aria-selected=true]:focus-visible{outline:2px solid #9db5e6;outline-offset:-2px}.font-group{color:#647991;background:#eff3f8}.font-recommendation{padding:13px;background:#f1f5ff;border-color:#cad8f7;box-shadow:0 2px 6px #294b8510}.font-recommendation p{color:#536888}.font-recommendation .button{min-height:39px;border:1px solid #a7bcee;background:#e1eaff;color:#254caa;font-weight:600;box-shadow:0 2px 3px #345ce610}.font-recommendation .button:hover{background:#d4e1ff;border-color:#7f9edf;filter:none}.toolbar{gap:16px}.tools{gap:5px;flex-shrink:0}.tool{width:62px}.file-info{min-width:90px;max-width:170px}.field textarea{min-height:140px;width:100%;resize:vertical;border:1px solid #dfe5ef;border-radius:9px;padding:10px;color:#344763;font:12px/1.6 Noto,sans-serif}.field input[type=range]{padding:0;accent-color:#345ce6}.fill-toggle{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:#536888;font-size:12px}.fill-toggle input{accent-color:#345ce6}.drawing-mode .page{cursor:crosshair}.drawing-mode .object.editing{cursor:move}@media(max-width:1250px)and (min-width:851px){.toolbar{gap:10px;padding:0 14px}.tool{width:55px;font-size:9px}.tools{gap:4px}.file-info{min-width:65px;max-width:100px}.history-action span{display:none}.view-controls>.history-action{width:34px;min-width:34px;padding:0}.view-controls{gap:4px}.zoom input{width:55px}.zoom{margin-left:2px;padding:8px}.divider{margin:0 3px}}@media(max-width:850px){.file-info{max-width:none;flex-basis:100%}.tools{width:100%;flex:1}.tool{flex:1;max-width:none;min-width:0;width:auto}.toolbar{gap:8px}.view-controls{width:100%;justify-content:center}}.drawing-mode .object:not(.selectable):not(.editing){pointer-events:none}.drawing-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 0 17px}.drawing-choices button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:61px;padding:9px 5px;border:1px solid #dfe6f0;border-radius:10px;background:#fff;color:#536887;font:11px Noto,sans-serif}.drawing-choices svg{width:30px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.drawing-choices button:hover{background:#f5f8ff;border-color:#c2d0ef}.drawing-choices button[aria-pressed=true]{color:#3159c9;background:#edf2ff;border-color:#aebff0;box-shadow:0 1px 3px #345ce610}.annotation-colors{display:flex;gap:11px;margin:0 0 16px;padding:3px}.annotation-colors button{width:30px;height:30px;border:4px solid white;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #e0e6ef;padding:0}.annotation-colors button:hover{box-shadow:0 0 0 2px #bdcbe6}.annotation-colors button[aria-pressed=true]{box-shadow:0 0 0 2px #5474bb}.drawing-mode .page{touch-action:none}.highlight-text-layer{position:absolute;inset:0;z-index:5;user-select:text;cursor:text;pointer-events:none}.highlight-text{position:absolute;white-space:pre;transform-origin:0 0;user-select:text;cursor:text;pointer-events:auto;color:transparent!important;-webkit-text-fill-color:transparent}.highlight-text::selection{background:var(--highlight-color);color:transparent;-webkit-text-fill-color:transparent}.highlight-mode .page{cursor:text;touch-action:auto}.highlight-mode .object:not(.editing){pointer-events:none}.font-menu{padding:7px 0 6px}.font-search{margin:0 8px 6px;padding:2px 0 7px}.font-group{width:100%;min-height:24px;margin:5px 0 4px;padding:4px 18px;border-radius:0;border-top:1px solid #e7edf5;border-bottom:1px solid #e7edf5;background:#eff3f8;color:#5e728d}.font-options>[role=group]:first-child .font-group{margin-top:0}.font-choice{width:calc(100% - 16px);margin:2px 8px;padding:6px 10px;border-radius:10px}.font-choice[aria-selected=true]{border-radius:12px}.font-choice-preview{display:block;max-width:100%;fill:currentColor;pointer-events:none}.font-choice-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.clear-highlights{margin-top:16px;gap:8px;min-height:38px;font-size:11px;color:#8b5261;border-color:#eadde2;background:#fffafb}.clear-highlights svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.clear-highlights:hover:not(:disabled){background:#fff0f3;border-color:#dbbcc5}.clear-highlights:disabled{color:#9ca7b9;border-color:#e5eaf1;background:#f8fafc;cursor:default}.highlight-erasing .page{cursor:crosshair}.highlight-erase-target{z-index:6;pointer-events:none!important}.highlight-erase-target svg{pointer-events:none}.highlight-erase-target path{pointer-events:visiblePainted;cursor:crosshair}.highlight-erase-target path:hover{stroke:#ac6174;stroke-width:1;fill-opacity:.6}.highlight-erase-target:focus-visible{outline:2px solid #ac6174;outline-offset:2px}.delete-page{width:30px;height:30px;padding:6px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:8px;background:transparent;color:#8a95a7}.delete-page:hover{background:#fff1f2;color:#b24d5a;border-color:#f0d9de}.delete-page svg,.page-delete-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}#deletePageDialog{width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:28px;border:1px solid #e1e7f0;border-radius:20px;background:#fff;color:#243550;box-shadow:0 24px 80px #172c4930}#deletePageDialog::backdrop{background:#24355045;backdrop-filter:blur(3px)}.page-delete-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#fff0f2;color:#b54c5b;margin-bottom:17px}.page-delete-icon svg{width:21px;height:21px}#deletePageDialog h2{margin:0 0 10px;font-size:23px;font-weight:600;letter-spacing:-.5px}#deletePageDialog p{margin:0;color:#7c8ba3;font-size:13px;line-height:1.7}.page-delete-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:25px}.page-delete-actions .button{min-height:42px;min-width:100px;font-weight:600}#confirmPageDelete{background:#b84d5c;border-color:#b84d5c;color:#fff;min-width:128px}#saved{display:grid;place-items:center;text-align:center;min-height:calc(100dvh - 110px);padding:40px 24px}#saved .save-confirmation{display:block;max-width:540px;width:100%;margin:0;position:relative}#saved:not([hidden]) .save-confirmation{animation:save-appear .85s cubic-bezier(.22,.45,.32,1) both}#saved .success-icon{display:flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:50%;margin:0 auto 34px;background:#2ba778;color:#fff;box-shadow:0 0 0 15px #e4f3eb}#saved .success-icon svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}#saved:not([hidden]) .success-icon path{stroke-dasharray:44;stroke-dashoffset:44;animation:save-check 1.05s .16s cubic-bezier(.35,.15,.25,1) forwards}#saved h1{margin:0 0 12px;font-size:36px;font-weight:600;letter-spacing:-1px;outline:none}#saved p{font-size:14px;line-height:1.6;color:#8190a6;overflow-wrap:anywhere;margin:0 0 30px}#saved .saved-actions{display:flex;align-items:center;justify-content:center;gap:12px;margin:0;flex-wrap:wrap}#saved .button{min-height:44px;padding:11px 21px}@keyframes save-appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes save-check{to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){#saved:not([hidden]) .save-confirmation,#saved:not([hidden]) .success-icon path{animation:none}#saved:not([hidden]) .success-icon path{stroke-dashoffset:0}}aside:has(.empty-panel) .panel-dot{display:none}.empty-panel{padding-top:20px;max-width:190px;line-height:1.8}#saved{flex:1;min-height:0;overflow:auto}body:has(#welcome:not([hidden])),body:has(#saved:not([hidden])){background:#f9fbfe}body:has(#welcome:not([hidden]))>header,body:has(#saved:not([hidden]))>header{background:transparent;border-bottom-color:transparent}body:has(#welcome:not([hidden])) .header-actions,body:has(#saved:not([hidden])) .header-actions{display:none}#welcome{display:grid;grid-template-columns:1fr;place-items:center;gap:0;max-width:none;margin:0;padding:48px 24px 70px;background:radial-gradient(ellipse at 50% 44%,#fff 0%,#fff8 35%,transparent 70%)}.welcome-intro{text-align:center;max-width:820px;width:100%;animation:save-appear .5s cubic-bezier(.2,.7,.3,1) both}#welcomeTitle{margin:0;color:#20304b;font-size:clamp(48px,5.3vw,76px);font-weight:700;letter-spacing:-3.8px;line-height:1.13}#welcomeTitle>span{display:block;margin-top:18px;color:#61718a;font-size:clamp(22px,2.4vw,32px);font-weight:400;letter-spacing:-.8px;line-height:1.4}#welcomeTitle em{font-style:normal;color:#345ce6;font-weight:600}#openWelcome{margin-top:38px;min-width:184px;min-height:54px;padding:14px 25px;gap:11px;border-radius:14px;font-size:15px;font-weight:600;box-shadow:0 6px 16px #345ce621;transition:background .16s,box-shadow .16s,transform .16s}#openWelcome svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#openWelcome:hover{background:#294fd4;box-shadow:0 9px 22px #345ce629;transform:translateY(-1px)}#openWelcome:active{transform:translateY(0);box-shadow:0 3px 8px #345ce620}body:has(#welcome:not([hidden]))>footer{background:transparent;border-top-color:transparent}body:has(#welcome:not([hidden]))>footer>span{visibility:hidden}@media(max-width:520px){#welcome{padding:32px 20px 54px}#welcomeTitle{letter-spacing:-2.3px}#welcomeTitle>span{margin-top:14px;letter-spacing:-.5px}#openWelcome{margin-top:30px}}@media(max-height:500px){#welcome{padding:24px}#welcomeTitle{font-size:44px}#welcomeTitle>span{margin-top:10px;font-size:22px}#openWelcome{margin-top:22px}}@media(prefers-reduced-motion:reduce){.welcome-intro{animation:none}#openWelcome:hover{transform:none}}#saved{padding-bottom:clamp(88px,12dvh,136px)}@media(max-height:500px){#saved{padding-top:24px;padding-bottom:48px}}#saved #savedDescription[hidden]+.saved-actions{margin-top:28px}#licensesPage{flex:1;min-height:0;width:100%;overflow:auto;background:#f9fbfe}.licenses-page-inner{max-width:900px;margin:0 auto;padding:28px 28px 60px}.licenses-back{background:transparent;border:0;color:#5273bb;font-size:12px;padding:5px 0}.licenses-back:hover{color:#345ce6}body.viewing-licenses>#welcome,body.viewing-licenses>#editor,body.viewing-licenses>#saved,body.viewing-licenses>footer,body.viewing-licenses>#status{display:none!important}body.viewing-licenses>header{display:flex;background:#f9fbfe;border-bottom-color:transparent}body.viewing-licenses .header-actions{display:none}.licenses-heading{padding:24px 0 26px;border-bottom:1px solid #e6ebf3}.licenses-heading h1{font-size:30px;font-weight:600;letter-spacing:-.6px;margin:0 0 8px}.licenses-heading p{font-size:12px;line-height:1.6;color:#7c8ba3;margin:0}.licenses-heading .icon-button{width:32px;height:32px;flex-shrink:0}.licenses-content{padding:28px 0 0;min-height:0;overflow-wrap:anywhere}.license-group{margin:0 0 36px}.license-group>h3{font-size:18px;margin:0 0 22px;padding-bottom:12px;border-bottom:1px solid #dfe6ef;color:#243550}.license-entry{margin:0 0 30px}.license-entry>h4{font-size:13px;font-weight:600;margin:0 0 18px;overflow-wrap:anywhere}.license-notice{margin-bottom:18px}.license-notice h5{font-size:11px;font-weight:600;line-height:1.7;color:#637690;margin:0 0 6px;overflow-wrap:anywhere}.licenses-content pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.75 ui-monospace,Consolas,monospace;color:#46566d}.licenses-content .license-body{border-top:1px solid #edf1f6;padding-top:14px}.licenses-loading,.licenses-error{font-size:13px;color:#7c8ba3;line-height:1.7}@media(max-width:520px){.licenses-page-inner{padding:20px 20px 40px}.licenses-heading{padding:22px 0}.licenses-content{padding-top:24px}}.legal-content{max-width:720px}.legal-updated{font-size:12px;color:#8493aa;margin:0 0 26px}.legal-section{margin:0 0 28px}.legal-section h3{font-size:16px;letter-spacing:-.15px;color:#293b56;margin:0 0 9px}.legal-section>p{font-size:14px;line-height:1.85;color:#65758f;margin:0 0 10px}.legal-section>a{font-size:13px;color:#3659ed;text-decoration:none}.legal-section>a:hover{text-decoration:underline}@media(max-width:520px){.legal-section>p{font-size:13px}}#busy{background:#f5f8fcd9;backdrop-filter:blur(5px);padding:24px;z-index:200}.loading-card{width:min(340px,100%);padding:32px 28px 29px;background:#fff;border:1px solid #e4eaf3;border-radius:22px;box-shadow:0 14px 50px #24385512;text-align:center;animation:loading-appear .18s ease-out both}.loading-ring{width:48px;height:48px;margin:0 auto 21px;color:#345ce6}.loading-ring svg{display:block;width:100%;height:100%;fill:none;stroke-width:3;animation:loading-turn .9s linear infinite}.loading-track{stroke:#e9eef9}.loading-arc{stroke:currentColor;stroke-linecap:round;stroke-dasharray:34 86}#busyText{font-size:16px;line-height:1.5;font-weight:600;letter-spacing:-.25px;color:#263751;margin:0}#busyDetail{font-size:12px;line-height:1.7;color:#7c8ba3;margin:9px auto 0;max-width:255px}@keyframes loading-turn{to{transform:rotate(360deg)}}@keyframes loading-appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.loading-card,.loading-ring svg{animation:none}}.device-font-rights{font-size:10px!important;line-height:1.6!important;color:#8393a9!important;margin:8px 0 0!important}#status.notice{clip-path:none;left:var(--notice-center,50%);top:var(--notice-top,150px);bottom:auto;transform:translate(-50%);display:flex;align-items:center;gap:14px;width:max-content;max-width:var(--notice-width, calc(100vw - 32px) );height:auto;white-space:normal;padding:10px 11px 10px 16px;border:1px solid #dbe4f1;border-radius:12px;background:#fff;color:#526782;box-shadow:0 6px 25px #26375116;font-size:12px;line-height:1.6;z-index:30}.notice-close{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;padding:5px;border:0;border-radius:7px;color:#8393a9;background:transparent}.notice-close:hover{background:#f0f4fb;color:#425a7c}.notice-close svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}:root{--control-edge:#c3cbd6;--control-edge-hover:#a8b5c6}.tool:not(.active){border-color:var(--control-edge);color:#46566e;box-shadow:0 1px 2px #26375108}.tool.active{border-color:#9fb2ee}.tool:not(.active):hover{border-color:var(--control-edge-hover);background:#f5f7fa}.button:not(.primary):where(:not(#useDeviceFont):not(#confirmPageDelete)){border-color:var(--control-edge)}.button:not(.primary):where(:not(#useDeviceFont):not(#confirmPageDelete)):not(:disabled):hover{border-color:var(--control-edge-hover);background:#f5f7fa}.view-controls>button:not(:disabled),.zoom{border-color:var(--control-edge)}.view-controls>.history-action:disabled{color:#919fb5;border-color:#d2dae5;background:#f5f7fb}.format-toggles button:not(.active),.symbol-grid button:not(.active),.drawing-choices button[aria-pressed=false],.variant:not(.active){border-color:var(--control-edge)}.format-toggles button:not(.active),.drawing-choices button[aria-pressed=false]{color:#46566e}.variant:not(.active){color:#66768d}.font-trigger:not(:focus):not([aria-expanded=true]),.field input:not(:focus),.field select:not(:focus),.library-card{border-color:var(--control-edge)}.floating{border-color:var(--control-edge)}.floating button:not(.confirm):not(.move):not(.delete){background:#edf1f6;color:#667a98;box-shadow:inset 0 0 0 1px #d9e0ea}.floating .move{border-color:#bacbed}.library-actions button{background:#eef2f7;color:#718198;box-shadow:inset 0 0 0 1px #d8e0ea}.icon-button{background:#edf1f7;color:#718198}.delete-page{border-color:#d2dae5;background:#f5f7fb;color:#6d7d94}.notice-close{color:#718198}button:disabled{opacity:.5}.signature-palette{position:relative;display:flex;margin:0 2px}.floating .signature-color{background:#fff;box-shadow:inset 0 0 0 1px #c4d0e4}.signature-color>span{display:block;width:17px;height:17px;border-radius:4px;pointer-events:none}.signature-inks{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);display:flex;gap:5px;padding:7px;background:#fff;border:1px solid #c4d0e4;border-radius:11px;box-shadow:0 5px 18px #243b6c17}.floating .signature-inks button{width:33px;height:33px;padding:7px;border:1px solid transparent;border-radius:7px;background:#fff}.signature-inks button:before{content:"";display:block;width:18px;height:18px;border-radius:50%;background:var(--ink)}.floating .signature-inks button[aria-pressed=true]{border-color:#9bb2eb;background:#edf2ff}.floating .signature-inks button:hover{border-color:#c4d0e4;background:#f1f4fa}@media(pointer:coarse){.floating .signature-inks button{width:44px;height:44px}}.library-card{padding:6px;gap:6px;border-color:#ccd6e5}.library-card .choose{flex:1;min-width:0;width:auto;padding:12px 8px;background:#fafbfe}.library-card .choose.active{background:#f0f4ff;outline-color:#9bb2f1}.library-card img{height:54px}.library-card .choose span{font-size:10px;color:#7487a2;margin-top:9px}.library-actions button{width:27px;height:29px;display:grid;place-items:center}.library-actions button[title="Delete signature"]:hover{background:#fff0f2;color:#a65564}.library-actions svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.signature-add{margin-top:3px;border-color:#bacbec;background:#f3f6ff;color:#345ce6;font-size:12px}#signatureDialog{width:min(620px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border-radius:18px;overflow:hidden}#signatureDialog[open]{display:flex;flex-direction:column}.signature-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0;padding:24px 26px 18px;flex-shrink:0}.signature-heading h2{font-size:24px;font-weight:600;letter-spacing:-.6px;line-height:1.25;margin:0;color:#263751}.signature-heading p{font-size:12px;color:#7a8ba5;margin:7px 0 0}.signature-heading .icon-button{width:32px;height:32px;flex-shrink:0}#signatureDialog .signature-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;margin:0 26px 18px;background:#edf1f7;border:1px solid #dce3ef;border-radius:11px;flex-shrink:0}.signature-methods [role=tab]{display:flex;align-items:center;justify-content:center;gap:9px;min-height:40px;padding:8px;border:1px solid transparent;border-radius:7px;color:#647792;background:transparent;font-size:12px;font-weight:600}.signature-methods [role=tab][aria-selected=true]{background:#fff;border-color:#c5d1e6;color:#345ce6;box-shadow:0 1px 3px #243b6c0d}.signature-methods [role=tab]:hover{color:#345ce6}.signature-methods svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}#signatureBody{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 26px 22px;scrollbar-width:thin;scrollbar-color:#c3cede transparent}#signatureDialog #signatureEmpty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;min-height:192px;padding:24px 15px;border:1px dashed #bccbe1;border-radius:12px;background:#f8faff;color:#7487a4}#signatureEmpty>svg{width:43px;height:43px;stroke:#8aa0c1;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;fill:none}#signatureEmpty p{margin:0;font-size:11px;color:#8a9ab0}#signatureEmpty .button{font-size:12px;padding:10px 18px;background:#fff}#signatureDialog .field{font-size:11px;margin:17px 0 0;color:#74859f;gap:7px}#signatureDialog .field input{font-size:14px;height:42px;border-color:#cbd5e4;caret-color:#243c70}#signatureDialog .typed-name-label{margin-top:0;margin-bottom:16px}#signatureDialog #signatureVariants{gap:10px;margin:14px 0 0}#signatureDialog .variant{padding:7px;border-radius:10px;min-width:0;min-height:110px;color:#677c99}#signatureDialog .variant img{height:78px;border-radius:5px;background-size:10px 10px}#signatureDialog .variant span{display:block;margin:8px 0 2px;font-size:10px}#signatureDialog .variant.active{border-color:#7395ec;box-shadow:0 0 0 1px #7395ec;background:#f3f6ff;color:#345ce6}#signatureUploadAgain{font-size:11px;padding:0 0 5px}#signatureDialog #drawing{margin:0}.signature-canvas{position:relative;background:#f8faff;border:1px solid #cbd7e9;border-radius:12px;overflow:hidden}#signatureDialog #drawBoard{display:block;width:100%;height:166px;border:0;border-radius:0;background:transparent;position:relative;z-index:1}.signature-canvas:after{content:"";position:absolute;left:22px;right:22px;bottom:37px;border-bottom:1px solid #d8e1ee;pointer-events:none}.signature-canvas>span{position:absolute;left:22px;bottom:14px;color:#9aa9be;font-size:10px;pointer-events:none}#signatureDialog #drawing>div:last-child{margin-top:12px;gap:8px}#signatureDialog #drawing .button{min-height:36px;padding:8px 15px;font-size:11px}#typedSignatureStyles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.typed-signature-choice{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:6px;min-width:0;min-height:106px;padding:11px 13px 8px;border:1px solid #ccd7e7;border-radius:10px;background:#fff;color:#7a8ba5}.typed-signature-choice img{display:block;width:100%;height:68px;object-fit:contain;pointer-events:none}.typed-signature-choice span{font:10px Noto,sans-serif}.typed-signature-choice:hover{border-color:#9fb4e1;background:#f8faff}.typed-signature-choice[aria-pressed=true]{background:#f2f5ff;border-color:#7d9aee;box-shadow:inset 0 0 0 1px #7d9aee;color:#345ce6}#typedSignatureStatus{font-size:11px;line-height:1.6;margin:12px 0 0;color:#7b8ca6}#signatureError{font-size:12px;line-height:1.6;padding:10px 12px;margin:14px 0 0;border-radius:8px;background:#fff0f2;color:#a23e52}.signature-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-shrink:0;padding:17px 26px;border-top:1px solid #e0e7f0;background:#fff}.signature-footer>div{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.signature-local{font-size:10px;color:#8a99af}.signature-footer .text-action{font-size:11px;padding:2px 0}.signature-footer .button{min-height:42px;padding:11px 20px;font-size:12px;font-weight:600}@media(max-width:500px){#signatureDialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:15px}.signature-heading{padding:20px 18px 16px}.signature-heading h2{font-size:22px}#signatureDialog .signature-methods{margin:0 18px 16px}#signatureBody{padding:0 18px 18px}.signature-footer{padding:14px 18px;gap:10px}.signature-footer .button{padding:11px 14px}.signature-methods [role=tab]{gap:6px;font-size:11px;min-height:42px}#signatureDialog .field input{font-size:16px}.typed-signature-choice{min-height:100px;padding:10px 8px 8px}.typed-signature-choice img{height:62px}#signatureDialog #signatureVariants{gap:7px}#signatureDialog .variant{padding:5px}#signatureDialog .variant span{font-size:9px}#signatureDialog .variant img{height:66px}#signatureDialog #drawBoard{height:142px}}#welcome,#saved{position:relative;isolation:isolate;background:linear-gradient(133deg,#e6edf9 0%,#e6edf9 19%,transparent 19%),linear-gradient(133deg,transparent 70%,#dfe8f8 70%),#f5f7fb}#welcome{overflow:hidden}.welcome-backdrop,.completion-backdrop{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.welcome-backdrop:before,.completion-backdrop:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#a5b8d429 1px,transparent 1px),linear-gradient(90deg,#a5b8d429 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(90deg,#000,transparent 38%,transparent 62%,#000)}.welcome-paper,.completion-paper{position:absolute;width:clamp(160px,17vw,245px);aspect-ratio:240/310;filter:drop-shadow(7px 10px 0 #b7c6de5c);opacity:var(--paper-opacity,1);transform:rotate(var(--paper-angle));animation:paper-arrive .64s cubic-bezier(.2,.7,.2,1) backwards}.welcome-paper svg,.completion-paper svg{display:block;width:100%;height:100%}.paper-surface{fill:#fff;stroke:#acbdd7;stroke-width:1.4}.paper-fold{fill:#eaf0fb;stroke:#acbdd7;stroke-width:1.4}.paper-line{stroke:#a9b9d2;stroke-width:4;stroke-linecap:round}.paper-highlight{stroke:#aec6ff;stroke-width:12;stroke-linecap:round;opacity:.85}.paper-check{stroke:#577fda;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.paper-sign{stroke:#6b84ae;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.paper-left{left:6%;top:18%;--paper-angle:-12deg;animation-delay:.04s}.paper-right{right:5%;top:45%;--paper-angle:12deg;animation-delay:.1s}.paper-top{width:clamp(130px,12vw,175px);left:65%;top:-13%;--paper-angle:19deg;--paper-opacity:.85;animation-delay:0s}.welcome-ink{stroke-dasharray:1;stroke-dashoffset:0;animation:welcome-ink .48s cubic-bezier(.3,.1,.3,1) .16s backwards}.welcome-intro{position:relative;animation:none}.welcome-promise span{display:inline-block}.welcome-promise{margin:18px 0 0;color:#30486e;font-size:18px;font-weight:600;line-height:1.6;letter-spacing:.1px}#openWelcome{margin-top:30px;border-radius:8px;box-shadow:3px 4px #23429626}#openWelcome:hover{box-shadow:3px 6px #23429626}#openWelcome:active{box-shadow:1px 2px #23429626}#welcome:not([hidden]) .welcome-promise{animation:welcome-arrive .95s cubic-bezier(.22,.45,.32,1) .42s backwards}#welcome:not([hidden]) #welcomeTitle{animation:welcome-arrive .95s cubic-bezier(.22,.45,.32,1) .34s backwards}#welcome:not([hidden]) #openWelcome{animation:welcome-arrive .95s cubic-bezier(.22,.45,.32,1) .5s backwards}.welcome-resume{display:flex;align-items:center;justify-content:center;gap:8px;margin:18px auto 0;padding:8px 12px;border:0;border-radius:9px;background:transparent;color:#7183a0;font-size:12px;animation:welcome-arrive .95s ease .58s backwards}.welcome-resume:hover{background:#edf2fb;color:#4262a5}.welcome-resume svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}@keyframes welcome-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes paper-arrive{0%{opacity:0;transform:translateY(32px) rotate(calc(var(--paper-angle) + 6deg))}to{opacity:var(--paper-opacity,1);transform:translateY(0) rotate(var(--paper-angle))}}@keyframes welcome-ink{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media(max-width:1050px){.paper-left{left:-5%;top:13%;--paper-opacity:.85}.paper-right{right:-5%;top:57%;--paper-opacity:.85}.paper-top{left:72%}}@media(max-width:600px){.paper-left{left:-95px;top:8%;--paper-opacity:.9}.paper-right{right:-72px;top:70%;--paper-opacity:.95}.paper-top{left:74%;top:-16%;--paper-opacity:.85}.welcome-backdrop:before,.completion-backdrop:before{background-size:32px 32px}.welcome-promise{font-size:16px;margin-top:16px}#openWelcome{margin-top:26px}}@media(max-height:500px){.welcome-promise{margin-top:8px}#openWelcome{margin-top:18px}}@media(prefers-reduced-motion:reduce){.welcome-paper,.completion-paper,.welcome-ink,.welcome-resume,#welcome:not([hidden]) .welcome-promise,#welcome:not([hidden]) #welcomeTitle,#welcome:not([hidden]) #openWelcome{animation:none}}.header-right{margin-left:auto;display:flex;align-items:center;gap:10px}.header-right .header-actions{margin-left:0}.footer-contact{display:none}body:has(#editor:not([hidden])) .header-contact{display:none}body:has(#editor:not([hidden])) .footer-contact{display:inline-flex;align-items:center}.header-contact{min-height:40px;gap:8px;padding:10px 16px;border-color:#cbd6e6;background:#f7f9fd;color:#496184;font-size:12px;font-weight:600;white-space:nowrap}.header-contact:hover{background:#eef3fc;border-color:#b8c8e0}.header-contact svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}#contactDialog{width:min(480px,calc(100vw - 32px));max-height:calc(100svh - 32px);padding:28px;overflow:auto;border:1px solid #dfe5ef;border-radius:20px;box-shadow:0 24px 90px #20305224}.contact-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.contact-heading h2{font-size:27px;line-height:1.2;letter-spacing:-.7px;font-weight:600;margin:0;color:#263751}.contact-heading .icon-button{flex-shrink:0;display:grid;place-items:center;width:31px;height:31px;border:1px solid #e1e7f0;background:#f5f7fb;border-radius:9px}.contact-heading svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.contact-email{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 24px;padding:14px;border:1px solid #dce5f2;border-radius:12px;background:#f5f8fd}#contactAddress{font-size:14px;font-weight:500;letter-spacing:0;color:#34557d;user-select:text;overflow-wrap:anywhere;min-width:0;outline-offset:4px}#contactCopy{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;min-width:62px;justify-content:center;padding:7px 8px;border:1px solid #d6dfec;border-radius:7px;background:#fff;color:#627797;font-size:10px}#contactCopy:hover{border-color:#b9cbe7;color:#345ce6}#contactCopy svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}#contactForm label{display:flex;flex-direction:column;gap:8px;color:#4e607c;font-size:11px;position:relative}#contactForm label>span{display:contents;color:#98a5b8;font-weight:400}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}#contactForm input,#contactForm textarea{width:100%;border:1px solid #d4ddec;background:#fff;border-radius:10px;padding:11px 12px;font:12px/1.6 Noto,system-ui,sans-serif;color:#263751}#contactForm input::placeholder,#contactForm textarea::placeholder{color:#a0aaba}#contactForm input:focus-visible,#contactForm textarea:focus-visible{outline:3px solid #345ce61c;outline-offset:1px;border-color:#8ba5e4}#contactForm textarea{resize:vertical;min-height:122px;max-height:250px}#contactForm .contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contactStatus{font-size:11px;line-height:1.65;color:#8190a5;margin:10px 0}#contactStatus:empty{display:none}#contactStatus.error{color:#a34d59}#contactSend{width:100%;padding:12px 18px;gap:10px;margin-top:20px;font-size:12px;font-weight:600}#contactSend svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}#contactSend[aria-busy=true] svg{animation:contact-pulse .9s ease-in-out infinite alternate}#contactSuccess{text-align:center;padding:10px 8px 2px}#contactSuccess h3{font-size:23px;letter-spacing:-.5px;margin:18px 0 22px;font-weight:600}.contact-success-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#e8f7ee;color:#239e70;margin:auto}.contact-success-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@keyframes contact-pulse{to{opacity:.4;transform:translate(2px,-2px)}}@media(max-width:520px){header{display:grid;grid-template-columns:1fr auto;gap:10px;height:auto;min-height:64px;padding:12px 18px}.header-right{display:contents}.header-contact{grid-column:2;grid-row:1;min-height:38px;padding:9px 12px}.header-right .header-actions{grid-column:1/-1;grid-row:2;justify-content:flex-end}}@media(max-width:500px){#contactDialog{padding:23px 21px;border-radius:18px}.contact-heading h2{font-size:25px}.contact-email{padding:12px 10px;gap:8px;margin:20px 0 22px}#contactAddress{font-size:14px}#contactCopy{min-width:58px;font-size:9px}.contact-fields{grid-template-columns:1fr;gap:16px}footer>div{gap:16px}}@media(prefers-reduced-motion:reduce){#contactSend[aria-busy=true] svg{animation:none}}#contactDialog[open]{animation:contact-appear .28s cubic-bezier(.2,.7,.3,1) both}#contactDialog[open]::backdrop{animation:contact-backdrop .24s ease-out both}#status.notice{animation:notice-appear .24s cubic-bezier(.2,.7,.3,1) both}@keyframes contact-appear{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes contact-backdrop{0%{opacity:0}to{opacity:1}}@keyframes notice-appear{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){#contactDialog[open],#contactDialog[open]::backdrop,#status.notice{animation:none}}
