@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Special+Elite&family=Courier+Prime:ital,wght@0,400;0,700;1,400&display=swap";:root{--parchment:#f2e4c8;--parchment-dark:#e8d5a8;--parchment-deep:#dec88a;--ink:#2c1810;--ink-light:#4a2e1a;--sepia:#7a5230;--rust:#8b3a1a;--rust-light:#a04520;--gold:#c8960c;--gold-light:#e5b220;--cream:#faf3e0;--font-pixel:"Press Start 2P", monospace;--font-typewriter:"Special Elite", cursive;--font-mono:"Courier Prime", monospace;--shadow-hard:4px 4px 0px #2c181066;--shadow-soft:2px 2px 0px #2c181033;--shadow-inset:inset 2px 2px 0px #2c181026;color:var(--ink);background-color:var(--parchment);font-family:var(--font-typewriter);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.7}body{background-color:var(--parchment);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23noise)' opacity='0.06'/%3E%3C/svg%3E");min-height:100vh;margin:0;padding:0}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4{font-family:var(--font-typewriter);color:var(--ink);letter-spacing:.5px;margin:0;font-weight:400}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.2rem}p{margin:0}a{color:var(--rust);border-bottom:1px dotted var(--rust);text-decoration:none;transition:color .15s,border-color .15s}a:hover{color:var(--gold);border-bottom-color:var(--gold)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--parchment-dark)}::-webkit-scrollbar-thumb{background:var(--sepia);border:2px solid var(--parchment-dark)}::-webkit-scrollbar-thumb:hover{background:var(--rust)}@media (width<=768px){.mobile-menu{display:block!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes stampIn{0%{opacity:0;transform:scale(1.15)rotate(-2deg)}60%{transform:scale(.97)rotate(.5deg)}to{opacity:1;transform:scale(1)rotate(0)}}.fade-in{animation:.4s both fadeIn}.vcard{background:var(--cream);border:2px solid var(--sepia);box-shadow:var(--shadow-hard);padding:1.5rem;transition:transform .15s,box-shadow .15s;position:relative}.vcard:before{content:"";border:1px dashed var(--parchment-deep);pointer-events:none;position:absolute;inset:3px}.vcard:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #2c181059}.vbtn{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px;border:2px solid var(--ink);background:var(--parchment-dark);color:var(--ink);cursor:pointer;box-shadow:var(--shadow-hard);align-items:center;gap:6px;padding:.6rem 1.4rem;font-size:.85rem;font-weight:700;transition:all .1s;display:inline-flex}.vbtn:hover{background:var(--ink);color:var(--parchment);transform:translate(-1px,-1px);box-shadow:5px 5px #2c181066}.vbtn:active{transform:translate(2px,2px);box-shadow:1px 1px #2c181066}.vbtn-primary{background:var(--rust);color:var(--cream);border-color:var(--ink)}.vbtn-primary:hover{background:var(--ink);color:var(--gold-light)}.vbtn-gold{background:var(--gold);color:var(--ink);border-color:var(--ink)}.vbtn-gold:hover{background:var(--ink);color:var(--gold-light)}.vinput{font-family:var(--font-mono);background:var(--cream);border:2px solid var(--sepia);box-shadow:var(--shadow-inset);color:var(--ink);outline:none;width:100%;padding:.65rem .9rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.vinput:focus{border-color:var(--rust);box-shadow:inset 2px 2px #8b3a1a26,0 0 0 3px #8b3a1a1a}.vbadge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;border:1px solid;padding:2px 7px;font-size:.72rem;font-weight:700}.vdivider{border:none;border-top:2px dashed var(--sepia);opacity:.4;margin:1rem 0}.cursor:after{content:"█";font-family:var(--font-pixel);color:var(--gold);margin-left:2px;font-size:.6em;animation:1s step-end infinite blink}
