@font-face{font-family:Departure Mono;src:url(../../../fonts/departure-mono/DepartureMono-Regular.woff2)format("woff2"),url(../../../fonts/departure-mono/DepartureMono-Regular.woff)format("woff"),url(../../../fonts/departure-mono/DepartureMono-Regular.otf)format("opentype");font-weight:400;font-display:swap;font-style:normal}:root{--bg:#272e33;--bg-raised:#2e383e;--bg-strong:#374247;--text:#d3c6aa;--primary:#a7c080;--muted:#7a8478;--muted-strong:#859289;--radius:10px;--gap:1.25rem;--frost:72%;--frost-hover:82%;--frost-blur:12px;--frost-sat:1.25;--frost-highlight:inset 0 1px 0 #ffffff2e, inset 0 -1px 0 #00000059;--frost-sheen:linear-gradient(#ffffff1a, #ffffff08 40%, #00000029);--shadow-rgb:16 21 18;--frost-shadow:0 4px 14px rgb(var(--shadow-rgb) / .4);--frost-shadow-hover:0 8px 22px rgb(var(--shadow-rgb) / .45);--frost-press:0 1px 4px rgb(var(--shadow-rgb) / .35)}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}body{background-color:var(--bg);background-image:radial-gradient(ellipse at center, transparent 40%, color-mix(in srgb, var(--bg) 40%, transparent) 100%), linear-gradient(color-mix(in srgb, var(--bg) 18%, transparent), color-mix(in srgb, var(--bg) 30%, transparent)), url(../../../assets/everforest-landscape.webp);color:var(--text);background-position:50%,50%,50%;background-repeat:no-repeat,no-repeat,no-repeat;background-size:cover,cover,cover;background-attachment:fixed,fixed,fixed;justify-content:center;align-items:center;min-height:100vh;font-family:Departure Mono,monospace;display:flex;position:relative}.container{z-index:1;text-align:center;width:100%;max-width:600px;padding:2rem 1.25rem;position:relative}.identity{text-align:center;margin-bottom:2rem}picture{display:contents}.pfp{border:2px solid var(--primary);width:120px;height:120px;box-shadow:0 0 0 3px color-mix(in srgb, var(--bg) 80%, transparent), 0 4px 12px rgb(var(--shadow-rgb) / .4);border-radius:50%;margin:0 auto 1.5rem;transition:box-shadow .3s,border-color .3s;display:block}.pfp:hover{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 35%, transparent), 0 6px 16px rgb(var(--shadow-rgb) / .45)}h1{letter-spacing:2px;text-transform:uppercase;color:var(--text);margin-bottom:.75rem;font-size:1.75rem;font-weight:600}.about{color:var(--text);margin-bottom:1.5rem;font-size:.85rem;font-style:italic}.section-label{color:var(--text);text-shadow:0 1px 4px rgb(var(--shadow-rgb) / .6);text-transform:lowercase;justify-content:center;align-items:center;gap:.25rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.nostr-icon{opacity:.85;width:20px;height:20px;filter:drop-shadow(0 1px 3px rgb(var(--shadow-rgb) / .6))}.npub-wrap{gap:.5rem;margin-bottom:1.5rem;display:flex;position:relative}.npub{text-align:center;min-width:0;color:var(--text);border:1px solid color-mix(in srgb, var(--primary) 35%, transparent);border-radius:var(--radius);background:var(--frost-sheen), color-mix(in srgb, color-mix(in srgb, var(--primary) 8%, var(--bg)) var(--frost), transparent);-webkit-backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));flex:auto;justify-content:center;align-items:center;padding:.9rem 1rem;font-family:monospace;font-size:.75rem;text-decoration:none;transition:background .2s;display:flex}.npub:hover{background:var(--frost-sheen), color-mix(in srgb, color-mix(in srgb, var(--primary) 16%, var(--bg)) var(--frost-hover), transparent)}.npub-copy{border:1px solid color-mix(in srgb, var(--primary) 35%, transparent);border-radius:var(--radius);background:color-mix(in srgb, var(--bg-raised) var(--frost), transparent);width:2.75rem;-webkit-backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));color:var(--primary);cursor:pointer;box-shadow:var(--frost-highlight), var(--frost-shadow);flex:none;place-items:center;transition:background .2s,color .2s;display:grid}.npub-copy:hover{background:var(--primary);color:var(--bg)}.npub-copied{z-index:10;color:var(--bg);background:var(--primary);border-radius:var(--radius);opacity:0;pointer-events:none;padding:.2rem .75rem;font-family:Departure Mono,monospace;font-size:.7rem;transition:opacity .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.npub-copied.show{opacity:1}h1,.about,.section-label{text-shadow:0 1px 4px rgb(var(--shadow-rgb) / .55)}.links{gap:.75rem;display:grid}.link{background:var(--frost-sheen), color-mix(in srgb, color-mix(in srgb, var(--primary) 7%, var(--bg)) var(--frost), transparent);-webkit-backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));color:var(--primary);border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--primary) 30%, transparent);box-shadow:var(--frost-highlight), var(--frost-shadow);flex-direction:column;padding:.875rem 1.5rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .25s,border-color .25s,box-shadow .25s,transform .25s;display:flex}.link:hover{background:var(--frost-sheen), color-mix(in srgb, color-mix(in srgb, var(--primary) 12%, var(--bg)) var(--frost-hover), transparent);border-color:var(--primary);box-shadow:var(--frost-highlight), var(--frost-shadow-hover);transform:translateY(-2px)}.link-name{display:block}.link-desc{color:color-mix(in srgb, var(--text) 75%, transparent);margin-top:.25rem;font-size:.75rem;font-weight:400;display:block}.link:hover .link-desc{color:var(--text)}.link-tags{flex-wrap:wrap;justify-content:center;gap:.35rem;margin-top:auto;padding-top:.6rem;display:flex}.tag{letter-spacing:.03em;color:color-mix(in srgb, var(--text) 80%, transparent);background:var(--frost-sheen), color-mix(in srgb, color-mix(in srgb, var(--primary) 10%, var(--bg)) var(--frost), transparent);-webkit-backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));border:1px solid color-mix(in srgb, var(--primary) 25%, transparent);border-radius:var(--radius);padding:.1rem .5rem;font-size:.65rem;font-weight:400}.links-row{gap:.75rem;width:100%;display:flex}.links-row .link{text-align:center;flex:1;padding:.6rem 1rem;font-size:.8rem}.link:active,.npub:active,.tip:active{box-shadow:var(--frost-highlight), var(--frost-press);transform:translateY(1px)}.npub-copy:active,.tip-copy:active{box-shadow:var(--frost-highlight), var(--frost-press)}.tips{margin-top:2rem}.tip-wrap{gap:.5rem;margin-bottom:.75rem;display:flex;position:relative}.tips .tip-wrap:last-child{margin-bottom:0}.tip{background:var(--frost-sheen), color-mix(in srgb, color-mix(in srgb, var(--tip-color,var(--primary)) 8%, var(--bg)) var(--frost), transparent);min-width:0;-webkit-backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));color:var(--tip-color,var(--primary));border:1px solid color-mix(in srgb, var(--tip-color,var(--primary)) 35%, transparent);border-radius:var(--radius);text-align:left;cursor:pointer;box-shadow:var(--frost-highlight), var(--frost-shadow);flex-direction:column;flex:auto;align-items:flex-start;gap:.15rem;padding:.875rem 1.5rem;font-family:Departure Mono,monospace;font-size:.9rem;font-weight:600;transition:background .25s,border-color .25s,transform .25s;display:flex}.tip:hover{background:var(--frost-sheen), color-mix(in srgb, color-mix(in srgb, var(--tip-color,var(--primary)) 14%, var(--bg)) var(--frost-hover), transparent);border-color:var(--tip-color,var(--primary));transform:translateY(-2px)}.tip-name{align-items:center;display:flex}.tip-address{letter-spacing:.02em;color:color-mix(in srgb, var(--text) 75%, transparent);font-size:.7rem;font-weight:400;transition:color .25s}.tip:hover .tip-address{color:var(--text)}.tip-copy{border:1px solid color-mix(in srgb, var(--tip-color,var(--primary)) 35%, transparent);border-radius:var(--radius);background:color-mix(in srgb, var(--bg-raised) var(--frost), transparent);width:2.75rem;-webkit-backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));backdrop-filter:blur(var(--frost-blur)) saturate(var(--frost-sat));color:var(--tip-color,var(--primary));cursor:pointer;box-shadow:var(--frost-highlight), var(--frost-shadow);flex:none;place-items:center;transition:background .2s,border-color .2s,color .2s;display:grid}.tip-copy:hover{background:var(--tip-color,var(--primary));border-color:var(--tip-color,var(--primary));color:var(--bg)}.tip-icon{margin-right:.4rem;position:relative;top:1px}.tip-copied{z-index:10;color:var(--bg);background:var(--tip-color,var(--primary));border-radius:var(--radius);opacity:0;pointer-events:none;padding:.2rem .75rem;font-family:Departure Mono,monospace;font-size:.7rem;font-weight:600;transition:opacity .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tip-copied.show{opacity:1}.qr-dialog{width:min(92vw,360px);max-height:92vh;color:var(--text);background:0 0;border:none;margin:auto;padding:0;overflow:visible}.qr-dialog::backdrop{background:#000000a6}.qr-card{background:var(--bg);border:1px solid color-mix(in srgb, var(--tip-color,var(--primary)) 40%, transparent);border-radius:var(--radius);text-align:center;padding:1.5rem;position:relative;box-shadow:0 20px 50px #00000073}.qr-close{border-radius:var(--radius);width:1.9rem;height:1.9rem;color:var(--muted);cursor:pointer;background:0 0;border:none;place-items:center;font-size:1.35rem;line-height:1;transition:background .2s,color .2s;display:grid;position:absolute;top:.4rem;right:.5rem}.qr-close:hover{background:color-mix(in srgb, var(--text) 12%, transparent);color:var(--text)}.qr-title{color:var(--tip-color,var(--primary));justify-content:center;align-items:center;gap:.4rem;margin:0 0 1rem;font-family:Departure Mono,monospace;font-size:.9rem;font-weight:600;display:flex}.qr-code{border-radius:var(--radius);background:#fff;width:min(260px,68vw,42vh);margin:0 auto 1rem;padding:.75rem}.qr-code svg{width:100%;height:auto;display:block}.qr-loading{aspect-ratio:1;border-radius:var(--radius);background:linear-gradient(100deg, var(--bg-raised) 30%, var(--bg-strong) 50%, var(--bg-raised) 70%);background-size:200% 100%;animation:1.2s linear infinite qr-shimmer}@keyframes qr-shimmer{to{background-position:-200% 0}}.qr-address{word-break:break-all;color:var(--muted-strong);margin:0 0 1rem;font-family:monospace;font-size:.7rem;line-height:1.5}.qr-actions{gap:.5rem;display:flex}.qr-btn{border-radius:var(--radius);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.35rem;padding:.6rem .75rem;font-family:Departure Mono,monospace;font-size:.75rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.qr-btn--copy{border:1px solid color-mix(in srgb, var(--tip-color,var(--primary)) 45%, transparent);background:color-mix(in srgb, var(--tip-color,var(--primary)) 10%, transparent);color:var(--tip-color,var(--primary))}.qr-btn--copy:hover{background:color-mix(in srgb, var(--tip-color,var(--primary)) 22%, transparent)}.qr-btn--link{border:1px solid var(--tip-color,var(--primary));background:var(--tip-color,var(--primary));color:var(--bg)}.qr-btn--link:hover{filter:brightness(1.1)}@media (prefers-reduced-motion:no-preference){.qr-dialog[open] .qr-card{animation:.18s ease-out qr-in}}@keyframes qr-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}.container.error{text-align:center;max-width:480px;display:block}.container.error .link{margin-top:1.5rem;display:inline-block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}::selection{background:var(--primary);color:var(--bg)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 45%, transparent);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (width>=880px){.container{text-align:left;grid-template-columns:320px 1fr;grid-template-areas:"identity projects";align-items:start;gap:1.75rem 3rem;max-width:960px;display:grid}.identity{text-align:center;grid-area:identity;margin-bottom:0;position:sticky;top:2rem}.projects{grid-area:projects;align-self:stretch;display:flex}.links{flex:1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-auto-rows:1fr}.link-tags{justify-content:flex-start}}
