:root{--paper:#f2ecdf;--card:#fffdf6;--ink:#211f1a;--muted:#6e685c;--line:#ded4c1;--accent:#a8492a;--accent-soft:#f0dfd4;--shadow:0 18px 40px -28px #3428188c}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 18% -10%,#fbf7ec 0%,#0000 55%);font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif;line-height:1.55}#app{max-width:44rem;margin:0 auto;padding:2rem 1.15rem 3rem}.head{margin-bottom:1.5rem}.mark{letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin:0 0 .35rem;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.72rem}h1{letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:clamp(1.75rem,6vw,2.5rem);font-weight:600;line-height:1.12}.sub{color:var(--muted);max-width:34rem;margin:.6rem 0 0;font-size:1.02rem}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:1rem;padding:1.35rem;display:flex}.field{flex-direction:column;gap:.45rem;display:flex}.field span{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.78rem}.scene{font:inherit;border:1px solid var(--line);color:inherit;background:#fff;border-radius:9px;padding:.7rem .8rem;font-size:1.05rem}.scene:focus-visible,.style:focus-visible,.btn:focus-visible,.spot:focus-visible,.crumb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.styles{flex-wrap:wrap;gap:.45rem;display:flex}.style{font:inherit;border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;padding:.36rem .72rem;font-size:.86rem}.style.picked{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:9px;align-self:flex-start;padding:.66rem 1.1rem;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s}.btn.primary{background:var(--accent);color:#fff8f2}.btn.primary:hover{background:#8f3d23}.btn.ghost{border-color:var(--line);color:var(--ink);background:0 0}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}.signed{color:var(--muted);margin:0;font-size:.92rem}.fine{color:var(--muted);margin:0;font-size:.87rem}.busy{background:var(--ink);color:#fdf6ec;text-align:center;box-shadow:var(--shadow);border-radius:999px;margin:1rem 0 0;padding:.6rem .9rem;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.88rem;position:sticky;bottom:.75rem}.busy:before{content:"";background:var(--accent);vertical-align:middle;border-radius:50%;width:.55em;height:.55em;margin-right:.6em;animation:1.1s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.25}}.error{color:#8a3520;background:#fbeee9;border:1px solid #d9a79c;border-radius:10px;margin:1rem 0 0;padding:.75rem .95rem;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.92rem}.view{margin:0;position:relative;overflow:visible}.view img{border:1px solid var(--line);background:var(--card);width:100%;height:auto;box-shadow:var(--shadow);border-radius:6px;display:block}.spots{position:absolute;inset:0}.spot{cursor:pointer;font:inherit;background:0 0;border:0;padding:0;display:block;position:absolute;transform:translate(-50%,-50%)}.pin{background:var(--accent);border:2px solid #fff;border-radius:50%;width:1.5rem;height:1.5rem;transition:transform .15s;display:block;box-shadow:0 0 0 4px #a8492a52,0 2px 6px #00000059}.spot:hover .pin,.spot:focus-visible .pin{transform:scale(1.18)}.spotlabel{color:#fdf7ec;text-align:center;white-space:normal;pointer-events:none;background:#1c1914db;border-radius:999px;max-width:10rem;padding:.16rem .5rem;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.76rem;line-height:1.35;position:absolute;top:1.65rem;left:50%;transform:translate(-50%)}.spot.above .spotlabel{top:auto;bottom:1.65rem}.trail{scrollbar-width:thin;gap:.5rem;margin-top:1rem;padding-bottom:.35rem;display:flex;overflow-x:auto}.crumb{background:var(--card);cursor:pointer;opacity:.6;border:2px solid #0000;border-radius:7px;flex:none;width:3.6rem;padding:0;transition:opacity .15s,border-color .15s;position:relative;overflow:hidden}.crumb img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.crumb.here{opacity:1;border-color:var(--accent)}.crumb:hover{opacity:1}.crumbnum{color:#fdf7ec;background:#1c1914cc;padding:0 .3rem;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.66rem;line-height:1.3;position:absolute;bottom:0;left:0}.tools{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.share{background:var(--card);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:.5rem;margin-top:.9rem;padding:.9rem;display:flex}.share label{color:var(--muted);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.85rem}.linkfield{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;width:100%;padding:.55rem .65rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.foot{border-top:1px solid var(--line);margin-top:2.2rem;padding-top:1rem}.foot p{color:var(--muted);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.82rem}.foot a{color:var(--muted)}.foot a:hover{color:var(--accent)}
