:root{color-scheme:dark;--bg:#070a12;--bg-2:#0d1220;--panel:#101522b8;--panel-strong:#0c101be6;--text:#e8ecf8;--muted:#8d96aa;--accent:#7df9d4;--accent-2:#8b5cf6;--warm:#f7c873;--border:#ffffff21;--shadow:#00000061;--danger:#ff4d8d;background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=ember]{--bg:#0d0807;--bg-2:#20110c;--panel:#28140eb8;--panel-strong:#170c09eb;--text:#fff1e8;--muted:#b59b8d;--accent:#ffb86b;--accent-2:#ff4d6d;--warm:#ffe08a;--border:#ffbe822e}:root[data-theme=mint]{--bg:#06100c;--bg-2:#0a1e18;--panel:#091f19b8;--panel-strong:#04100deb;--text:#eafff5;--muted:#8bb7a4;--accent:#9fffc8;--accent-2:#57d8ff;--warm:#d8ff84;--border:#9fffc82e}:root[data-theme=daylight]{color-scheme:light;--bg:#d9d3c6;--bg-2:#b9c2d5;--panel:#f5f1e8ad;--panel-strong:#f2ede2e6;--text:#172033;--muted:#596274;--accent:#2f6f8f;--accent-2:#7357a6;--warm:#a86f24;--border:#17203329;--shadow:#34374238}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--text);background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 28rem), radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--accent-2) 24%, transparent), transparent 22rem), linear-gradient(140deg, var(--bg), var(--bg-2));overflow-x:hidden}button,a{font:inherit}button{color:inherit}.site-shell{isolation:isolate;min-height:100svh;padding:24px;position:relative;overflow:hidden}.background{z-index:-2;pointer-events:none;position:absolute;inset:0}.background:before{content:"";background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.22;background-size:72px 72px;position:absolute;inset:-80px;transform:rotate(-4deg)scale(1.08);mask-image:radial-gradient(circle,#000,#0000 72%)}.orb{aspect-ratio:1;filter:blur(28px);opacity:.12;border-radius:999px;width:34vmax;position:absolute}.orb-one{background:var(--accent);top:-16vmax;right:-10vmax}.orb-two{background:var(--accent-2);bottom:-18vmax;left:-12vmax}.grain{opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;inset:0}.signal-map{opacity:.28;width:92%;height:86%;position:absolute;inset:7% 4%;overflow:visible}.signal-map path{fill:none;stroke:color-mix(in srgb, var(--accent) 42%, transparent);stroke-width:1.2px;stroke-dasharray:10 16;animation:32s linear infinite signalDrift}.signal-map path:nth-child(2){stroke:color-mix(in srgb, var(--accent-2) 38%, transparent)}.signal-map path:nth-child(3){stroke:color-mix(in srgb, var(--warm) 32%, transparent)}.signal-map circle{fill:var(--accent);opacity:.68}.signal-map circle:nth-of-type(2n){fill:var(--accent-2)}.ambient-card{border:1px solid color-mix(in srgb, var(--border) 72%, var(--accent) 28%);background:color-mix(in srgb, var(--panel) 78%, transparent);min-width:116px;box-shadow:0 12px 42px var(--shadow), inset 0 1px 0 #ffffff14;color:var(--text);text-align:left;opacity:.72;border-radius:20px;gap:4px;padding:13px 15px;animation:18s ease-in-out infinite floatCard;display:grid;position:absolute}.ambient-card span{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.64rem}.ambient-card strong{letter-spacing:-.03em;font-size:1.02rem}.ambient-card-one{top:24%;left:13%}.ambient-card-two{animation-delay:-2.4s;top:26%;right:12%}.ambient-card-three{animation-delay:-5.1s;bottom:18%;right:16%}.pixel-cluster{opacity:.3;background-image:radial-gradient(circle, var(--accent) 1.5px, transparent 2px);background-size:18px 18px;width:130px;height:130px;animation:26s ease-in-out infinite pixelFloat;position:absolute;mask-image:radial-gradient(circle,#000,#0000 68%)}.pixel-cluster-one{bottom:15%;left:24%}.pixel-cluster-two{background-image:radial-gradient(circle, var(--accent-2) 1.5px, transparent 2px);animation-delay:-9s;top:12%;right:25%}.topbar,.footer-note{width:min(1120px,100%);color:var(--muted);letter-spacing:.02em;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;font-size:.86rem;display:flex}.brand-chip,.signal-chip,.theme-panel,.app-button,.app-window{border:1px solid var(--border);background:var(--panel);box-shadow:0 14px 48px var(--shadow), inset 0 1px 0 #ffffff14}.brand-chip,.signal-chip{min-height:38px;color:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:9px;padding:0 14px;text-decoration:none;display:inline-flex}.status-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 18px var(--accent);border-radius:999px}.signal-chip{position:relative;overflow:hidden}.signal-chip:after{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 16px var(--accent);border-radius:999px}.site-shell[data-signal=focus] .signal-map{opacity:.18}.site-shell[data-signal=focus] .signal-map path,.site-shell[data-signal=focus] .ambient-card,.site-shell[data-signal=focus] .pixel-cluster{animation:none}.site-shell[data-signal=focus] .ambient-card{opacity:.5}.site-shell[data-signal=focus] .pixel-cluster{opacity:.16}.site-shell[data-signal=focus] .core-light{background:radial-gradient(circle, color-mix(in srgb, var(--warm) 24%, transparent), transparent 64%)}.site-shell[data-signal=drift] .signal-map{opacity:.52}.site-shell[data-signal=drift] .signal-map path{animation-duration:14s}.site-shell[data-signal=drift] .ambient-card{opacity:.82;animation-duration:10s}.site-shell[data-signal=drift] .pixel-cluster{opacity:.38;animation-duration:12s}.hero{text-align:center;place-items:center;width:min(1120px,100%);min-height:calc(100svh - 144px);margin:0 auto;padding:44px 0 28px;display:grid}.intro-copy{z-index:2;max-width:720px;margin:0 auto -20px;position:relative}.kicker,.window-eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.2em;margin:0 0 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem}h1{letter-spacing:-.095em;text-wrap:balance;text-shadow:0 0 44px color-mix(in srgb, var(--accent) 26%, transparent);margin:0;font-size:clamp(3.4rem,10vw,8.2rem);line-height:.86}.subtitle{max-width:620px;color:var(--muted);margin:24px auto 0;font-size:clamp(1rem,2vw,1.18rem);line-height:1.7}.core-stage{perspective:1100px;--tilt-x:0deg;--tilt-y:0deg;place-items:center;width:min(560px,92vw);height:min(560px,92vw);display:grid;position:relative}.signal-core-wrap{aspect-ratio:1;width:min(460px,82vw);transform-style:preserve-3d;transform:rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .18s;position:relative}.signal-core{cursor:pointer;transform-style:preserve-3d;background:0 0;border:0;border-radius:999px;position:absolute;inset:15%}.signal-core:before{content:"";background:radial-gradient(circle at 36% 28%, #ffffffe6, transparent 9%), radial-gradient(circle at 52% 48%, var(--accent), transparent 32%), linear-gradient(145deg, color-mix(in srgb, var(--accent) 54%, transparent), color-mix(in srgb, var(--accent-2) 58%, transparent));box-shadow:0 0 26px color-mix(in srgb, var(--accent) 62%, transparent), 0 0 96px color-mix(in srgb, var(--accent-2) 38%, transparent), inset 0 0 28px #ffffff38;border-radius:38% 62% 48% 52%/45% 38% 62% 55%;animation:none;position:absolute;inset:13%}.signal-core:after{content:"";background:var(--text);box-shadow:0 0 32px var(--text), 0 0 84px var(--accent);border-radius:999px;position:absolute;inset:35%}:root[data-theme=daylight] .signal-core:before{background:radial-gradient(circle at 36% 28%,#fffffff5,#0000 11%),radial-gradient(circle at 52% 48%,#f2d08a,#0000 34%),linear-gradient(145deg,#7fb8c9,#8d7bb8 54%,#d9a857);box-shadow:0 0 28px #2f6f8f47,0 0 90px #7357a633,inset 0 0 34px #ffffff80}:root[data-theme=daylight] .signal-core:after{background:#fff4d8;box-shadow:0 0 28px #fff4d8e6,0 0 76px #2f6f8f73}:root[data-theme=daylight] .ring{border-color:#2f6f8f5c;box-shadow:0 0 18px #2f6f8f33}:root[data-theme=daylight] .ring-two{border-color:#7357a657}:root[data-theme=daylight] .core-label{color:#24344a;opacity:.62}.core-burst{border:1px solid color-mix(in srgb, var(--accent) 68%, transparent);opacity:0;pointer-events:none;box-shadow:0 0 26px color-mix(in srgb, var(--accent) 28%, transparent);border-radius:999px;position:absolute;inset:-4%}.signal-core.has-pulsed .core-burst{animation:1.05s cubic-bezier(.16,1,.3,1) both coreRipple}.signal-core.has-pulsed:after{animation:.52s ease-out both dotPop}.signal-core:focus-visible,.app-button:focus-visible,.theme-options button:focus-visible,.window-titlebar button:focus-visible{outline:2px solid var(--warm);outline-offset:4px}.ring{border:1px solid color-mix(in srgb, var(--accent) 44%, transparent);box-shadow:0 0 18px color-mix(in srgb, var(--accent) 18%, transparent);border-radius:50%;position:absolute;inset:5%}.ring-one{animation:18s linear infinite spin;transform:rotateX(67deg)rotate(12deg)}.ring-two{border-color:color-mix(in srgb, var(--accent-2) 46%, transparent);animation:24s linear infinite spinReverse;inset:0;transform:rotateX(72deg)rotateY(38deg)}.ring-three{border-style:dashed;animation:14s linear infinite spin;inset:18%;transform:rotateY(72deg)rotate(45deg)}.core-light{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 22%, transparent), transparent 64%);border-radius:999px;animation:4s ease-in-out infinite breathe;position:absolute;inset:-14%}.core-label{color:var(--text);letter-spacing:.18em;text-transform:uppercase;opacity:.7;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;position:absolute;bottom:15%;left:50%;transform:translate(-50%)}.app-dock{z-index:12;gap:14px;display:grid;position:fixed;top:50%;left:max(18px,50vw - 620px);transform:translateY(-50%)}.dock-label{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;opacity:.72;justify-self:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem}.app-button{cursor:pointer;width:86px;min-height:88px;color:var(--muted);border-radius:24px;justify-items:center;gap:8px;padding:11px 9px 10px;font-size:.74rem;transition:transform .16s,border-color .16s,background .16s,color .16s;display:grid}.app-button:hover,.app-button.is-active{color:var(--text);border-color:color-mix(in srgb, var(--accent) 64%, var(--border));background:color-mix(in srgb, var(--panel) 82%, var(--accent) 18%);transform:translate(4px)translateY(-2px)}.app-glyph{background:radial-gradient(circle at 35% 25%, #ffffffb8, transparent 22%), linear-gradient(135deg, var(--accent), var(--accent-2));width:42px;height:42px;box-shadow:0 0 18px color-mix(in srgb, var(--accent) 50%, transparent);color:color-mix(in srgb, var(--bg) 72%, black);border-radius:14px;place-items:center;font-size:1.18rem;font-weight:800;display:grid}.glyph-about{background:radial-gradient(circle at 50% 44%, #ffffffdb, transparent 17%), conic-gradient(from 210deg, var(--accent), var(--accent-2), var(--warm), var(--accent));letter-spacing:-.08em;border-radius:999px;font-size:.86rem}.glyph-projects{background:linear-gradient(90deg, #ffffffa3 1px, transparent 1px), linear-gradient(#ffffff7a 1px, transparent 1px), linear-gradient(135deg, var(--accent-2), var(--accent));background-size:13px 13px,13px 13px,auto;border-radius:12px}.glyph-now{background:radial-gradient(circle at 34% 30%, #ffffffd1, transparent 18%), radial-gradient(circle at 68% 72%, var(--warm), transparent 22%), linear-gradient(135deg, var(--accent), var(--accent-2));border-radius:9px 18px}.glyph-contact{background:linear-gradient(145deg, transparent 46%, #ffffffb8 47% 53%, transparent 54%), linear-gradient(35deg, transparent 46%, #ffffff8f 47% 53%, transparent 54%), linear-gradient(135deg, var(--warm), var(--accent-2));border-radius:12px 12px 18px 18px}.theme-panel{width:min(680px,100%);color:var(--muted);text-transform:uppercase;letter-spacing:.14em;border-radius:24px;gap:12px;margin-top:24px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;display:grid}.theme-options{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.theme-options button{min-height:38px;color:var(--text);cursor:pointer;background:#ffffff0a;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;font-size:.72rem;transition:border-color .16s,transform .16s,background .16s;display:flex}.theme-options button:hover,.theme-options button.is-selected{border-color:var(--border);background:color-mix(in srgb, var(--accent) 16%, transparent);transform:translateY(-2px)}.theme-options span{border-radius:999px;width:10px;height:10px;box-shadow:0 0 16px}.window-layer{z-index:20;pointer-events:none;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.app-window{pointer-events:auto;text-align:left;border-radius:24px;width:min(520px,100vw - 32px);transition:box-shadow .16s,border-color .16s;animation:.22s both windowIn;position:fixed;top:52%;left:50%;overflow:hidden}.app-window.is-active{border-color:color-mix(in srgb, var(--accent) 54%, var(--border));box-shadow:0 20px 64px var(--shadow), 0 0 24px color-mix(in srgb, var(--accent) 14%, transparent), inset 0 1px 0 #ffffff14}.window-titlebar{border-bottom:1px solid var(--border);min-height:48px;color:var(--muted);cursor:grab;user-select:none;background:linear-gradient(#ffffff14,#0000);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:0 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.84rem;display:grid}.window-titlebar:active{cursor:grabbing}.window-lights{gap:7px;display:flex}.window-lights span,.window-titlebar button{border-radius:999px;width:12px;height:12px}.window-lights span:first-child{background:#ff5f57}.window-lights span:nth-child(2){background:#ffbd2e}.window-lights span:nth-child(3){background:#28c840}.window-titlebar button{border:1px solid var(--border);width:30px;height:30px;color:var(--text);cursor:pointer;background:#ffffff0a;place-items:center;display:grid}.window-body{color:var(--muted);padding:26px;line-height:1.75}.window-body strong{color:var(--text)}.window-body p{margin:0 0 16px}.window-body ul{margin:8px 0 0;padding-left:20px}.link-grid{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.link-grid span{border:1px solid var(--border);color:var(--text);background:#ffffff0a;border-radius:999px;padding:8px 12px}.footer-note{padding-bottom:4px;position:relative}kbd{border:1px solid var(--border);color:var(--text);background:#ffffff0f;border-bottom-width:2px;border-radius:7px;padding:1px 6px}@keyframes spin{to{rotate:360deg}}@keyframes spinReverse{to{rotate:-360deg}}@keyframes breathe{50%{opacity:.7;transform:scale(1.08)}}@keyframes morph{0%,to{border-radius:38% 62% 48% 52%/45% 38% 62% 55%;transform:rotate(0)}50%{border-radius:55% 45% 62% 38%/42% 58%;transform:rotate(8deg)}}@keyframes signalDrift{to{stroke-dashoffset:-260px}}@keyframes coreRipple{0%{opacity:0;transform:scale(.72)}18%{opacity:.95}to{opacity:0;transform:scale(1.65)}}@keyframes dotPop{0%{transform:scale(1)}35%{transform:scale(1.45)}to{transform:scale(1)}}@keyframes nodePulse{0%,to{opacity:.42;transform:scale(1)}50%{opacity:.9;transform:scale(1.55)}}@keyframes floatCard{0%,to{transform:translate(0,0)rotate(-1deg)}50%{transform:translateY(-14px)rotate(1deg)}}@keyframes pixelFloat{0%,to{transform:translate(0,0)rotate(0)}50%{transform:translate(12px,-18px)rotate(4deg)}}@keyframes windowIn{0%{opacity:0}to{opacity:1}}@media (width<=720px){.site-shell{padding:16px}.topbar,.footer-note{flex-direction:column;align-items:stretch}.signal-chip{display:none}.signal-map{opacity:.2;width:140%;inset:12% -20%}.ambient-card{display:none}.pixel-cluster{opacity:.18}.hero{min-height:calc(100svh - 250px);padding-top:36px}.app-dock{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;margin:18px auto 0;position:relative;top:auto;left:auto;transform:none}.dock-label{grid-column:1/-1}.app-button{border-radius:20px;width:auto;min-height:76px;font-size:.68rem}.app-button:hover,.app-button.is-active{transform:translateY(-2px)}.app-glyph{width:36px;height:36px}.intro-copy{margin-bottom:-8px}h1{font-size:clamp(3rem,18vw,5rem)}.core-stage{height:430px}.signal-core-wrap{width:min(360px,90vw)}.theme-options{grid-template-columns:repeat(2,1fr)}.window-layer{align-items:end;padding:16px}.app-window{border-radius:22px;width:auto;inset:auto 16px 16px;transform:none!important}.window-titlebar{cursor:default}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.signal-core-wrap{transform:none!important}}
