.credit{position:fixed;left:calc(12px + env(safe-area-inset-left));bottom:calc(8px + env(safe-area-inset-bottom));z-index:9;margin:0;font-size:11px;line-height:1.4;color:#fff;opacity:.55;text-shadow:0 0 2px rgba(20,12,6,.75),0 0 6px rgba(20,12,6,.55),0 1px 1px rgba(20,12,6,.6);transition:opacity .15s ease}.credit a{color:inherit;text-decoration:none}.credit a:focus-visible{outline:1px solid #fff;outline-offset:2px}.credit:focus-within{opacity:1}@media(hover:hover)and (pointer:fine){.credit:hover{opacity:1}.credit a:hover{text-decoration:underline;text-underline-offset:.2em}}@font-face{font-family:Permanent Marker;src:url(/fonts/PermanentMarker-Regular.ttf) format("truetype");font-display:swap}@font-face{font-family:Patrick Hand;src:url(/fonts/PatrickHand-Regular.ttf) format("truetype");font-display:swap}.paper{--paper: #f6f1e6;--paper-slip: #fffdf8;--paper-line: #d9d0bc;--paper-ink: #2a2420;--paper-fill: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .15 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E"), var(--paper);--tab-top: 14px;--tab-width: 186px;--tab-height: 44px;--tab-peek: 30px;--paper-ease: cubic-bezier(.32, .72, 0, 1);--paper-open: .38s;--paper-close: .24s;--clip-tab: inset( var(--tab-top) 0 calc(100% - var(--tab-top) - var(--tab-height)) calc(100% - var(--tab-width)) round 5px 0 0 5px );--clip-peek: inset( var(--tab-top) 0 calc(100% - var(--tab-top) - var(--tab-height)) calc(100% - var(--tab-peek)) round 5px 0 0 5px );position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);z-index:10;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(60,40,20,.3)) drop-shadow(0 8px 18px rgba(60,40,20,.16))}.paper-sheet{position:absolute;inset:0;pointer-events:auto;color:var(--paper-ink);background:var(--paper-fill);clip-path:var(--clip-tab);transition:clip-path var(--paper-close) var(--paper-ease)}.paper[data-tucked=true] .paper-sheet{clip-path:var(--clip-peek)}.paper[data-open=true] .paper-sheet{clip-path:inset(0 0 0 0 round 0px);transition-duration:var(--paper-open)}.paper-tab{position:absolute;top:var(--tab-top);right:0;display:flex;width:var(--tab-width);height:var(--tab-height);transition:transform var(--paper-close) var(--paper-ease),opacity .14s ease}.paper[data-tucked=true] .paper-tab{transform:translate(calc(var(--tab-width) - var(--tab-peek)))}.paper[data-open=true] .paper-tab{opacity:0;pointer-events:none}.paper-tab button{padding:0;color:var(--paper-ink);background:transparent;border:0;cursor:pointer}.paper-tab button:focus-visible{outline:2px solid #c2452f;outline-offset:-4px}.paper-tuck{flex:none;display:grid;place-items:center;width:var(--tab-peek);color:#8a7f6c;border-right:1px dashed var(--paper-line)}.paper-tuck svg{transition:transform var(--paper-close) var(--paper-ease)}.paper[data-tucked=true] .paper-tuck svg{transform:rotate(180deg)}.builder-open{flex:1;font-family:Permanent Marker,Segoe Print,cursive;font-size:17px;letter-spacing:.01em;transition:transform .14s var(--paper-ease)}.builder-open:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){.paper[data-tucked=true][data-open=false] .paper-sheet:hover{clip-path:var(--clip-tab)}.paper[data-tucked=true][data-open=false] .paper-sheet:hover .paper-tab{transform:none}.paper-tuck:hover{color:var(--paper-ink)}}.paper[data-tucked=true][data-open=false] .paper-sheet:has(:focus-visible){clip-path:var(--clip-tab)}.paper[data-tucked=true][data-open=false] .paper-sheet:has(:focus-visible) .paper-tab{transform:none}.paper-body{height:100%;overflow-y:auto;opacity:0;transition:opacity .12s ease}.paper[data-open=true] .paper-body{opacity:1;transition:opacity .2s ease .14s}@media(prefers-reduced-motion:reduce){.paper-sheet,.paper[data-open=true] .paper-sheet,.paper-tuck svg{transition:none}.paper-tab{transition:opacity .14s ease}.builder-open{transition:none}.builder-open:active{transform:none}}.builder{display:flex;flex-direction:column;gap:12px;min-height:100%;padding:18px}.builder-head{display:flex;align-items:center;gap:10px}.builder .builder-close{flex:none;width:32px;height:32px;padding:0;font-size:15px;color:#6b6559;background:transparent;border-color:transparent}.builder-note,.builder-empty{margin:0;font-size:12.5px;line-height:1.5;color:#6b6559}.builder-empty{padding:22px 16px;text-align:center;border:1px dashed #ded9cb;border-radius:10px}.builder button.builder-empty{width:100%;padding:22px 16px;font-size:12.5px;color:#6b6559;background:transparent;border:1px dashed #ded9cb;border-radius:10px}.builder-actions{display:flex;flex-wrap:wrap;gap:8px}.builder button{font:inherit;font-size:13px;padding:7px 12px;color:#17202a;background:var(--paper-slip);border:1px solid var(--paper-line);border-radius:4px;cursor:pointer}.builder button:hover:not(:disabled){border-color:#b9b2a1}.builder button:disabled{opacity:.45;cursor:default}.builder-quiet{color:#6b6559}.builder-status,.builder-error{margin:0;font-size:12.5px}.builder-status{color:#6b6559}.builder-error{padding:8px 10px;color:#8c2f1e;background:#fbeceb;border-radius:8px}.builder-cards{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.builder-card{display:flex;gap:10px;padding:10px;background:var(--paper-slip);border-radius:3px;box-shadow:0 1px 2px #3c28142e,0 0 0 1px #3c28140a}.builder-thumb{position:relative;flex:none;width:54px;height:72px;overflow:hidden;background:#f1efe8;border:3px solid #fff;border-radius:2px;box-shadow:0 1px 2px #3c281440}.builder-thumb img{width:100%;height:100%;object-fit:cover;display:block}.builder-index{position:absolute;left:3px;bottom:3px;min-width:16px;padding:1px 4px;font-size:10px;text-align:center;color:#fbfaf5;background:#17202a9e;border-radius:4px}.builder-fields{display:flex;flex:1;min-width:0;flex-direction:column;gap:6px}.builder-fields input,.builder-fields textarea,.builder-lock input,.builder-howto textarea{width:100%;padding:4px 2px;font-family:Patrick Hand,Segoe Print,cursive;font-size:17px;line-height:1.3;color:var(--paper-ink);background:transparent;border:0;border-bottom:1.5px solid var(--paper-line);border-radius:0}.builder-fields textarea{resize:vertical;min-height:42px}.builder-fields input:focus,.builder-fields textarea:focus,.builder-lock input:focus,.builder-howto textarea:focus{outline:none;border-bottom-color:#c2452f}.builder-card-actions{display:flex;flex:none;flex-direction:column;gap:4px}.builder-card-actions button{width:28px;padding:3px 0;font-size:12px;line-height:1.2}.builder-foot{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid #e7e2d6;position:sticky;bottom:-18px;padding-bottom:18px;margin-bottom:-18px;background:var(--paper-fill)}.builder button.builder-primary{padding:10px 14px;font-weight:600;color:#fbfaf5;background:#c2452f;border-color:#a63b28}.builder button.builder-primary:hover:not(:disabled){border-color:#7f2c1d}.builder button.builder-link{align-self:flex-start;padding:4px 0;color:#6b6559;background:transparent;border:0;text-decoration:underline;text-underline-offset:3px}.builder-head{justify-content:space-between}.builder-steps ol{display:flex;gap:4px;margin:0;padding:0;list-style:none}.builder .builder-steps button{display:flex;align-items:center;gap:6px;padding:5px 10px 5px 5px;color:#6b6559;background:transparent;border-color:transparent;border-radius:999px}.builder .builder-steps button[aria-current=step]{color:#17202a;font-weight:600;background:var(--paper-slip);border-color:var(--paper-line)}.builder-step-num{display:inline-grid;place-items:center;width:20px;height:20px;font-size:11px;font-weight:600;color:#6b6559;background:#ece8dd;border-radius:50%}[aria-current=step] .builder-step-num{color:#fbfaf5;background:#c2452f}.is-done .builder-step-num{color:#fbfaf5;background:#5b7f4f}.builder-step{display:flex;flex:1;flex-direction:column;gap:14px}.builder-step h2{margin:4px 0 0;font-family:Permanent Marker,Segoe Print,cursive;font-size:22px;font-weight:400;color:var(--paper-ink)}.builder-lede,.builder-step p,.builder-explain li{margin:0;font-size:13.5px;line-height:1.5;color:#3d4550}.builder-explain{padding:10px 14px;background:#f4f1e8;border-radius:10px}.builder-explain summary{font-size:13px;color:#3d4550;cursor:pointer}.builder-explain[open] summary{margin-bottom:8px}.builder-explain textarea.builder-preview{width:100%;padding:8px;font:inherit;font-size:12.5px;color:#3d4550;background:var(--paper-slip);border:1px solid var(--paper-line);border-radius:3px;resize:vertical}.builder-explain ul{margin:0 0 8px;padding-left:18px}.builder .builder-explain p{font-size:12.5px;color:#6b6559}.builder-lock summary,.receive-help summary{font-size:13px;color:#3d4550;cursor:pointer}.builder-lock label{display:block;margin:8px 0 6px}.builder .builder-lock p{font-size:12.5px;color:#6b6559}.builder-step-foot{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid #e7e2d6}.builder .builder-done{padding:8px 10px;color:#34502b;background:#e8f0e2;border-radius:8px}.builder .builder-warn{padding:8px 10px;color:#6e4b12;background:#fbf1dc;border-radius:8px}.builder-warn .builder-link{display:inline;color:inherit!important}.builder-howto{display:flex;flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;counter-reset:howto}.builder-howto>li{position:relative;display:flex;flex-direction:column;gap:6px;padding-left:32px;counter-increment:howto}.builder-howto>li:before{content:counter(howto);position:absolute;left:0;top:-1px;display:grid;place-items:center;width:22px;height:22px;font-size:12px;font-weight:600;color:#fbfaf5;background:#17202a;border-radius:50%}.builder-howto label,.builder-howto-title{font-size:14px;font-weight:600;color:#17202a}.builder-howto textarea{resize:vertical}.builder-count{font-size:11.5px;color:#8a8474}.builder-row{display:flex;flex-wrap:wrap;gap:8px}.builder-share{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:var(--paper-slip);border-radius:3px;box-shadow:0 1px 2px #3c28142e}.builder-next{width:100%}.builder-field{display:flex;flex-direction:column;gap:5px}.builder-field span{font-size:14px;font-weight:600;color:#17202a}.builder-field input,.builder-field textarea{width:100%;padding:4px 2px;font-family:Patrick Hand,Segoe Print,cursive;font-size:18px;line-height:1.3;color:var(--paper-ink);background:transparent;border:0;border-bottom:1.5px solid var(--paper-line);border-radius:0;resize:vertical}.builder-field input:focus,.builder-field textarea:focus{outline:none;border-bottom-color:#c2452f}.builder-field small,.builder .builder-hint{font-size:12px;color:#8a8474}.builder-send{display:flex;flex-direction:column;gap:10px;padding:14px;background:var(--paper-slip);border-radius:3px;box-shadow:0 1px 2px #3c28142e}.builder-send .builder-primary{width:100%}.builder-send .builder-howto{gap:10px}.builder-send .builder-howto>li:before{top:9px}.builder-quiet-row{gap:4px 16px}.receive{position:fixed;top:50%;right:24px;transform:translateY(-50%);z-index:10;display:flex;flex-direction:column;gap:12px;width:min(380px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:22px;overflow-y:auto;background:#fbfaf5;border:1px solid #ded9cb;border-radius:14px;box-shadow:0 18px 50px #17202a38}.receive h2{margin:0;font-size:22px;line-height:1.2;color:#17202a;overflow-wrap:anywhere}.receive-eyebrow{margin:0;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#c2452f}.receive-note{margin:0;padding:12px 14px;font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;color:#3a2c1c;background:#eadbc2;border-radius:4px 12px 12px}.receive-body,.receive-small,.receive-help li{margin:0;font-size:13.5px;line-height:1.5;color:#3d4550}.receive-small{font-size:12.5px;color:#6b6559}.receive button{font:inherit;cursor:pointer}.receive button:disabled{opacity:.5;cursor:default}.receive-drop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:26px 16px;color:#17202a;background:#fff;border:2px dashed #c9c1ad;border-radius:12px}.receive-drop:hover:not(:disabled){border-color:#c2452f}.receive-drop strong{font-size:15px;overflow-wrap:anywhere}.receive-drop span{font-size:12.5px;color:#6b6559}.receive-primary{padding:11px 14px;font-size:14px;font-weight:600;color:#fbfaf5;background:#c2452f;border:1px solid #a63b28;border-radius:8px}.receive-quiet{align-self:center;padding:4px;font-size:13px;color:#6b6559;background:transparent;border:0;text-decoration:underline;text-underline-offset:3px}.receive-pass{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#17202a}.receive-pass input{padding:8px 10px;font:inherit;font-weight:400;background:#fff;border:1px solid #ded9cb;border-radius:8px}.receive-error{margin:0;padding:8px 10px;font-size:13px;color:#8c2f1e;background:#fbeceb;border-radius:8px}.receive-help ul{margin:8px 0 0;padding-left:18px}.receive-help li+li{margin-top:4px}@media(max-width:560px){.receive{top:auto;right:16px;bottom:16px;transform:none;max-height:calc(100vh - 80px)}}.builder-about{width:min(400px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:20px;color:#17202a;background:#fbfaf5;border:1px solid #ded9cb;border-radius:14px;box-shadow:0 24px 60px #17202a47}.builder-about::backdrop{background:#17202a66}.builder-about h3{margin:0 0 10px;font-size:17px}.builder .builder-about p,.builder-about li{font-size:14px;line-height:1.5;color:#3c4148}.builder .builder-about p{margin:0 0 10px}.builder-about ol{margin:0 0 16px;padding-left:20px}.builder-about li+li{margin-top:4px}.builder .builder-about .builder-primary{width:100%}:root{color:#17202a;background:#f7f6f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}.app-shell{position:relative;width:100%;height:100%;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.5),transparent 60%),#f1efe8}.scene-canvas{display:block;width:100%;height:100%}.html-texture-host{position:fixed;left:-10000px;top:0;pointer-events:none;overflow:hidden;contain:layout style paint}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.scene-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse farthest-corner at 50% 50%,#0000 56.5%,#00000002 65%,#00000005,#0000000a,#0000000f,#00000016,#0000001e,#00000027,#00000031)}
