:root{--bg: #0b0d10;--panel: rgba(255, 255, 255, .06);--panel2: rgba(255, 255, 255, .09);--text: rgba(255, 255, 255, .92);--muted: rgba(255, 255, 255, .66);--line: rgba(255, 255, 255, .1);--shadow: 0 16px 50px rgba(0, 0, 0, .45);--r: 18px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;color:var(--text);background:radial-gradient(1200px 600px at 20% 10%,rgba(91,140,255,.18),transparent 60%),radial-gradient(900px 500px at 80% 20%,rgba(255,120,120,.14),transparent 55%),var(--bg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}a{color:inherit;text-decoration:none}.wrap{width:min(1100px,calc(100% - 40px));margin:0 auto;padding:42px 0 60px}.hero{padding:28px 0}.brand{font-weight:700;letter-spacing:.6px;opacity:.95;margin-bottom:18px}.title{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.1}.subtitle{margin:10px 0 0;color:var(--muted);max-width:62ch;font-size:15px;line-height:1.6}.heroRow{display:flex;gap:10px;margin-top:18px}.btn{border:1px solid var(--line);background:#ffffff14;padding:10px 14px;border-radius:14px;box-shadow:var(--shadow);display:inline-flex;align-items:center;gap:8px}.btn:hover{background:#ffffff1f}.btn.ghost{background:transparent;box-shadow:none}.grid{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media(max-width:980px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.grid{grid-template-columns:1fr}}.cardLink{display:block}.card{border:1px solid var(--line);background:linear-gradient(180deg,var(--panel),rgba(255,255,255,.04));border-radius:var(--r);padding:14px 14px 12px;box-shadow:var(--shadow);min-height:132px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .08s ease,border-color .08s ease}.cardLink:hover .card{transform:translateY(-2px);border-color:#ffffff2e}.cardTitleRow{display:flex;align-items:center;justify-content:space-between;gap:10px}.cardTitle{margin:0;font-size:16px}.cardDesc{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.pill{font-size:11px;padding:5px 8px;border-radius:999px;border:1px solid var(--line);background:#ffffff14;color:#ffffffdb}.tagRow{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.tag{font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:#ffffff0d;color:#ffffffc7}.footer{margin-top:28px;color:#ffffff8c;display:flex;gap:10px;align-items:center}.dot{opacity:.5}.projectHeader{padding:10px 0 22px}.back{color:#ffffffbf}.back:hover{color:#fffffff2}.projectTitle{margin:12px 0 0;font-size:34px}.projectDesc{margin:10px 0 0;color:var(--muted);line-height:1.6;max-width:70ch}.projectBody{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:900px){.projectBody{grid-template-columns:1fr}}.projectBody{align-items:start}.panel{border:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),rgba(255,255,255,.04));border-radius:var(--r);padding:14px;box-shadow:var(--shadow)}.panel h2{margin:0 0 10px;font-size:14px;opacity:.92}.panel p{margin:0;color:var(--muted);line-height:1.6;font-size:13px}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono}.section{margin-top:18px}.sectionHead{display:flex;align-items:center;gap:12px;margin:10px 0}.sectionTitle{margin:0;font-size:13px;letter-spacing:.6px;text-transform:uppercase;color:#ffffffc7}.sectionLine{height:1px;flex:1;background:#ffffff1a;border-radius:999px}.playBtn{align-self:flex-end;margin-top:12px;border:1px solid var(--line);background:#ffffff0f;color:#ffffffeb;padding:8px 14px;border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s ease,transform .15s ease,color .15s ease}.playBtn:hover{background:#ffffff24;transform:translateY(-1px)}.pill.live{border-color:#ff5a5a73;background:linear-gradient(180deg,#ff5a5a40,#ff5a5a1f);color:#fff;box-shadow:0 0 0 1px #ff5a5a40,0 0 18px #ff5a5a40}.pill.live:before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#ff5a5a;box-shadow:0 0 8px #ff5a5ae6;animation:livePulse 1.6s ease-in-out infinite}@keyframes livePulse{0%{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1)}to{opacity:.4;transform:scale(.9)}}.termOverlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);display:flex;align-items:flex-start;justify-content:center;padding-top:84px;z-index:9999}.term{width:min(900px,calc(100% - 28px));border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,#ffffff1f,#ffffff0d);box-shadow:var(--shadow);padding:14px 14px 12px}.termOut{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono;font-size:12px;color:#ffffffdb;max-height:260px;overflow:auto;padding-bottom:10px}.termLine{padding:2px 0}.termRow{display:flex;align-items:center;gap:8px;border-top:1px solid rgba(255,255,255,.1);padding-top:10px}.termPrompt{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono;color:#ffffffb8}.termInput{flex:1;background:transparent;border:0;outline:none;color:#ffffffeb;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono;font-size:12px}.termEggZone{position:fixed;left:10px;bottom:10px;width:72px;height:72px;z-index:9998;display:flex;align-items:flex-end;justify-content:flex-end}.termEggBtn{opacity:0;pointer-events:none;transform:translateY(6px) scale(.98);width:38px;height:38px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#ffffffbf;box-shadow:0 14px 40px #00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:opacity .18s ease,transform .18s ease,background .18s ease,color .18s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.termEggZone:hover .termEggBtn{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.termEggBtn:hover{background:#ffffff1f;color:#ffffffeb}.termEggBtn:after{content:attr(data-tip);position:absolute;bottom:110%;left:0;padding:6px 10px;border-radius:8px;font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:nowrap;background:#000000bf;color:#ffffffe6;border:1px solid rgba(255,255,255,.15);opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .15s ease .35s,transform .15s ease .35s}.termEggZone:hover .termEggBtn:hover:after{opacity:1;transform:translateY(0)}.expandBtn{margin-left:auto;background:transparent;border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:11px;color:var(--muted);cursor:pointer}.expandBtn:hover{color:var(--text);background:#ffffff14}.featureList{margin:10px 0 0;padding-left:18px;font-size:13px;color:var(--muted);line-height:1.6}.projectTitleRow{display:flex;align-items:center;gap:12px;margin-top:12px}.playBtnInline{padding:6px 14px;font-size:12px}.panelAcc{padding:0;overflow:hidden}.panelHead{width:100%;display:flex;align-items:center;gap:12px;background:transparent;border:0;cursor:pointer;padding:14px;color:inherit;text-align:left}.panelTitle{font-size:14px;opacity:.92}.panelContent{padding:0 14px 14px}.aboutText{margin:0;color:var(--muted);line-height:1.6;font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.aboutText.open{-webkit-line-clamp:unset;overflow:visible}.featureList{margin:0;padding-left:18px;color:var(--muted);line-height:1.6;font-size:13px}.featureList li{margin-bottom:6px}.moreHint{margin-top:8px;font-size:12px;color:#ffffff8c}.chev{position:relative;width:22px;height:14px;margin-left:auto;flex-shrink:0;opacity:.75;transition:transform .18s ease,opacity .18s ease}.chev:before,.chev:after{content:"";position:absolute;top:2px;width:14px;height:4px;background:#ffffffd9;border-radius:999px}.chev:before{left:0;transform:rotate(45deg)}.chev:after{right:0;transform:rotate(-45deg)}.panelHead:hover .chev{opacity:1}.chev.open{transform:rotate(180deg)}.aboutText{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important}.aboutText.open{-webkit-line-clamp:unset!important;overflow:visible!important}.lemonWrap{position:fixed;z-index:9997;pointer-events:none;image-rendering:pixelated}.lemonSprite{image-rendering:pixelated;background-repeat:no-repeat;background-position:0 0;background-size:calc(var(--frame-w) * var(--frames)) auto;animation:lemonWalk calc(1s / var(--fps) * var(--frames)) steps(var(--frames)) infinite;will-change:background-position,transform}.imgModalOverlay{position:fixed;inset:0;z-index:10000;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:22px}.imgModalCard{position:relative;width:min(760px,100%);border-radius:18px;border:1px solid rgba(255,255,255,.14);background:#0c0e128c;box-shadow:0 30px 100px #000000a6;overflow:hidden}.imgModalImg{display:block;width:100%;height:auto}.imgModalClose{position:absolute;top:10px;right:10px;border:1px solid rgba(255,255,255,.14);background:#ffffff14;color:#ffffffe6;border-radius:999px;padding:8px 10px;cursor:pointer}.imgModalClose:hover{background:#ffffff24}.lemonWrap{position:fixed;left:0;top:0;z-index:9997;will-change:transform;image-rendering:pixelated}.lemonFlip{width:100%;height:100%;transform-origin:center;image-rendering:pixelated}.lemonSprite{image-rendering:pixelated;background-repeat:no-repeat;background-position-y:0px;animation:lemonSlice calc(1s * var(--dur)) steps(var(--frames)) infinite}@keyframes lemonSlice{0%{background-position-x:calc(var(--frame-w) * var(--start) * -1)}to{background-position-x:calc(var(--frame-w) * (var(--start) + var(--frames)) * -1)}}.lemonWrap{position:fixed;left:0;top:0;z-index:9997;will-change:transform;image-rendering:pixelated;pointer-events:none}.lemonFlip{width:100%;height:100%;transform-origin:center}.lemonSprite{image-rendering:pixelated;background-repeat:no-repeat;animation:lemonWalk calc(1s / var(--fps) * var(--frames)) steps(var(--frames)) infinite}@keyframes lemonWalk{0%{background-position:0 0}to{background-position:calc(var(--frame-w) * var(--frames) * -1) 0}}
