@import url(https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap);:root{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink:#e7eef8;--muted:#9aa7c1;--surface:#141a2cb8;--surface-strong:#182034eb;--shadow:0 20px 40px #0307128c;--accent-1:#22d3ee;--accent-2:#818cf8;--accent-3:#34d399;--accent-4:#fbbf24;--grid-line:#818cf814;background-color:#0b1020;color:#e7eef8;font-family:IBM Plex Sans,Segoe UI,sans-serif;font-synthesis:none;font-weight:400;line-height:1.5;text-rendering:optimizeLegibility}*{box-sizing:border-box;padding:0}*,body{margin:0}body{background-color:#0b1020;background-image:radial-gradient(circle at 20% 20%,#818cf82e,#0000 45%),radial-gradient(circle at 85% 15%,#22d3ee24,#0000 40%),linear-gradient(90deg,#818cf814 1px,#0000 0),linear-gradient(180deg,#818cf814 1px,#0000 0);background-image:radial-gradient(circle at 20% 20%,#818cf82e,#0000 45%),radial-gradient(circle at 85% 15%,#22d3ee24,#0000 40%),linear-gradient(to right,var(--grid-line) 1px,#0000 1px),linear-gradient(to bottom,var(--grid-line) 1px,#0000 1px);background-size:100% 100%,100% 100%,80px 80px,80px 80px;display:block;min-height:100vh;min-height:100svh;min-height:100dvh;min-width:320px;overflow-x:hidden;overflow-y:auto;position:relative;width:100%}body:before{background:linear-gradient(120deg,#818cf814,#0000 55%),linear-gradient(310deg,#22d3ee14,#0000 45%);content:"";inset:0;mix-blend-mode:normal;pointer-events:none;position:absolute}#root{align-items:stretch;display:flex;justify-content:center;min-height:100vh;min-height:100svh;min-height:100dvh;width:100%}h1,h2,h3{font-family:IBM Plex Mono,SFMono-Regular,ui-monospace,monospace;font-weight:600}button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#182034eb;background-color:var(--surface-strong);border:1px solid #e7eef824;border-radius:999px;color:#e7eef8;color:var(--ink);cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:600;padding:.65em 1.6em;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}button:hover{border-color:#e7eef847;box-shadow:0 12px 24px #0307128c;transform:translateY(-2px)}button:focus-visible{outline:3px solid #818cf880;outline-offset:3px}.portfolio{display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,2.5rem);margin:0;padding:clamp(1.5rem,3vw,2.75rem);position:relative;width:100%;z-index:1}.topbar{gap:1rem;justify-content:space-between}.social-links,.topbar{align-items:center;display:flex;flex-wrap:wrap}.social-links{gap:.75rem}.social-link{align-items:center;background:var(--surface);border:1px solid #e7eef81f;border-radius:999px;color:var(--muted);display:inline-flex;font-size:.75rem;font-weight:600;gap:.45rem;letter-spacing:.08em;padding:.35rem .9rem;text-decoration:none;text-transform:uppercase;transition:color .2s ease,border-color .2s ease,transform .2s ease}.social-icon{flex:0 0 auto;height:16px;width:16px}.social-link:hover{border-color:#e7eef840;color:var(--ink);transform:translateY(-1px)}.topbar-link{background:var(--surface-strong);border:1px solid #e7eef82e;border-radius:999px;color:var(--ink);font-size:.85rem;font-weight:600;letter-spacing:.12em;padding:.45rem 1.2rem;text-decoration:none;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.topbar-link:hover{border-color:#e7eef84d;box-shadow:0 12px 24px #0307128c;transform:translateY(-2px)}.topbar-link.is-active{border-color:#e7eef873;box-shadow:0 18px 30px #03071299}.playground{background:linear-gradient(140deg,#121828f5,#0c1220e0);border-radius:28px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2rem;justify-content:space-between;min-height:60vh;padding:clamp(1.25rem,3vw,2rem)}.playground-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}.playground-card{align-items:flex-start;background:var(--surface);border:1px solid #e7eef82e;border-radius:18px;color:var(--ink);display:flex;font-weight:600;justify-content:flex-start;letter-spacing:.08em;min-height:110px;overflow:hidden;padding:1.2rem 1rem;position:relative;text-decoration:none;text-transform:uppercase}.playground-card.is-link{cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.playground-card:before{background:conic-gradient(from 120deg,#818cf84d,#22d3ee59,#34d39947,#fbbf2447);content:"";filter:blur(14px);inset:-45%;opacity:.35;position:absolute;transform:translateX(-10%);transition:opacity .2s ease;z-index:0}.playground-card span{position:relative;z-index:1}.playground-card.is-link:hover{border-color:#e7eef847;box-shadow:0 18px 30px #0307128c;transform:translateY(-3px)}.playground-card.is-link:hover:before{opacity:.55}.weird-page{background:linear-gradient(140deg,#121828f5,#0c1220e0);border-radius:28px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2rem;min-height:60vh;padding:clamp(1.25rem,3vw,2rem)}.weird-page .subtitle{max-width:none;width:100%}.weird-success{background:linear-gradient(120deg,#22d3ee2e,#34d39933);border:1px solid #e7eef833;border-radius:16px;color:var(--ink);font-weight:600;letter-spacing:.08em;padding:.85rem 1.1rem;text-align:center;text-transform:uppercase}.weird-list{grid-gap:1rem;display:grid;gap:1rem}.weird-row{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:minmax(140px,180px) 1fr}.weird-button{background:linear-gradient(120deg,#818cf82e,#22d3ee3d);border:1px solid #e7eef833;border-radius:16px;box-shadow:0 12px 22px #03071299;color:var(--ink);cursor:pointer;font-size:.85rem;font-weight:700;letter-spacing:.18em;overflow:hidden;padding:.85rem 1.1rem;position:relative;text-align:left;text-transform:uppercase;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}.weird-button:before{background:conic-gradient(from 120deg,#818cf847,#22d3ee52,#34d39942,#fbbf2447);content:"";filter:blur(10px);inset:-40%;opacity:.35;position:absolute;transform:translateX(-20%);transition:opacity .2s ease;z-index:0}.weird-button span{position:relative;z-index:1}.weird-button:hover{border-color:#e7eef859;box-shadow:0 18px 32px #030712b3;transform:translateY(-2px) rotate(-.6deg)}.weird-button:active{transform:translateY(1px) rotate(.4deg) scale(.98)}.weird-button:disabled{cursor:not-allowed;opacity:.65}.progress{background:#090d17cc;border:1px solid #e7eef81f;border-radius:999px;height:16px;overflow:hidden;position:relative}.progress-fill{background:linear-gradient(90deg,#22d3eee6,#818cf8e6);border-radius:inherit;height:100%;transition:width 1.2s ease;width:0}.back-link{color:var(--ink);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.back-link:hover{color:var(--accent-2)}.hero{align-items:flex-end;display:flex;gap:2rem;justify-content:space-between}.eyebrow{color:var(--muted);font-size:.72rem;letter-spacing:.28em;margin-bottom:.65rem;text-transform:uppercase}.hero h1{color:var(--ink);font-size:clamp(2.4rem,3vw,3.4rem);margin-bottom:.5rem}.hero h1 span{color:var(--muted);display:block;font-family:Space Grotesk,Segoe UI,sans-serif;font-size:clamp(1.1rem,1.4vw,1.5rem);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.subtitle{color:var(--muted);font-size:1rem;max-width:420px}.controls{align-items:flex-start;display:flex;flex-direction:column;gap:.6rem}.hint{color:var(--muted);font-size:.85rem}.tile-grid{grid-gap:clamp(.8rem,1.6vw,1.2rem);display:grid;flex:1 1;gap:clamp(.8rem,1.6vw,1.2rem);grid-auto-rows:auto;grid-template-columns:repeat(4,minmax(0,1fr));min-height:0}.tile{animation:tile-in .7s ease forwards;animation-delay:var(--delay);background:linear-gradient(140deg,#121828f5,#0c1220e0);border-radius:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:1rem;justify-content:space-between;opacity:0;overflow:hidden;padding:clamp(1rem,1.8vw,1.4rem);position:relative;transform:translateY(6px);transition:transform .2s ease,box-shadow .2s ease}.tile--compact{gap:.75rem;padding:clamp(.85rem,1.6vw,1.2rem)}.tile--compact .tile-list{font-size:.88rem;gap:.3rem}.tile:before{border:1px solid #e7eef81f;border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.tile:hover{box-shadow:0 28px 55px #030712b3;transform:translateY(-6px)}.tile-head{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding-right:4.75rem}.tile h2{font-size:1.2rem;letter-spacing:.12em}.tile h2,.tile-count{text-transform:uppercase}.tile-count{background:var(--accent);border-radius:999px;color:#f8fafc;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.3rem .75rem;position:absolute;right:clamp(1rem,1.8vw,1.4rem);top:clamp(1rem,1.8vw,1.4rem)}.tile-list{grid-gap:.4rem;color:var(--ink);display:grid;font-size:.92rem;font-weight:600;gap:.4rem;list-style:none}.tile-list--split{column-gap:1.1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.tile-list li{align-items:center;display:flex;gap:.5rem}.tile-list li:before{color:var(--accent);content:"◆";font-size:.7rem}.tile-glow{background:radial-gradient(circle,var(--accent),#0000 70%);bottom:-40px;filter:blur(.5px);height:160px;opacity:.35;pointer-events:none;position:absolute;right:-40px;width:160px}.footer{color:var(--muted);font-size:.85rem;text-align:right}@keyframes tile-in{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:1100px){.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1101px){.tile-grid .tile:last-child{grid-column:span 2}}@media (max-width:720px){.hero{align-items:flex-start;flex-direction:column}.controls{align-items:center;flex-direction:row}.tile-grid{grid-template-columns:1fr}.footer{text-align:left}}@media (max-width:600px){.portfolio{padding:clamp(1.25rem,5vw,2rem);width:100%}.topbar{flex-wrap:nowrap}.social-links,.topbar{align-items:flex-start}.social-links{flex-direction:column;gap:.5rem}.topbar-link{font-size:.78rem;margin-left:auto;padding:.4rem 1rem}.playground-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.playground-card{font-size:.75rem;min-height:90px}.weird-row{grid-template-columns:1fr;justify-items:stretch}.tile{border-radius:20px;padding:1rem}.tile-head{align-items:flex-start;flex-wrap:wrap;padding-right:4.25rem}.tile h2{font-size:1.05rem;letter-spacing:.08em}.tile-count{font-size:.7rem}.tile-list{font-size:.9rem}}@media (prefers-reduced-motion:reduce){.tile{animation:none;opacity:1;transform:none}.tile,button{transition:none}}
/*# sourceMappingURL=main.24630c9b.css.map*/