@font-face{font-family:wenkai;src:url('/fonts/wenkai.woff2');font-display:swap}@font-face{font-family:mashan;src:url('/fonts/mashan.woff2');font-display:swap}@font-face{font-family:caveat;src:url('/fonts/caveat.woff2');font-display:swap}@font-face{font-family:kalam;src:url('/fonts/kalam.woff2');font-display:swap}@font-face{font-family:patrick;src:url('/fonts/patrick.woff2');font-display:swap}@font-face{font-family:sacramento;src:url('/fonts/sacramento.woff2');font-display:swap}
*{box-sizing:border-box}body{margin:0;color:#352a3e;background:#eeeaf2;font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:transparent;min-height:44px;padding:8px 12px}button:disabled{opacity:.4;cursor:default}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #9473a6;outline-offset:2px}.card-app{max-width:480px;height:100dvh;margin:auto;background:#f7f4f9;display:flex;flex-direction:column;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.top{display:flex;align-items:center;padding:5px 8px;flex-shrink:0}.top>div{flex:1;min-width:0}.top strong{font-size:13px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top small{display:block;font-size:10px;color:#8f7c9b;margin-top:4px}.top button{padding:8px;min-width:40px}.top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#save{border-radius:22px;background:#372c41;color:white;font-size:12px}.page-title{display:flex;justify-content:space-between;color:#8f7c9b;padding:7px 20px;font-size:10px}.canvas{flex:1;min-height:180px;overflow:auto;padding:10px 20px;touch-action:pan-y}.paper{background:#fffdf7;position:relative;width:100%;height:100%;min-height:390px;box-shadow:0 5px 20px #64516c0c;overflow:hidden}.main-paper{padding:25px 20px 40px;overflow:auto;text-align:center}.main-paper>small{font-size:8px;letter-spacing:2px;color:#9e8aa9}.recipient{display:block;margin-top:18px;font:17px wenkai,serif}.main-paper h1{font:29px/1.1 Georgia,serif;white-space:pre-wrap;margin:20px 0}.main-paper>p{font:16px/1.7 wenkai,serif;white-space:pre-wrap;overflow-wrap:anywhere}.sign-off{font:23px caveat,cursive}.watermark{position:absolute;bottom:10px;left:0;right:0;text-align:center;font-size:8px;color:#b6a8bd;pointer-events:none}.main-paper .watermark{position:static;margin-top:25px}.note{position:absolute;width:76%;text-align:center;line-height:1.4;overflow-wrap:anywhere;padding:7px;touch-action:pan-y}.note p{white-space:pre-wrap;margin:0 0 8px}.note>span{display:block;font-size:.8em}.note.selected{outline:1px solid #9d82ae;touch-action:none;z-index:2}.selection-label{position:absolute;left:0;top:-19px;font:9px -apple-system,sans-serif;background:#9d82ae;color:white;padding:3px 7px;border-radius:5px}.note textarea,.note input{width:100%;font:inherit;background:#fffdf8d9;border:0;text-align:center;display:block;padding:3px;resize:none;touch-action:auto}.note textarea{height:110px}.note input{font-size:.8em;border-bottom:1px dashed #c6b9ce}.font-wenkai{font-family:wenkai,serif}.font-mashan{font-family:mashan,wenkai,serif}.font-caveat{font-family:caveat,wenkai,cursive}.font-kalam{font-family:kalam,wenkai,cursive}.font-patrick{font-family:patrick,wenkai,cursive}.font-sacramento{font-family:sacramento,wenkai,cursive}.pager{display:flex;justify-content:center;align-items:center;gap:20px;height:36px;flex-shrink:0;color:#8e769f;font-size:11px}.pager button{font-size:24px}footer{flex-shrink:0;min-height:155px;background:white;padding:12px 18px;text-align:center;border-top:1px solid #eee7f3}footer p{font-size:12px;color:#85718f;margin:8px 0 12px}footer small{font-size:9px;color:#aa98b4;display:block;margin-top:8px}.footer-actions{display:flex;gap:6px}.primary,.secondary{width:100%;border-radius:24px;background:#372c41;color:white;padding:12px 16px;min-height:44px;text-align:center}.secondary{background:#efe8f4;color:#776383}.tools{display:flex;justify-content:space-between;border-bottom:1px solid #eee7f3}.tools button{font-size:12px;padding:5px 8px;color:#8f7a9b}.tools .active{color:#372c41;border-bottom:2px solid #9473a6}.tool-content{min-height:65px;padding:10px 0}.fonts{display:flex;gap:5px;overflow:auto}.fonts button{min-width:85px;background:#f7f3fa;border-radius:8px;font-size:17px}.fonts button.active{outline:1px solid #9d82ae}.edit-actions{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#93809e}.edit-actions button{font-size:10px;padding:4px}.tool-content label{display:flex;gap:10px;align-items:center;font-size:11px}.tool-content input[type=range]{flex:1;min-width:70px}.tool-content input[type=color]{border:0;background:transparent;width:90px;height:42px}.main-paper input,.main-paper textarea{width:100%;text-align:center;background:#ffffff9c;border:1px dashed #b6a1c1;border-radius:5px;padding:5px;display:block;margin:10px 0;font-family:wenkai,serif;resize:vertical}.main-paper .heading-input{font:25px Georgia,serif;height:75px}.main-paper .body-input{font:15px/1.6 wenkai,serif;height:210px}.join{max-width:400px;margin:8vh auto;padding:24px;text-align:center}.brand{font:34px Georgia,serif}.join h1{font:34px/1.2 Georgia,serif;margin:40px 0 20px}.join p{line-height:1.7;color:#8b7598}.join label{display:block;text-align:left;font-size:12px;margin-top:30px}.join input{width:100%;display:block;background:white;border:1px solid #d9cce2;border-radius:12px;padding:14px;margin:10px 0 16px;font-size:24px;letter-spacing:10px;text-align:center}.muted{font-size:11px;color:#94829e;line-height:1.7}.error{color:#a44c5a!important}.shade{position:fixed;inset:0;background:#2b22394d;display:flex;align-items:flex-end;justify-content:center;z-index:10;backdrop-filter:blur(2px)}.shade section{background:#fcfafd;padding:22px;max-width:480px;width:100%;border-radius:23px 23px 0 0;max-height:90dvh;overflow:auto;padding-bottom:max(25px,env(safe-area-inset-bottom))}.shade header{display:flex;align-items:center;justify-content:space-between}.shade h2{font-size:20px}.shade section>button{display:block;width:100%;text-align:left}.shade label{display:block;margin:15px 0;font-size:12px}.shade select,.shade textarea{display:block;width:100%;padding:12px;border:1px solid #e5daec;border-radius:8px;background:white;margin-top:8px}.shade textarea{min-height:95px}.cover{display:block;width:70%;margin:20px auto}.loading{text-align:center;margin:25vh 20px}#status:not(:empty){position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#302638f5;color:white;padding:14px 20px;border-radius:14px;max-width:420px;width:90%;z-index:20;font-size:12px;line-height:1.5}@media(min-width:600px){.card-app{height:900px;max-height:96dvh;margin:2vh auto;border:6px solid white;border-radius:30px;overflow:hidden}}@media(max-height:700px){footer{min-height:130px;padding:6px 12px}.paper{min-height:340px}.canvas{padding:4px 14px}}

#app.saving{opacity:.75;pointer-events:none}

.note-report{position:absolute;right:-12px;top:-16px;font:11px -apple-system,sans-serif;color:#a593ae;min-height:32px;min-width:32px;padding:8px}.note-report:hover{color:#493453}

.expiry{font-size:10px;color:#8f7c9b;padding:0 20px 4px}.expiry.closed{color:#795c41}.draft-recovery{display:block;text-align:left;font-size:11px;margin-top:10px}.draft-recovery textarea{display:block;width:100%;height:68px;margin-top:6px;border:1px solid #d9cce2;border-radius:6px;resize:vertical;padding:8px;background:#fcfafd}
