html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden}.wall-background{width:100vw;height:100vh;display:flex;position:relative;align-items:center;justify-content:center;perspective:1500px;overflow:hidden;background-color:#e0e0e0}.wall-background::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;background-image:url('data:image/svg+xml;utf8,  <svg viewBox="0 0 100 100" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">    <defs>      <filter id="softShadow">        <feGaussianBlur in="SourceGraphic" stdDeviation="0.4" />      </filter>    </defs>    <style>      .shadow-lines {        stroke: %23d2d2d2;        stroke-width: 1px;        stroke-opacity: 0.5;        fill: %23f0f0f0;      }      .floor-fill {        fill: rgba(0,0,0,0.08);        stroke: none;      }    </style>    <path class="floor-fill" d="M0 100 L10 85 L90 85 L100 100 Z" />    <g filter="url(%23softShadow)">      <rect class="shadow-lines" x="10" y="10" width="80" height="75" />      <line class="shadow-lines" x1="0" y1="0" x2="10" y2="10" />      <line class="shadow-lines" x1="100" y1="0" x2="90" y2="10" />      <line class="shadow-lines" x1="0" y1="100" x2="10" y2="85" />      <line class="shadow-lines" x1="100" y1="100" x2="90" y2="85" />    </g>  </svg>')}#board-container{width:75vw;height:65vh;position:relative;top:-3vh;box-shadow:0 2px 4px rgba(0,0,0,.1),0 10px 20px rgba(0,0,0,.2);z-index:1;background-image:url(/images/texture.png);background-color:#d0deeb;border:1px solid #c2c2c2;transform-style:preserve-3d;transition:transform .1s ease-out}.push-pin{position:absolute;z-index:10;width:10px;height:10px;border-radius:50%;background:radial-gradient( circle at 30% 30%,rgba(255,255,255,.95) 0%,rgba(255,255,255,.3) 50%,rgba(200,200,200,.1) 100% );box-shadow:inset 0 0 2px rgba(255,255,255,.5),0 0 1px rgba(0,0,0,.2),2px 3px 5px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(1px)}.push-pin::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3px;height:3px;background-color:#444;border-radius:50%;box-shadow:inset 0 1px 1px rgba(0,0,0,.8);opacity:.7}.home-button:hover{background:rgba(255,255,255,.95);transform:translateY(-2px);box-shadow:0 15px 30px rgba(0,0,0,.15);color:#000}@media(max-width:600px){.home-button{font-size:0;padding:10px;width:40px;height:40px;justify-content:center}.home-button::before{content:"⬅";font-size:16px}}.evidence-controls{position:absolute;top:30px;left:50%;transform:translateX(-50%);z-index:1000;width:220px}#fandom-selector{width:100%;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:rgba(255,255,255,.85);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.5);border-radius:50px;padding:10px 40px 10px 20px;font-family:inherit;font-size:14px;font-weight:600;color:#333;cursor:pointer;box-shadow:0 10px 25px rgba(0,0,0,.1);outline:none;transition:all .3s ease;background-image:url(data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22292.4%22%20height=%22292.4%22%3E%3Cpath%20fill=%22%23333%22%20d=%22M287%2069.4A17.6%2017.6.0%2000274%2064H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6.0%20000%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8s-1.9-9.2-5.5-12.8z%22/%3E%3C/svg%3E);background-repeat:no-repeat;background-position:right 15px center;background-size:12px}#fandom-selector:hover{background-color:rgba(255,255,255,.95);transform:translateY(-1px)}#fandom-selector:focus{border-color:#333;box-shadow:0 0 0 3px rgba(0,0,0,.1)}.nav-arrow-wrapper{position:absolute;top:0;left:0;width:0;height:0;overflow:visible;z-index:9999}.nav-arrow{position:fixed!important;top:50%;left:6%;transform:translateY(-50%);border-bottom:none;display:flex;opacity:.5;text-decoration:none;transition:all .4s ease;cursor:pointer}.nav-arrow:hover{opacity:1}.pin-point{position:absolute;left:20%;top:20%;width:clamp(2px,1vw,6px);height:clamp(3px,1vw,6px);background-color:#2962ff;border-radius:50%;transform:translate(-50%,-50%);z-index:10;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.3)}.node{position:absolute;transform-origin:20% 20%;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:clamp(8px,1.2vw,14px);box-sizing:border-box;overflow:hidden;word-wrap:break-word;transition:filter .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:3px 3px 8px rgba(0,0,0,.15)}.node:hover{filter:brightness(1.1)contrast(1.05);box-shadow:0 8px 16px rgba(0,0,0,.3);z-index:999}.type-book{width:7%;max-width:100px;aspect-ratio:1/1.414;border-radius:2px 4px 4px 2px;padding:.5em}.type-movie{width:8%;aspect-ratio:110/65;max-width:110px;border-top:clamp(2px,.3vw,4px)dashed #555;border-bottom:clamp(2px,.3vw,4px)dashed #555;padding:.5em;display:flex;justify-content:center}.type-music{width:7%;max-width:70px;aspect-ratio:1/1;background:linear-gradient(135deg,#444 0%,#222 100%);border:1px solid #666;padding:.5em;position:relative}.type-text,.type-tag{width:6%;max-width:60px;aspect-ratio:1/1;background-color:#ffeb3b;padding:.5em;border-bottom-right-radius:20% 5%}.type-image{width:7%;aspect-ratio:90/110;background-color:#fff;color:#333;padding:.5em}#fandom-selector,.node{outline:1px solid #111;outline-offset:-1px}