:root{--background:#c9a87c;--background-light:#d4b58a;--surface:#fdf6e3;--surface-alt:#f5edd6;--foreground:#3a2e2a;--muted:#7a6b5d;--accent:#e63946;--accent-blue:#457b9d;--accent-green:#6a994e;--accent-yellow:#f4a261;--border:#b08968;--shadow:#3a2e2a40;--pin-red:#e63946;--pin-blue:#457b9d;--pin-green:#6a994e;--pin-yellow:#f4a261;--font-display:"Gochi Hand", "Comic Sans MS", cursive;--font-body:"Special Elite", "Courier New", monospace;--text-xs:11px;--text-sm:13px;--text-base:15px;--text-lg:18px;--text-xl:24px;--text-2xl:32px;--text-3xl:44px;--leading-body:1.6;--radius:4px;--radius-lg:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px}.dark{--background:#2f3e46;--background-light:#3d5159;--surface:#f0f0ec;--surface-alt:#e2e2dc;--foreground:#2a2a28;--muted:#6b6b68;--accent:#dba9a9;--accent-blue:#7a9eb1;--accent-green:#8bb174;--accent-yellow:#e8c07d;--border:#4a5c63;--shadow:#0006;--pin-red:#dba9a9;--pin-blue:#7a9eb1;--pin-green:#8bb174;--pin-yellow:#e8c07d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--foreground);background-color:var(--background);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}.cork-board{background-color:var(--background);background-image:radial-gradient(circle at 20% 30%,#0000000f 1px,#0000 2px),radial-gradient(circle at 70% 60%,#0000000a 1px,#0000 2px),radial-gradient(circle at 40% 80%,#0000000d 1px,#0000 2px),radial-gradient(circle at 90% 20%,#00000008 1px,#0000 2px),radial-gradient(circle at 10% 70%,#ffffff0a 1px,#0000 2px);background-size:24px 24px,31px 31px,19px 19px,27px 27px,22px 22px}.index-card{background:var(--surface);border-radius:var(--radius);box-shadow:2px 3px 8px var(--shadow), 0 1px 3px var(--shadow);padding:var(--space-4);cursor:pointer;transition:transform .2s,box-shadow .2s;position:relative}.index-card:hover{box-shadow:4px 8px 16px var(--shadow), 0 2px 6px var(--shadow);z-index:10;transform:translateY(-3px)rotate(0)scale(1.02)}.pushpin{z-index:5;border-radius:50%;width:18px;height:18px;position:absolute;top:-8px;left:50%;transform:translate(-50%);box-shadow:0 2px 4px #0000004d,inset -2px -2px 4px #0003,inset 2px 2px 3px #ffffff4d}.pushpin:after{content:"";background:#999;border-radius:1px;width:2px;height:6px;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}.pushpin-red{background:var(--pin-red)}.pushpin-blue{background:var(--pin-blue)}.pushpin-green{background:var(--pin-green)}.pushpin-yellow{background:var(--pin-yellow)}.handwritten{font-family:var(--font-display);letter-spacing:.5px}.typewritten{font-family:var(--font-body)}.tape-strip{background:#f4a26159;border:1px dashed #3a2e2a33;border-radius:2px;padding:4px 12px}.stamp{font-family:var(--font-display);border:3px solid var(--accent);color:var(--accent);opacity:.85;letter-spacing:2px;text-transform:uppercase;border-radius:2px;padding:4px 12px;font-size:18px;display:inline-block;transform:rotate(-12deg)}.rot-1{transform:rotate(-1.5deg)}.rot-2{transform:rotate(1.2deg)}.rot-3{transform:rotate(-.8deg)}.rot-4{transform:rotate(2deg)}.rot-5{transform:rotate(-2.5deg)}.rot-6{transform:rotate(.5deg)}.index-card:hover.rot-1,.index-card:hover.rot-2,.index-card:hover.rot-3,.index-card:hover.rot-4,.index-card:hover.rot-5,.index-card:hover.rot-6{transform:translateY(-3px)rotate(0)scale(1.02)}.btn{font-family:var(--font-display);font-size:var(--text-base);border-radius:var(--radius);border:2px solid var(--foreground);cursor:pointer;background:var(--surface);color:var(--foreground);letter-spacing:.5px;padding:10px 20px;transition:all .15s}.btn:hover{box-shadow:2px 3px 6px var(--shadow);transform:translateY(-1px)}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:#c92f3b;border-color:#c92f3b}.btn-ghost{border-color:var(--muted);color:var(--muted);background:0 0}.tape-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#3a2e2a1f;border-top:2px dashed #3a2e2a33}.folded-corner{position:relative}.folded-corner:after{content:"";border-style:solid;border-width:0 0 16px 16px;border-color:transparent transparent var(--surface-alt) transparent;filter:drop-shadow(-1px -1px 1px #0000001a);width:0;height:0;position:absolute;bottom:0;right:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@keyframes pin-drop{0%{opacity:0;transform:translate(-50%)translateY(-20px)scale(.5)}60%{opacity:1;transform:translate(-50%)translateY(2px)scale(1.1)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes card-slide-in{0%{opacity:0;transform:translateY(30px)rotate(0)}to{opacity:1}}@keyframes stamp-press{0%{opacity:0;transform:rotate(-12deg)scale(1.5)}60%{opacity:.9;transform:rotate(-12deg)scale(.95)}to{opacity:.85;transform:rotate(-12deg)scale(1)}}.pin-animate{animation:.4s ease-out pin-drop}.card-slide-in{animation:.3s ease-out card-slide-in}.stamp-animate{animation:.5s ease-out stamp-press}.sheet-overlay{z-index:50;background:#0006;position:fixed;inset:0}.sheet-bottom{background:var(--surface);z-index:51;border-radius:16px 16px 0 0;max-height:85vh;animation:.3s ease-out slide-up;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -4px 24px #0000004d}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.cat-tag{font-family:var(--font-body);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase;border-radius:2px;padding:2px 8px;display:inline-block}.field{font-family:var(--font-body);font-size:var(--text-base);border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--foreground);outline:none;width:100%;padding:10px 12px;transition:border-color .15s}.field:focus{border-color:var(--accent)}.field::placeholder{color:var(--muted);font-style:italic}.chain-arrow{color:var(--muted);justify-content:center;align-items:center;font-size:24px;display:flex}.board-grid{column-count:3;column-gap:16px}@media (width<=900px){.board-grid{column-count:2}}@media (width<=600px){.board-grid{column-count:1}}
