.rudra-os{--void:var(--color-paper);--panel:oklch(99.1% var(--tint-0) var(--hue-n)/0.74);--panel-2:oklch(97.1% var(--tint-1) var(--hue-n)/0.66);--panel-solid:oklch(99.1% var(--tint-0) var(--hue-n));--bar:oklch(99.1% var(--tint-0) var(--hue-n)/0.62);--edge:oklch(21.6% var(--tint-1) var(--hue-n)/0.10);--edge-hi:oklch(21.6% var(--tint-1) var(--hue-n)/0.20);--ink:var(--color-ink);--ink-2:var(--color-ink-2);--ink-3:var(--color-ink-3);--violet:var(--color-accent);--cyan:var(--color-accent-2);--amber:var(--color-signal);--rose:var(--color-danger);--grad:linear-gradient(135deg,var(--color-accent),var(--color-accent-2));--shadow:0 28px 60px -22px oklch(21.6% var(--tint-1) var(--hue-n)/0.28),0 8px 20px -12px oklch(21.6% var(--tint-1) var(--hue-n)/0.20);--mono:var(--font-mono);--os:var(--font-display);--ui:var(--font-body);position:fixed;inset:0;z-index:900;overflow:hidden;background:var(--void);color:var(--ink);font-family:var(--ui);-webkit-font-smoothing:antialiased;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}[data-theme=dark] .rudra-os{--panel:oklch(19% calc(var(--tint-1) * 1.7) var(--hue-n)/0.72);--panel-2:oklch(24% calc(var(--tint-1) * 1.6) var(--hue-n)/0.62);--panel-solid:oklch(19% calc(var(--tint-1) * 1.7) var(--hue-n));--bar:oklch(15% calc(var(--tint-1) * 1.6) var(--hue-n)/0.60);--edge:oklch(94% var(--tint-0) var(--hue-n)/0.09);--edge-hi:oklch(94% var(--tint-0) var(--hue-n)/0.17);--shadow:0 28px 70px -18px oklch(8% 0.01 var(--hue-n)/0.72),0 8px 22px -10px oklch(8% 0.01 var(--hue-n)/0.55)}.os-active .foot,.os-active .mast{display:none!important}.os-active,.os-active body{overflow:hidden}.os-hero{position:absolute;left:30px;bottom:104px;z-index:2;max-width:min(52ch,calc(50vw - 60px));pointer-events:none}.os-hero a{pointer-events:auto}.os-hero-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}.os-hero-name{font-family:var(--os);font-size:clamp(28px,3.4vw,44px);font-weight:600;line-height:1.04;letter-spacing:-.03em;color:var(--ink);margin:0 0 12px}.os-hero-bio{font-size:13.5px;line-height:1.62;color:var(--ink-2);margin:0 0 14px}.os-hero-links{display:flex;flex-wrap:wrap;gap:14px;margin:0}.os-hero-links a{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-2);text-decoration:none;border-bottom:1px solid var(--edge-hi);padding-bottom:2px;transition:color .2s ease,border-color .2s ease}.os-hero-links a:hover{color:var(--violet);border-color:var(--violet)}.os-menu-switch{flex:0 0 auto;display:inline-flex;align-items:center;white-space:nowrap;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-2);text-decoration:none;padding:3px 10px;border:1px solid var(--edge-hi);border-radius:999px;margin-right:6px;transition:color .2s ease,border-color .2s ease}.os-menu-switch .os-switch-long{display:inline}.os-menu-switch .os-switch-short{display:none}.os-menu-switch:hover{color:var(--ink);border-color:var(--violet)}.os-bg{inset:0;z-index:0;overflow:hidden}.os-bg,.os-blob{position:absolute}.os-blob{width:58vw;height:58vw;border-radius:50%;filter:blur(110px);will-change:transform}.os-blob.a{background:radial-gradient(circle,oklch(57.9% var(--chroma-a) var(--hue-a)/.34),transparent 62%);top:-18%;left:-12%;animation:drift1 34s ease-in-out infinite}.os-blob.b{background:radial-gradient(circle,oklch(66% calc(var(--chroma-a) * .88) var(--hue-a2)/.26),transparent 62%);bottom:-26%;right:-14%;animation:drift2 40s ease-in-out infinite}.os-blob.c{background:radial-gradient(circle,oklch(72% calc(var(--chroma-a) * .7) calc(var(--hue-a) - 12)/.18),transparent 62%);top:30%;left:52%;animation:drift1 46s ease-in-out infinite reverse}.os-bg:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");background-size:240px 240px;opacity:.5;pointer-events:none}@keyframes drift1{0%,to{transform:translate(0) scale(1)}50%{transform:translate(5vw,3vh) scale(1.1)}}@keyframes drift2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-4vw,-4vh) scale(1.07)}}.os-contrib{position:absolute;right:28px;bottom:108px;display:flex;flex-direction:column;gap:8px;align-items:flex-end;opacity:.55;-webkit-mask-image:linear-gradient(270deg,#000 70%,transparent);mask-image:linear-gradient(270deg,#000 70%,transparent);pointer-events:none;max-width:44vw;overflow:hidden}.os-contrib rect.lv0{fill:hsla(0,0%,100%,.06)}.os-contrib rect.lv1{fill:oklch(57.9% var(--chroma-a) var(--hue-a)/.3)}.os-contrib rect.lv2{fill:oklch(57.9% var(--chroma-a) var(--hue-a)/.55)}.os-contrib rect.lv3{fill:oklch(66% calc(var(--chroma-a) * .88) var(--hue-a2)/.6)}.os-contrib rect.lv4{fill:oklch(66% calc(var(--chroma-a) * .88) var(--hue-a2)/.95)}[data-theme=light] .os-contrib rect.lv0{fill:oklch(21.6% var(--tint-1) var(--hue-n)/.08)}[data-theme=light] .os-contrib rect.lv1{fill:oklch(57.9% var(--chroma-a) var(--hue-a)/.3)}[data-theme=light] .os-contrib rect.lv2{fill:oklch(57.9% var(--chroma-a) var(--hue-a)/.55)}[data-theme=light] .os-contrib rect.lv3{fill:oklch(66% calc(var(--chroma-a) * .88) var(--hue-a2)/.6)}[data-theme=light] .os-contrib rect.lv4{fill:oklch(66% calc(var(--chroma-a) * .88) var(--hue-a2)/.95)}.os-contrib-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--ink-3)}@media (max-width:960px){.os-contrib{display:none}}.os-menubar{position:absolute;top:0;left:0;right:0;height:36px;z-index:500;display:flex;align-items:center;gap:4px;padding:0 12px;background:var(--bar);backdrop-filter:blur(30px) saturate(1.8);-webkit-backdrop-filter:blur(30px) saturate(1.8);border-bottom:1px solid var(--edge);font-size:12.5px}.os-brand{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;font-weight:650;font-size:13px;letter-spacing:-.01em;color:var(--ink);margin-right:10px}.os-brand-mark{width:15px;height:15px;border-radius:4.5px;background:var(--grad);box-shadow:0 0 10px oklch(57.9% var(--chroma-a) var(--hue-a)/.55)}.os-menu-item{color:var(--ink-2);padding:4px 9px;border-radius:5px;border:none;background:none;font-size:12.5px;letter-spacing:-.005em}.os-menu-item:hover{color:var(--ink);background:var(--edge)}.os-menubar-spacer{flex:1 1}.os-status{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);padding:2px 10px 2px 8px;border:1px solid var(--edge);border-radius:999px;font-family:var(--mono);font-size:11px;text-transform:lowercase;letter-spacing:.04em;margin-right:6px}.os-status-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 7px var(--cyan)}.os-status.running .os-status-dot{background:var(--amber);box-shadow:0 0 9px var(--amber);animation:pulse .8s ease-in-out infinite}.os-status.running{color:var(--amber);border-color:oklch(58% .13 78/.4)}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.os-clock{color:var(--ink);font-size:12.5px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;white-space:pre;margin-left:6px}.os-mbtn{color:var(--ink-2);background:none;border:none;border-radius:5px;padding:4px 8px;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.os-mbtn:hover{color:var(--ink);background:var(--edge)}.os-lang{position:relative}.os-lang-menu{position:absolute;top:28px;right:0;background:var(--panel);backdrop-filter:blur(36px) saturate(1.8);-webkit-backdrop-filter:blur(36px) saturate(1.8);border:1px solid var(--edge-hi);border-radius:10px;padding:5px;display:flex;flex-direction:column;gap:1px;min-width:120px;box-shadow:var(--shadow);z-index:600}.os-lang-menu a{color:var(--ink-2);padding:6px 10px;border-radius:6px;font-size:12.5px;display:flex;justify-content:space-between;gap:12px;text-decoration:none}.os-lang-menu a:hover{background:var(--edge);color:var(--ink)}.os-lang-menu a.active{color:var(--violet)}.os-surface{position:absolute;inset:36px 0 0 0;z-index:10}.os-window{position:absolute;display:flex;flex-direction:column;background:var(--panel);backdrop-filter:blur(44px) saturate(1.9);-webkit-backdrop-filter:blur(44px) saturate(1.9);border:1px solid var(--edge-hi);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;min-width:280px;min-height:160px;animation:winIn .32s cubic-bezier(.16,1,.3,1) backwards}@keyframes winIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}.os-window.closing{animation:winOut .18s ease forwards}@keyframes winOut{to{opacity:0;transform:scale(.95)}}.os-window.min{display:none}.os-window.focused{border-color:hsla(0,0%,100%,.22);box-shadow:0 36px 90px -20px rgba(0,0,0,.75),0 10px 26px -12px rgba(0,0,0,.55)}[data-theme=light] .os-window.focused{box-shadow:0 36px 80px -24px oklch(21.6% var(--tint-1) var(--hue-n)/.3),0 10px 24px -14px oklch(21.6% var(--tint-1) var(--hue-n)/.22)}.os-window.max{border-radius:0}.os-window:not(.live){transition:left .24s cubic-bezier(.2,.8,.2,1),top .24s cubic-bezier(.2,.8,.2,1),width .24s cubic-bezier(.2,.8,.2,1),height .24s cubic-bezier(.2,.8,.2,1),transform .42s cubic-bezier(.2,.8,.2,1)}.os-window.minimizing{animation:genie .33s cubic-bezier(.55,-.02,.85,.4) forwards;pointer-events:none}@keyframes genie{to{transform:translate(var(--min-tx,0),var(--min-ty,320px)) scale(.04);opacity:0}}.os-window.restoring{animation:ungenie .32s cubic-bezier(.16,1,.3,1)}@keyframes ungenie{0%{transform:translate(var(--min-tx,0),var(--min-ty,320px)) scale(.04);opacity:0}}.rudra-os .os-bg{transition:filter .4s ease}.rudra-os.ov .os-bg{filter:brightness(.55) saturate(.85)}.os-window.ov{pointer-events:none}.os-ov-layer{position:absolute;inset:0;z-index:650;animation:bootFade .2s ease both}.os-ov-hit{position:absolute;background:transparent;border:none;border-radius:16px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:2px}.os-ov-hit:hover{background:oklch(57.9% var(--chroma-a) var(--hue-a)/.07);box-shadow:inset 0 0 0 1.5px oklch(57.9% var(--chroma-a) var(--hue-a)/.45)}.os-ov-label{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:500;color:var(--ink);background:var(--panel-solid);border:1px solid var(--edge-hi);border-radius:7px;padding:4px 12px;max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 4px 14px rgba(0,0,0,.3)}.os-ov-label-ico{color:var(--violet);font-size:11px}.os-snap-preview{position:absolute;z-index:5;background:oklch(57.9% var(--chroma-a) var(--hue-a)/.13);border:1.5px solid oklch(57.9% var(--chroma-a) var(--hue-a)/.5);border-radius:14px;pointer-events:none;animation:snapIn .16s ease both}@keyframes snapIn{0%{opacity:0;transform:scale(.99)}to{opacity:1}}.os-snap-preview.left{left:10px;top:10px;bottom:10px;width:calc(50% - 15px)}.os-snap-preview.right{right:10px;top:10px;bottom:10px;width:calc(50% - 15px)}.os-snap-preview.top{inset:8px}.os-partner{position:absolute;z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;border:1.5px dashed var(--edge-hi);border-radius:14px;background:rgba(10,11,20,.3);backdrop-filter:blur(7px) saturate(1.2);-webkit-backdrop-filter:blur(7px) saturate(1.2);animation:snapIn .2s ease both}[data-theme=light] .os-partner{background:oklch(97.1% var(--tint-1) var(--hue-n)/.4)}.os-partner.left{left:10px}.os-partner.left,.os-partner.right{top:10px;bottom:10px;width:calc(50% - 15px)}.os-partner.right{right:10px}.os-partner-label{font-size:13px;font-weight:550;color:var(--ink);letter-spacing:-.005em}.os-partner-grid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:92%;max-height:60%;overflow:auto}.os-partner-card{display:flex;flex-direction:column;align-items:center;gap:9px;background:var(--panel-2);border:1px solid var(--edge-hi);border-radius:13px;padding:14px 16px 12px;min-width:110px;max-width:156px;transition:transform .16s cubic-bezier(.16,1,.3,1),border-color .16s}.os-partner-card:hover{transform:translateY(-4px);border-color:var(--violet)}.os-partner-ico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;color:oklch(99.1% var(--tint-0) var(--hue-n));background:var(--grad);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.25),0 3px 9px rgba(0,0,0,.35);text-shadow:0 1px 3px rgba(0,0,0,.35)}.os-partner-t{font-size:11.5px;color:var(--ink-2);max-width:128px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.os-partner-hint{font-family:var(--mono);font-size:10.5px;color:var(--ink-3)}.os-titlebar{position:relative;height:38px;flex-shrink:0;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--edge);background:linear-gradient(hsla(0,0%,100%,.04),transparent);cursor:-webkit-grab;cursor:grab;touch-action:none}.os-titlebar:active{cursor:-webkit-grabbing;cursor:grabbing}.os-lights{display:flex;gap:8px;z-index:2}.os-light{width:12px;height:12px;border-radius:50%;border:none;padding:0;position:relative}.os-light:before{content:"";position:absolute;inset:-4px;border-radius:50%}.os-light.red{background:#ff5f57}.os-light.yellow{background:#febc2e}.os-light.green{background:#28c840}.os-window:not(.focused) .os-light{background:var(--ink-3);opacity:.55}.os-window:not(.focused):hover .os-light.red{background:#ff5f57;opacity:1}.os-window:not(.focused):hover .os-light.yellow{background:#febc2e;opacity:1}.os-window:not(.focused):hover .os-light.green{background:#28c840;opacity:1}.os-light span{opacity:0;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:9px;color:rgba(0,0,0,.6);font-weight:700}.os-lights:hover .os-light span{opacity:1}.os-title{position:absolute;left:50%;top:0;bottom:0;transform:translateX(-50%);max-width:62%;display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--ink-2);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.os-title-ico{color:var(--violet);font-size:12px}.os-body{flex:1 1;overflow:auto;padding:22px;-webkit-user-select:text;-moz-user-select:text;user-select:text;overscroll-behavior:contain}.os-body::-webkit-scrollbar{width:10px;height:10px}.os-body::-webkit-scrollbar-thumb{background:var(--edge-hi);border-radius:10px;border:3px solid transparent;background-clip:content-box}.os-resize{position:absolute;right:0;bottom:0;width:18px;height:18px;cursor:nwse-resize;touch-action:none;z-index:5}.os-resize:after{content:"";position:absolute;right:4px;bottom:4px;width:7px;height:7px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);border-radius:0 0 3px 0}.os-dock{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:500;display:flex;align-items:flex-end;gap:9px;padding:8px 11px;background:var(--bar);backdrop-filter:blur(36px) saturate(1.9);-webkit-backdrop-filter:blur(36px) saturate(1.9);border:1px solid var(--edge-hi);border-radius:21px;box-shadow:var(--shadow);max-width:calc(100vw - 24px)}.os-dock-item{position:relative;width:48px;height:48px;border-radius:13px;border:none;padding:0;display:flex;align-items:center;justify-content:center;transition:transform .22s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.25),0 3px 9px rgba(0,0,0,.35)}.os-dock-glyph{font-size:21px;color:oklch(99.1% var(--tint-0) var(--hue-n));line-height:1;text-shadow:0 1px 3px rgba(0,0,0,.35)}.os-dock-item[data-app=terminal],.os-partner-ico[data-app=terminal]{background:linear-gradient(160deg,oklch(42%% .02 var(--hue-n)),oklch(26%% .02 var(--hue-n)))}.os-dock-item[data-app=terminal] .os-dock-glyph,.os-partner-ico[data-app=terminal]{color:var(--cyan)}.os-dock-item[data-app=about],.os-partner-ico[data-app=about]{background:linear-gradient(160deg,oklch(66% calc(var(--chroma-a) * .92) calc(var(--hue-a) + -3)),oklch(54% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + -7)))}.os-dock-item[data-app=projects],.os-partner-ico[data-app=projects]{background:linear-gradient(160deg,oklch(68% calc(var(--chroma-a) * .92) calc(var(--hue-a) + 15)),oklch(56% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + 11)))}.os-dock-item[data-app=experience],.os-partner-ico[data-app=experience]{background:linear-gradient(160deg,oklch(74% calc(var(--chroma-a) * .92) calc(var(--hue-a) + 31)),oklch(62% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + 27)))}.os-dock-item[data-app=skills],.os-partner-ico[data-app=skills]{background:linear-gradient(160deg,oklch(70% calc(var(--chroma-a) * .92) calc(var(--hue-a) + 43)),oklch(58% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + 39)))}.os-dock-item[data-app=blog],.os-partner-ico[data-app=blog]{background:linear-gradient(160deg,oklch(66% calc(var(--chroma-a) * .92) calc(var(--hue-a) + -13)),oklch(54% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + -17)))}.os-dock-item[data-app=dsa],.os-partner-ico[data-app=dsa]{background:linear-gradient(160deg,oklch(62% calc(var(--chroma-a) * .92) calc(var(--hue-a) + 5)),oklch(50% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + 1)))}.os-dock-item[data-app=links],.os-partner-ico[data-app=links]{background:linear-gradient(160deg,oklch(72% calc(var(--chroma-a) * .92) calc(var(--hue-a) + 37)),oklch(60% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + 33)))}.os-dock-item[data-app=contact],.os-partner-ico[data-app=contact]{background:linear-gradient(160deg,oklch(64% calc(var(--chroma-a) * .92) calc(var(--hue-a) + -19)),oklch(52% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + -23)))}.os-partner-ico[data-app=capabilities]{background:linear-gradient(160deg,oklch(68% calc(var(--chroma-a) * .92) calc(var(--hue-a) + 17)),oklch(56% calc(var(--chroma-a) * 1.02) calc(var(--hue-a) + 13)))}.os-dock-item:hover{transform:translateY(-12px) scale(1.22)}.os-dock-item:has(+.os-dock-item:hover),.os-dock-item:hover+.os-dock-item{transform:translateY(-5px) scale(1.09)}.os-dock-item.open:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:var(--ink-2)}.os-dock-item .os-tip{position:absolute;bottom:60px;left:50%;transform:translateX(-50%) translateY(4px);background:var(--panel-solid);color:var(--ink);border:1px solid var(--edge-hi);padding:4px 10px;border-radius:7px;font-size:11.5px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;box-shadow:0 6px 18px rgba(0,0,0,.3)}.os-dock-item:hover .os-tip{opacity:1;transform:translateX(-50%) translateY(0)}.os-dock-sep{width:1px;height:34px;background:var(--edge-hi);margin:0 3px;align-self:center}.os-boot{position:absolute;inset:0;z-index:999;background:#05060c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;animation:bootFade .4s ease both;cursor:pointer}.os-boot.done{animation:bootOut .5s cubic-bezier(.7,0,.3,1) forwards}@keyframes bootFade{0%{opacity:0}to{opacity:1}}@keyframes bootOut{to{opacity:0;visibility:hidden}}.os-boot-mark{width:76px;height:76px;border-radius:20px;background:var(--grad);display:flex;align-items:center;justify-content:center;font-family:var(--os);font-weight:700;font-size:42px;color:#0b0d18;box-shadow:0 0 60px oklch(57.9% var(--chroma-a) var(--hue-a)/.45);animation:markIn .6s cubic-bezier(.16,1,.3,1) both}@keyframes markIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}.os-boot-name{margin-top:18px;font-family:var(--os);font-weight:600;font-size:17px;letter-spacing:.02em;color:#eaecf5}.os-boot-bar{margin-top:30px;width:220px;height:4px;border-radius:4px;background:hsla(0,0%,100%,.12);overflow:hidden}.os-boot-bar i{display:block;height:100%;background:#eaecf5;border-radius:4px;transition:width .34s ease}.os-boot-status{margin-top:16px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:#676d85;min-height:1.4em}.os-cursor{display:inline-block;width:8px;height:1em;background:var(--cyan);vertical-align:-2px;margin-left:3px;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.os-h{font-weight:600;color:var(--ink);letter-spacing:-.01em}.os-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--violet);margin-bottom:12px}.os-muted{color:var(--ink-2)}.os-link{color:var(--violet);text-decoration:none;border-bottom:1px solid transparent}.os-link:hover{border-color:currentColor}.about{display:flex;flex-direction:column;gap:18px;max-width:460px}.about-head{gap:16px}.about-avatar,.about-head{display:flex;align-items:center}.about-avatar{width:60px;height:60px;border-radius:15px;flex-shrink:0;background:var(--grad);justify-content:center;font-family:var(--os);font-weight:700;font-size:29px;color:#0b0d18;box-shadow:0 6px 20px oklch(57.9% var(--chroma-a) var(--hue-a)/.35)}.about-name{font-family:var(--os);font-weight:600;font-size:20px;line-height:1.15;letter-spacing:-.015em}.about-role{font-family:var(--mono);font-size:12px;color:var(--cyan);margin-top:4px}.about-bio{font-size:14px;line-height:1.7;color:var(--ink-2)}.about-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-family:var(--mono);font-size:11.5px;color:var(--ink-3)}.about-meta b{color:var(--ink-2);font-weight:500}.about-social{display:flex;flex-wrap:wrap;gap:8px}.about-social-link{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);border:1px solid var(--edge-hi);border-radius:999px;padding:5px 12px;text-decoration:none;transition:color .15s,border-color .15s,transform .15s}.about-social-link:hover{color:var(--violet);border-color:var(--violet);transform:translateY(-1px)}.about-prompt{font-family:var(--mono);font-size:12px;color:var(--ink-2);border-top:1px solid var(--edge);padding-top:14px}.about-prompt .c{color:var(--cyan)}.about-legal{font-size:10.5px;color:var(--ink-3);letter-spacing:.01em}.exp{display:flex;flex-direction:column}.exp-row{display:grid;grid-template-columns:1fr auto;grid-gap:6px 16px;gap:6px 16px;border-bottom:1px solid var(--edge);position:relative;padding:15px 0 15px 20px}.exp-row:last-child{border-bottom:none}.exp-row:before{content:"";position:absolute;left:3px;top:20px;width:8px;height:8px;border-radius:50%;border:2px solid var(--ink-3)}.exp-row:first-child:before{border-color:var(--cyan);background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.exp-role{font-weight:550;font-size:14.5px;color:var(--ink);letter-spacing:-.01em}.exp-co{font-size:13px;color:var(--ink-2)}.exp-range{font-family:var(--mono);font-size:11px;color:var(--ink-3);white-space:nowrap;text-align:right}.skills-grid{display:flex;flex-wrap:wrap;gap:8px;max-width:480px}.skill-chip{font-family:var(--mono);font-size:12px;color:var(--ink-2);padding:6px 12px;border:1px solid var(--edge-hi);border-radius:8px;background:var(--panel-2);transition:color .15s,border-color .15s,transform .15s;animation:chipIn .4s cubic-bezier(.16,1,.3,1) both}.skill-chip:hover{color:var(--ink);border-color:var(--violet);transform:translateY(-2px)}@keyframes chipIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.caps{display:grid;grid-gap:12px;gap:12px;max-width:520px}.cap{border:1px solid var(--edge-hi);border-radius:12px;padding:16px 18px;background:var(--panel-2);position:relative;overflow:hidden}.cap:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--grad)}.cap-t{font-weight:600;font-size:14.5px;margin-bottom:6px;letter-spacing:-.01em}.cap-d{font-size:13px;line-height:1.6;color:var(--ink-2)}.oslist{display:flex;flex-direction:column}.oslist-row{display:block;width:100%;text-align:left;background:none;border:none;font:inherit;color:inherit;padding:14px 8px;border-bottom:1px solid var(--edge);border-radius:8px;text-decoration:none;transition:padding-left .18s,background .18s}.oslist-row:last-child{border-bottom:none}.oslist-row:hover{padding-left:16px;background:var(--edge)}.oslist-top{display:flex;justify-content:space-between;gap:14px;align-items:baseline}.oslist-t{font-weight:550;font-size:14.5px;color:var(--ink);letter-spacing:-.01em}.oslist-row:hover .oslist-t{color:var(--violet)}.oslist-date{font-family:var(--mono);font-size:11px;color:var(--ink-3);white-space:nowrap}.oslist-d{font-size:13px;color:var(--ink-2);line-height:1.55;margin-top:4px}.oslist-url{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.oslist-read,.oslist-url{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.oslist-read{margin-top:7px;transition:color .18s}.oslist-row:hover .oslist-read{color:var(--violet)}.os-cta{display:inline-flex;align-items:center;gap:8px;margin-top:4px;font-family:var(--mono);font-size:12px;color:#0b0d18;background:var(--grad);border:none;border-radius:9px;padding:9px 16px;font-weight:600;text-decoration:none;transition:transform .15s,filter .15s}.os-cta:hover{transform:translateY(-1px);filter:brightness(1.08)}.os-cta.ghost{background:none;color:var(--ink);border:1px solid var(--edge-hi)}.os-cta.ghost:hover{border-color:var(--violet);color:var(--violet)}.reader{max-width:600px;margin:0 auto}.reader-head{margin-bottom:24px}.reader-title{font-weight:700;font-size:clamp(20px,3.4vw,26px);line-height:1.2;letter-spacing:-.022em;color:var(--ink);margin:0 0 10px}.reader-desc{font-size:14px;line-height:1.65;color:var(--ink-2);margin:0}.reader-foot{margin-top:32px;padding-top:16px;border-top:1px solid var(--edge);font-family:var(--mono);font-size:11.5px}.os-prose{font-size:14.5px;line-height:1.78;color:var(--ink-2)}.os-prose>h1:first-child{display:none}.os-prose>h1:first-child+p:has(>em:only-child){display:none}.os-prose h1,.os-prose h2,.os-prose h3{color:var(--ink);font-weight:650;letter-spacing:-.015em;line-height:1.3}.os-prose h1{font-size:20px;margin:32px 0 12px}.os-prose h2{font-size:17px;margin:30px 0 10px}.os-prose h3{font-size:15px;margin:24px 0 8px}.os-prose p{margin:0 0 16px}.os-prose a{color:var(--violet);text-decoration:none;border-bottom:1px solid oklch(57.9% var(--chroma-a) var(--hue-a)/.35)}.os-prose a:hover{border-color:currentColor}.os-prose strong{color:var(--ink);font-weight:600}.os-prose ol,.os-prose ul{padding-left:1.4em;margin:0 0 16px}.os-prose li{margin-bottom:5px}.os-prose blockquote{border-left:2px solid var(--violet);padding:2px 0 2px 16px;margin:20px 0;color:var(--ink-2);font-style:italic}.os-prose code{font-family:var(--mono);font-size:.86em;background:oklch(57.9% var(--chroma-a) var(--hue-a)/.12);padding:2px 6px;border-radius:5px;color:var(--violet)}.os-prose pre{background:#0b0c16;border:1px solid var(--edge);border-radius:10px;padding:16px 18px;overflow-x:auto;margin:20px 0}.os-prose pre code{background:none;padding:0;color:#dfe2f0;font-size:12.5px;line-height:1.65}.os-prose hr{border:none;border-top:1px solid var(--edge);margin:26px 0}.proj{display:flex;flex-direction:column;gap:12px;max-width:560px}.proj-card{display:block;position:relative;border:1px solid var(--edge-hi);border-radius:13px;background:var(--panel-2);padding:16px 18px;text-decoration:none;transition:border-color .18s,transform .18s;overflow:hidden}.proj-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .2s;pointer-events:none}.proj-card:hover{transform:translateY(-2px)}.proj-card:hover:before{opacity:1}.proj-card.featured:after{content:"";position:absolute;top:0;left:18px;right:18px;height:1px;background:var(--grad);opacity:.55}.proj-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.proj-name{font-family:var(--os);font-weight:600;font-size:16px;color:var(--ink);letter-spacing:-.01em}.proj-meta{gap:12px;font-family:var(--mono);font-size:11px;color:var(--ink-3);white-space:nowrap}.proj-lang,.proj-meta{display:inline-flex;align-items:center}.proj-lang{gap:5px}.proj-lang i{width:8px;height:8px;border-radius:50%;display:inline-block}.proj-stars{color:var(--amber)}.proj-tag{font-family:var(--mono);font-size:12px;color:var(--cyan);margin-top:3px}.proj-desc{font-size:13px;line-height:1.6;color:var(--ink-2);margin-top:8px}.proj-topics{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.proj-topics span{font-size:10.5px;border:1px solid var(--edge);border-radius:5px;padding:2px 7px}.proj-more-label,.proj-topics span{font-family:var(--mono);color:var(--ink-3)}.proj-more-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-top:6px}.proj-more{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px}.proj-mini{display:flex;flex-direction:column;gap:3px;border:1px solid var(--edge-hi);border-radius:10px;padding:10px 12px;background:var(--panel-2);text-decoration:none;transition:border-color .15s,transform .15s}.proj-mini:hover{border-color:var(--violet);transform:translateY(-2px)}.proj-mini-name{font-family:var(--os);font-weight:500;font-size:13px;color:var(--ink)}.proj-mini-tag{font-size:11px;color:var(--ink-3);line-height:1.4}.term{display:flex;flex-direction:column;height:100%;font-family:var(--mono);font-size:12.5px;line-height:1.65}.term-out{flex:1 1;overflow:auto;padding-bottom:8px}.term-out::-webkit-scrollbar{width:8px}.term-out::-webkit-scrollbar-thumb{background:var(--edge-hi);border-radius:8px}.term-line{white-space:pre-wrap;word-break:break-word;color:var(--ink-2)}.term-line.cmd{color:var(--ink)}.term-line .ok,.term-line .p{color:var(--cyan)}.term-line .er{color:var(--rose)}.term-line .ac{color:var(--violet)}.term-line .am{color:var(--amber)}.term-input-row{display:flex;align-items:center;gap:8px;border-top:1px solid var(--edge);padding-top:10px}.term-prompt{color:var(--cyan);flex-shrink:0}.term-input{flex:1 1;background:none;border:none;outline:none;color:var(--ink);font-family:var(--mono);font-size:12.5px;caret-color:var(--cyan)}.term-hint{color:var(--ink-3)}.term-chipbar{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.term-chip{font-family:var(--mono);font-size:11px;color:var(--ink-2);border:1px solid var(--edge-hi);background:none;border-radius:6px;padding:3px 9px}.term-chip:hover{color:var(--ink);border-color:var(--violet)}.os-ctx{position:absolute;z-index:700;min-width:176px;background:var(--panel);backdrop-filter:blur(36px) saturate(1.8);-webkit-backdrop-filter:blur(36px) saturate(1.8);border:1px solid var(--edge-hi);border-radius:11px;padding:5px;box-shadow:var(--shadow);font-size:12.5px;animation:winIn .15s ease both}.os-ctx button{display:flex;width:100%;justify-content:space-between;gap:16px;align-items:center;color:var(--ink-2);background:none;border:none;padding:7px 10px;border-radius:7px;text-align:left;font-size:12.5px}.os-ctx button:hover{background:var(--edge);color:var(--ink)}.os-ctx button kbd{font-family:var(--mono);font-size:10px;color:var(--ink-3)}.os-ctx hr{border:none;border-top:1px solid var(--edge);margin:4px 2px}.os-hint{position:absolute;z-index:480;bottom:84px;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:12px;color:var(--ink-2);background:var(--bar);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--edge-hi);border-radius:999px;padding:7px 16px;animation:hintIn .5s ease .3s both}.os-hint b{color:var(--violet)}@keyframes hintIn{0%{opacity:0;transform:translateX(-50%) translateY(6px)}to{opacity:1;transform:translateX(-50%)}}.os-spot-backdrop{position:absolute;inset:0;z-index:800;background:rgba(5,6,12,.35);backdrop-filter:blur(9px) saturate(1.2);-webkit-backdrop-filter:blur(9px) saturate(1.2);display:flex;justify-content:center;align-items:flex-start;padding:15vh 16px 0;animation:bootFade .14s ease both}[data-theme=light] .os-spot-backdrop{background:oklch(21.6% var(--tint-1) var(--hue-n)/.24)}.os-spot{width:min(560px,100%);background:var(--panel);backdrop-filter:blur(50px) saturate(2);-webkit-backdrop-filter:blur(50px) saturate(2);border:1px solid var(--edge-hi);border-radius:16px;box-shadow:0 40px 100px -20px rgba(0,0,0,.7);overflow:hidden;animation:spotIn .2s cubic-bezier(.16,1,.3,1) both}@keyframes spotIn{0%{opacity:0;transform:translateY(-10px) scale(.97)}to{opacity:1}}.os-spot-inputrow{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid var(--edge)}.os-spot-glass{font-size:18px;color:var(--ink-3)}.os-spot-input{flex:1 1;background:none;border:none;outline:none;color:var(--ink);font-size:16.5px;font-family:var(--ui);caret-color:var(--violet)}.os-spot-input::placeholder{color:var(--ink-3)}.os-spot-esc{font-family:var(--mono);font-size:10px;color:var(--ink-3);border:1px solid var(--edge-hi);padding:2px 6px;border-radius:5px}.os-spot-list{list-style:none;margin:0;padding:6px;max-height:46vh;overflow:auto}.os-spot-list::-webkit-scrollbar{width:8px}.os-spot-list::-webkit-scrollbar-thumb{background:var(--edge-hi);border-radius:8px}.os-spot-item{display:flex;width:100%;align-items:center;gap:11px;padding:9px 10px;background:none;border:none;border-radius:9px;text-align:left;color:var(--ink-2)}.os-spot-item.sel{background:oklch(57.9% var(--chroma-a) var(--hue-a)/.16)}[data-theme=light] .os-spot-item.sel{background:oklch(57.9% var(--chroma-a) var(--hue-a)/.12)}.os-spot-ico{width:27px;height:27px;border-radius:7px;flex-shrink:0;background:var(--panel-2);border:1px solid var(--edge);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--violet)}.os-spot-label{font-size:13.5px;font-weight:500;color:var(--ink);max-width:55%}.os-spot-hint,.os-spot-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.os-spot-hint{flex:1 1;font-size:11.5px;color:var(--ink-3)}.os-spot-badge{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--edge);border-radius:4px;padding:2px 5px;flex-shrink:0}.os-spot-empty{padding:22px 18px;font-size:13px;color:var(--ink-3)}.os-spot-foot{display:flex;gap:16px;padding:9px 16px;border-top:1px solid var(--edge);font-family:var(--mono);font-size:10.5px;color:var(--ink-3)}@media (prefers-reduced-motion:reduce){.rudra-os *,.rudra-os :after,.rudra-os :before{animation:none!important;transition:none!important}.os-blob{display:none}}@media (max-width:720px){.os-surface{inset:44px 0 82px 0;overflow-y:auto;padding:14px}.os-window{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;transform:none!important;margin-bottom:14px;min-height:0}.os-resize,.os-window.min{display:none}.os-titlebar{cursor:default}.os-dock{gap:7px;padding:7px 9px;bottom:10px;overflow-x:auto;justify-content:flex-start}.os-dock-item{width:42px;height:42px;border-radius:12px}.os-dock-glyph{font-size:18px}.os-dock-item:has(+.os-dock-item:hover),.os-dock-item:hover,.os-dock-item:hover+.os-dock-item{transform:none}.os-hint{display:none}.os-menubar{height:44px;gap:6px;padding:0 10px}.os-clock{display:none}.os-menu-switch{min-height:30px;padding:6px 12px;margin-right:0;font-size:11.5px}.os-menu-switch .os-switch-long{display:none}.os-menu-switch .os-switch-short{display:inline}.os-hero{position:static;max-width:none;margin:4px 4px 20px}.os-menu-desktop,.os-status{display:none}.reader{max-width:none}}.os-pal-btn{display:inline-flex;align-items:center;justify-content:center}.os-pal-dot{width:12px;height:12px;border-radius:50%;background:var(--grad);box-shadow:0 0 0 1px var(--edge-hi)}.os-pal-menu{min-width:132px}.os-pal-menu button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:none;padding:6px 10px;border-radius:6px;color:var(--ink-2);font-family:var(--mono);font-size:11.5px;text-transform:capitalize}.os-pal-menu button:hover{background:var(--edge);color:var(--ink)}.os-pal-menu button.active{color:var(--ink)}.os-pal-sw{width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 1px var(--edge-hi);flex-shrink:0}.os-pal-sw[data-p=ember]{background:oklch(57.9% .129 41)}.os-pal-sw[data-p=vermilion]{background:oklch(57.9% .19 28)}.os-pal-sw[data-p=cobalt]{background:oklch(57.9% .15 262)}.os-pal-sw[data-p=garden]{background:oklch(57.9% .13 150)}.os-pal-sw[data-p=plum]{background:oklch(57.9% .15 340)}.proj-slot{position:relative}.proj-demo{display:inline-block;margin:-4px 0 12px 2px;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--cyan);text-decoration:none;border-bottom:1px solid transparent}.proj-demo:hover{border-bottom-color:var(--cyan)}