:root{font-family:'DM Sans',system-ui,sans-serif;color:#252238;background:#fff9ed;font-synthesis:none;--ink:#252238;--muted:#777287;--purple:#6b4ee6;--line:#e9e2d5;--paper:#fff5d9;--shadow:0 18px 55px #38295712}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 10% 0,#f4eaff 0,transparent 33rem),radial-gradient(ellipse at 100% 6%,#ffe9c8 0,transparent 29rem),#fff9ed}.topbar{height:76px;max-width:1180px;margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-weight:700;letter-spacing:-.03em}.brand img{width:42px;height:42px}.top-note{color:#827c91;font-size:13px}.app-shell{max-width:1060px;margin:24px auto 80px;padding:0 24px;min-height:68vh}.loading{text-align:center;padding:18vh 0;color:var(--muted)}footer{text-align:center;padding:28px;color:#898397;font-size:12px}.hero{text-align:center;padding:54px 0 34px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.16em;font-weight:700;color:#8068d8}.hero h1,.page-head h1{font:700 clamp(38px,7vw,67px)/1.04 Fraunces,Georgia,serif;letter-spacing:-.05em;margin:14px auto 14px;max-width:750px}.hero p,.page-head p{color:var(--muted);font-size:16px;line-height:1.6;margin:0 auto;max-width:560px}.button{border:0;border-radius:14px;padding:13px 20px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px);box-shadow:0 9px 20px #31204b20}.primary{background:var(--purple);color:white;box-shadow:0 8px 18px #6b4ee633}.secondary{background:#f0ebfa;color:#50417f}.quiet{background:#fff;color:#615a72;border:1px solid var(--line)}.danger{color:#b23b54;background:#fff0f1}.hero .button{margin-top:24px;font-size:16px;padding:16px 26px}.sparkle-row{font-size:26px;letter-spacing:16px;color:#e5b341;margin:24px 0}.card{background:#fffefa;border:1px solid #eee6d9;border-radius:24px;box-shadow:var(--shadow);padding:26px}.wizard{max-width:790px;margin:20px auto}.step-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.step-head h2,.section-title{font:700 27px Fraunces,Georgia,serif;margin:0}.step-count{font-size:12px;color:#877e96}.themes{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px}.arrow{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:white;font-size:20px;cursor:pointer;color:#605880}.theme-card{min-height:215px;border-radius:20px;display:grid;place-items:center;position:relative;overflow:hidden;text-align:center;padding:20px;background:linear-gradient(145deg,#f2eaff,#fceaca)}.theme-icon{font-size:68px;filter:drop-shadow(0 10px 4px #30243a18)}.theme-name{font:700 23px Fraunces,Georgia,serif;margin:8px 0 4px}.theme-desc{color:#6e687d;font-size:13px}.dots{display:flex;justify-content:center;gap:7px;margin:14px}.dot{width:7px;height:7px;border-radius:10px;background:#d8d0e5}.dot.on{width:22px;background:var(--purple)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label,.toggle-title{font-size:13px;font-weight:700}.field input,.field select,.paper textarea{font:inherit}.field input,.field select{width:100%;border:1px solid #e4deeb;background:white;border-radius:12px;padding:12px 14px;outline:none}.field input:focus,.field select:focus,textarea:focus{border-color:#9a86ed;box-shadow:0 0 0 3px #8a70e91c}.toggle{display:flex;align-items:flex-start;gap:11px;border:1px solid #eee8dc;border-radius:14px;padding:14px;background:#fffdf8}.toggle input{accent-color:var(--purple);margin:3px 0 0}.toggle small{display:block;color:var(--muted);font-weight:400;margin-top:4px;line-height:1.4}.create-row{display:flex;justify-content:flex-end;margin-top:20px}.error{padding:12px 14px;background:#fff0f1;color:#a33e57;border-radius:12px;margin:12px 0;font-size:13px}.page-head{padding:24px 0 22px}.page-head h1{font-size:clamp(34px,5vw,48px);margin:8px 0}.pill{display:inline-flex;padding:6px 10px;background:#efeafe;color:#5c4bb1;border-radius:99px;font-size:11px;font-weight:700}.link-box{display:flex;gap:8px;margin-top:8px}.link-box input{flex:1;min-width:0;border:1px solid var(--line);border-radius:11px;padding:11px;background:white;color:#625d70}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.stat-card{border-radius:16px;background:#faf7ff;padding:18px}.stat-card strong{display:block;font-size:24px}.stat-card span{color:var(--muted);font-size:12px}.manage-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.share-line{margin:16px 0 5px;font-size:13px;font-weight:700}.muted{color:var(--muted);font-size:13px;line-height:1.5}.hat-stage{min-height:215px;border-radius:22px;display:grid;place-items:center;position:relative;overflow:hidden;margin:14px 0 18px;background:linear-gradient(160deg,#e7dcff,#fff0d0)}.hat-stage:before,.hat-stage:after{content:'✦';position:absolute;color:#fff;font-size:27px;animation:float 3.5s ease-in-out infinite}.hat-stage:before{left:18%;top:30%}.hat-stage:after{right:20%;top:23%;animation-delay:1s}.hat-emoji{font-size:94px;filter:drop-shadow(0 18px 8px #34244824);animation:bob 2.4s ease-in-out infinite}.paper{position:relative;width:min(100%,690px);min-height:270px;margin:0 auto 14px;padding:22px 24px;border:1px solid #e8deca;border-radius:8px 8px 18px 8px;box-shadow:0 10px 25px #40322512;background:var(--paper);overflow:hidden}.paper textarea{display:block;position:relative;z-index:2;width:100%;height:205px;border:0;resize:vertical;background:transparent;color:#302b3b;font-size:18px;line-height:1.55;outline:none}.paper textarea:focus{box-shadow:none}.stickers{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.sticker{border:1px solid #e7dfd4;background:#fff;border-radius:12px;padding:8px 10px;font-size:18px;cursor:grab}.sticker:active{cursor:grabbing}.placed-sticker{position:absolute;z-index:3;font-size:30px;cursor:move;user-select:none;touch-action:none}.paper-image{position:absolute;right:18px;bottom:12px;width:72px;height:72px;object-fit:cover;border-radius:10px;opacity:.88}.paper-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:12px auto 20px;max-width:690px}.paper-controls label{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px}.paper-controls input,.paper-controls select{border:1px solid var(--line);background:white;border-radius:10px;padding:8px;font:inherit}.papers-list{display:grid;gap:18px}.paper-actions{display:flex;justify-content:space-between;align-items:center;max-width:690px;margin:0 auto}.form-footer{max-width:690px;margin:20px auto;display:flex;justify-content:flex-end}.success{text-align:center;padding:40px 20px}.success .icon{font-size:68px}.success h2{font:700 32px Fraunces,Georgia,serif}.pull-area{text-align:center}.pull-button{font-size:18px;padding:16px 30px}.result{max-width:660px;margin:20px auto;min-height:160px;display:grid;place-items:center}.result-note{position:relative;width:100%;min-height:170px;padding:28px;border-radius:8px 8px 20px 8px;box-shadow:var(--shadow);white-space:pre-wrap;text-align:left;font-size:20px;line-height:1.5;overflow-wrap:anywhere}.result-note img{display:block;max-width:180px;max-height:160px;object-fit:contain;margin:16px auto 0}.wait{font:700 24px Fraunces,Georgia,serif;color:#7b5290;animation:pulse 1s infinite alternate}.hidden{display:none!important}.folding{animation:fold .7s ease-in forwards}.pulling{animation:shake .3s linear 5}.notice{max-width:650px;margin:14px auto;padding:14px;border-radius:14px;background:#fff8e7;color:#6e5630}.center{text-align:center}.separator{height:1px;background:#eee8dd;margin:24px 0}.small{font-size:11px;color:var(--muted)}@keyframes float{50%{transform:translateY(-11px) rotate(12deg)}}@keyframes bob{50%{transform:translateY(-8px) rotate(-3deg)}}@keyframes pulse{to{opacity:.35}}@keyframes fold{to{transform:perspective(600px) rotateX(88deg) scale(.4);opacity:.3}}@keyframes shake{25%{transform:rotate(-4deg)}75%{transform:rotate(4deg)}}@media(max-width:650px){.topbar{height:64px;padding:0 16px}.top-note{font-size:0}.top-note:after{content:'✨';font-size:18px}.app-shell{padding:0 15px;margin-top:10px}.hero{padding:42px 0 22px}.card{padding:20px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.themes{grid-template-columns:36px 1fr 36px;gap:4px}.arrow{width:34px;height:34px}.theme-card{min-height:185px}.stats-row{gap:7px}.stat-card{padding:13px}.stat-card strong{font-size:20px}.link-box{flex-direction:column}.paper{padding:18px}.paper textarea{height:195px;font-size:16px}.paper-controls{gap:8px}.page-head{padding-top:20px}}
