:root{--paper:#fbf6ec;--paper-tint:#f5eedf;--ink:#2b2620;--pencil:#4d473d;--rule:#c8bfa9;--grid:#e3d8b8;--accent:#d8482b;--highlight:#f9d27c;--note-yellow:#fff19a;--note-pink:#ffd5c9;--serif:"DM Serif Display", "Iowan Old Style", Georgia, serif;--hand:"Patrick Hand", "Caveat", cursive;--hand-bold:"Caveat", "Patrick Hand", cursive;--mono:"IBM Plex Mono", ui-monospace, monospace;font-family:var(--hand);color:var(--ink);background-color:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(circle, #2b26200a 1px, transparent 1.4px) 0 0 / 22px 22px, var(--paper);min-width:320px;min-height:100vh;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--serif);margin:0}button{cursor:pointer;font-family:var(--hand)}a{color:inherit;text-decoration:none}.page{max-width:500px;min-height:100vh;margin:0 auto;padding:24px 16px 56px;position:relative}.head{border-bottom:2.5px solid var(--ink);flex-direction:column;gap:8px;margin-bottom:24px;padding-bottom:14px;display:flex}.head h1{font:800 36px/1 var(--serif);flex-wrap:wrap;align-items:center;gap:12px;margin:0;display:flex}.pin{font:10px/1 var(--mono);border:1.5px dashed var(--accent);color:var(--accent);letter-spacing:.1em;background:var(--paper);align-items:center;gap:8px;padding:4px 8px;display:inline-flex;transform:rotate(-2deg)}.nav-bar{border:3.5px solid var(--ink);background:var(--paper);box-shadow:4px 4px 0 var(--pencil);white-space:nowrap;border-radius:999px;align-items:center;gap:16px;margin-bottom:24px;padding:8px 16px;display:flex;overflow-x:auto}.nav-bar .logo{font:800 20px/1 var(--serif);border-right:2px solid var(--grid);padding-right:12px;font-style:italic}.nav-link{cursor:pointer;padding:4px;font-size:18px;font-weight:500;position:relative}.nav-link.active:after{content:"";background:var(--highlight);opacity:.7;z-index:-1;height:8px;position:absolute;bottom:2px;left:0;right:0;transform:skew(-15deg)}.canvas{background:repeating-linear-gradient(0deg, var(--grid) 0 1px, transparent 1px 24px), repeating-linear-gradient(90deg, var(--grid) 0 1px, transparent 1px 24px), var(--paper-tint);border:3.5px solid var(--ink);border-radius:12px;min-height:500px;padding:24px;position:relative;box-shadow:6px 8px #2b26201a}.sketch-btn{border:3px solid var(--ink);background:var(--paper);font:700 18px var(--hand);cursor:pointer;box-shadow:4px 4px 0 var(--ink);color:var(--ink);padding:10px 20px;text-decoration:none;transition:transform .1s,box-shadow .1s;display:inline-block}.sketch-btn:active{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.sketch-btn.primary{background:var(--highlight)}.sticky-note{font:18px/1.3 var(--hand);width:100%;margin-bottom:20px;padding:16px;position:relative;box-shadow:4px 6px 0 -2px #2b262026}.sticky-note.yellow{background:var(--note-yellow)}.sticky-note.pink{background:var(--note-pink)}.sticky-note .tape{background:#2b262026;width:60px;height:16px;position:absolute;top:-8px;left:50%;transform:translate(-50%)rotate(-2deg)}.place-card{border:2px solid var(--pencil);cursor:pointer;background:var(--paper);border-radius:8px;grid-template-columns:60px 1fr auto;align-items:center;gap:16px;margin-bottom:12px;padding:16px;transition:all .1s;display:grid}.place-card:hover{border-color:var(--ink);transform:scale(1.02)}.place-card.selected{border-color:var(--accent);border-width:3px}.place-thumb{border:1.5px solid var(--grid);background:var(--paper-tint);justify-content:center;align-items:center;width:60px;height:60px;font-size:24px;display:flex}.swipe-card-container{cursor:grab;touch-action:none;justify-content:center;align-items:center;width:320px;height:400px;display:flex;position:absolute}.swipe-card{background:var(--paper);border:3px solid var(--ink);width:100%;height:100%;box-shadow:8px 8px 0 var(--ink);border-radius:12px;flex-direction:column;justify-content:space-between;padding:24px;display:flex;position:relative;overflow:hidden}.paper-texture{background-image:radial-gradient(var(--grid) 1px, transparent 1px), linear-gradient(to right, var(--grid) 1px, transparent 1px);background-size:20px 20px}.card-emoji{text-align:center;margin-top:20px;font-size:80px}.card-name{font-family:var(--hand);text-align:center;color:var(--ink);margin-top:16px;font-size:32px}.card-footer{border-top:2px dashed var(--pencil);padding-top:12px}.stamp{font-family:var(--hand);text-transform:uppercase;z-index:10;pointer-events:none;border:4px solid;border-radius:8px;padding:4px 12px;font-size:24px;font-weight:700;position:absolute;top:20px}.stamp.like{color:#4caf50;border-color:#4caf50;right:20px;transform:rotate(15deg)}.stamp.nope{color:#f44336;border-color:#f44336;left:20px;transform:rotate(-15deg)}.scribble-text{font-family:var(--hand);color:var(--pencil);text-align:center;font-style:italic}.vote-result-container{max-width:600px;margin:0 auto;padding:20px}.result-list{margin-top:24px}.result-item{margin-bottom:24px}.result-info{font-family:var(--hand);justify-content:space-between;margin-bottom:8px;display:flex}.result-name{font-size:18px;font-weight:700}.result-count{color:var(--pencil)}.bar-container{background:var(--grid);border:2px solid var(--ink);border-radius:4px;height:24px;position:relative;overflow:hidden}.bar-fill{background:var(--highlight);border-right:2px solid var(--ink);height:100%;transition:width .8s cubic-bezier(.17,.67,.83,.67)}.total-summary{text-align:center;border-top:2px dashed var(--pencil);margin-top:32px;padding:16px}
