/* I/O Shield — shared console-inspired design system. Content remains in the original application. */
@font-face{font-family:IO Manrope;src:url('/assets/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--io-navy:#05182f;--io-panel:#102f51;--io-ice:#c4e7ff;--io-ink:#102d4e;--io-line:#92beed35;--io-blue:#8cd0ff;--io-yellow:#ffda00;color-scheme:dark}
html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:#05182f url('/assets/atmosphere.png') center top/cover fixed no-repeat!important;color:#f1f6ff;font-family:IO Manrope,Arial,sans-serif!important;-webkit-font-smoothing:antialiased;overflow-x:clip}*{box-sizing:border-box}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--io-yellow)!important;outline-offset:4px}button,a,input,select,textarea{touch-action:manipulation}::selection{background:#ffda00;color:#05182f}
.io-header{height:80px;position:relative;z-index:100;display:flex;align-items:center;gap:30px;padding:0 4.8%;background:#05182fed;border-bottom:1px solid var(--io-line);font-family:IO Manrope,Arial,sans-serif;color:#f1f6ff}.io-brand{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none;white-space:nowrap;font-size:27px;font-weight:800;letter-spacing:-1.4px}.io-brand img{width:36px;height:39px}.io-nav{margin-left:auto;display:flex;gap:27px;align-items:center;font-size:13px;font-weight:550}.io-nav a,.io-nav summary{color:inherit;text-decoration:none;cursor:pointer;list-style:none;white-space:nowrap}.io-nav a:hover,.io-nav summary:hover,.io-nav a[aria-current=page]{color:#8cd0ff}.io-nav summary::-webkit-details-marker{display:none}.io-nav summary:after{content:'⌄';margin-left:8px;color:#8cd0ff}.io-nav details{position:relative}.io-nav details>div{position:absolute;top:34px;left:-18px;width:300px;padding:9px;border:1px solid #92beed45;border-radius:9px;background:#0b2948;box-shadow:0 22px 60px #0006}.io-nav details>div a{display:block;white-space:normal;padding:12px;border-radius:5px;line-height:1.5}.io-nav details>div a:hover{background:#ffffff0a}.io-incident{display:flex;align-items:center;gap:8px;padding-left:26px;border-left:1px solid #92beed45;color:#ffab6b!important;font-size:12px;text-decoration:none;white-space:nowrap}.io-incident svg{width:20px;height:20px;flex:none}.io-menu-toggle{display:none;border:1px solid #92beed40;border-radius:5px;background:transparent;color:inherit;width:40px;height:40px}.io-skip{position:fixed;z-index:200;top:-100px;left:18px;background:var(--io-yellow);color:#05182f;padding:12px 18px;border-radius:5px}.io-skip:focus{top:12px}
body.io-home .site-shell>.site-header,body.io-home .site-shell>.skip-link,body.io-home .prototype-footer{display:none}body.io-home .site-shell{min-height:calc(100svh - 80px)}body.io-home .hero{padding-top:65px;padding-bottom:60px}body.io-home .intro{padding-top:0}body.io-home .intro h1{margin-bottom:28px}body.io-home .site-shell>main{display:flex;align-items:center}body.io-home .site-shell>main>.hero{width:100%}
body.io-inner #root>div>header{display:none!important}body.io-inner #root>div{background:transparent!important}body.io-inner #main-content{padding-top:0!important}body.io-inner:not(.io-portfolio) #main-content,body.io-inner:not(.io-portfolio) #main-content *,body.io-home .site-shell *{font-family:'IO Manrope',Arial,sans-serif!important}
body.io-inner #main-content>.io-page-frame,body.io-inner .io-page-frame{background:transparent!important;color:#eef5ff!important}body.io-inner #main-content>.io-page-frame{padding-top:70px}body.io-inner #main-content [class*=min-h-screen]{background:transparent!important}body.io-inner #main-content .container{max-width:1180px}body.io-inner #main-content>div>section{scroll-margin-top:100px}body.io-inner #main-content p{line-height:1.75}body.io-inner #main-content h1{font-size:clamp(38px,4.8vw,68px);line-height:1.1;letter-spacing:-.055em;font-weight:800}body.io-inner #main-content h2{letter-spacing:-.035em;line-height:1.2;font-weight:750}body.io-inner #main-content h3{letter-spacing:-.025em;line-height:1.3}body.io-inner #main-content .io-page-hero{background:transparent!important;border-color:var(--io-line)!important}body.io-inner #main-content .io-page-hero [class*=text-center]{text-align:left}body.io-inner #main-content .io-page-hero{text-align:left}body.io-inner #main-content .io-page-hero h1,body.io-inner #main-content .io-page-hero p{margin-left:0;margin-right:0}body.io-inner #main-content .io-page-hero h1{max-width:1020px}body.io-inner #main-content .io-page-hero p{max-width:800px}
body.io-inner #main-content .io-panel{background:#113557a6!important;border-color:#94bfe936!important;box-shadow:0 12px 40px #00000012!important;border-radius:10px!important}body.io-inner #main-content .io-ice{background:#c4e7ff!important;border-color:#e1f2ff80!important;color:#102d4e!important;border-radius:10px!important;box-shadow:0 15px 45px #00000015!important}body.io-inner #main-content .io-soft{background:#a8d4f417!important;border-color:#94bfe936!important;border-radius:7px!important}body.io-inner #main-content .io-filterbar{background:#082541e6!important;border-color:var(--io-line)!important}
body.io-inner #main-content [class*=text-\[\#B0B3B8\]],body.io-inner #main-content [class*=text-\[\#CAD2E0\]],body.io-inner #main-content [class*=text-\[\#5F6269\]],body.io-inner #main-content [class*=text-\[\#6B7280\]],body.io-inner #main-content [class*=text-\[\#7A808A\]],body.io-inner #main-content [class*=text-\[\#8A9099\]]{color:#bdd1e8}
body.io-inner #main-content [class*=text-\[\#17191D\]],body.io-inner #main-content [class*=text-\[\#263247\]],body.io-inner #main-content [class*=text-\[\#0A1F44\]]{color:#edf5ff}body.io-inner #main-content [class*=text-\[\#00AEEF\]],body.io-inner #main-content [class*=text-\[\#0F63D8\]]{color:#8cd0ff}
body.io-inner #main-content .io-ice h2,body.io-inner #main-content .io-ice h3,body.io-inner #main-content .io-ice h4,body.io-inner #main-content .io-ice [class*=text-white],body.io-inner #main-content .io-ice [class*=text-\[\#0A1F44\]],body.io-inner #main-content .io-ice [class*=text-\[\#17191D\]],body.io-inner #main-content .io-ice [class*=text-\[\#263247\]]{color:#102d4e}body.io-inner #main-content .io-ice p,body.io-inner #main-content .io-ice li,body.io-inner #main-content .io-ice [class*=text-\[\#5F6269\]],body.io-inner #main-content .io-ice [class*=text-\[\#6B7280\]],body.io-inner #main-content .io-ice [class*=text-\[\#7A808A\]]{color:#36516c}body.io-inner #main-content .io-ice [class*=text-\[\#0F63D8\]],body.io-inner #main-content .io-ice [class*=text-\[\#00AEEF\]],body.io-inner #main-content .io-ice a{color:#075cb7}body.io-inner #main-content .io-ice .io-soft{background:#e8f5ff99!important;border-color:#7799b42e!important}body.io-inner #main-content .io-ice .io-panel{background:#143d62!important;color:#f0f7ff!important}body.io-inner #main-content .io-ice .io-panel p,body.io-inner #main-content .io-ice .io-panel h3{color:#edf5ff!important}
body.io-inner #main-content [class*=bg-\[\#FFD700\]]{background:#ffda00!important;color:#071b32!important;border-color:#ffda00!important;border-radius:6px}body.io-inner #main-content [class*=bg-\[\#FFD700\]] *{color:#071b32!important}body.io-inner #main-content [class*=bg-\[\#0F63D8\]]:is(a,button){background:#1676ce!important;color:#fff!important}body.io-inner #main-content :is(input,textarea,select){background:#0b2847!important;border-color:#8eb6df70!important;color:#f1f6ff!important;border-radius:7px!important;box-shadow:none}body.io-inner #main-content :is(input,textarea)::placeholder{color:#9ab6d1!important}body.io-inner #main-content .io-ice :is(input,textarea,select){background:#f0f8ff!important;border-color:#6b8faf99!important;color:#102d4e!important}body.io-inner #main-content :is(a,button){transition:color .18s,background-color .18s,border-color .18s,transform .18s}body.io-inner #main-content [class*=rounded-full]:not(img){border-radius:6px}body.io-inner #main-content img{filter:none!important}body.io-inner #main-content [class*=border-\[\#2A2E35\]],body.io-inner #main-content [class*=border-\[\#DDE1E7\]],body.io-inner #main-content [class*=border-\[\#E4E7EC\]]{border-color:var(--io-line)}
body.io-inner #main-content .io-page-hero:before{content:'';display:block;width:38px;height:3px;background:#ffda00;margin:0 0 26px}body.io-inner #main-content .io-page-hero.relative:before{position:absolute;top:40px;left:max(24px,calc((100% - 1120px)/2))}body.io-inner #main-content .io-page-hero .rounded-full{letter-spacing:.08em;font-size:11px}body.io-inner #main-content .io-page-hero .justify-center{justify-content:flex-start}
/* Existing Portfolio workstation and phone behavior stays in its own visual scope. */
body.io-portfolio #main-content{background:transparent!important}body.io-portfolio #main-content .pfw-desktop{font-family:Arial,sans-serif}body.io-portfolio #main-content h1{font-size:inherit}body.io-portfolio .io-header{z-index:1000}
body.io-inner #root>div>footer,.io-home-footer{background:#061b32f2!important;border-top:1px solid var(--io-line)!important;color:#bdd1e8;font-family:IO Manrope,Arial,sans-serif}body.io-inner footer [class*=font-],body.io-inner footer{font-family:IO Manrope,Arial,sans-serif!important}body.io-inner footer .container{max-width:1180px}body.io-inner footer h3{font-size:13px;letter-spacing:.02em}body.io-inner footer [class*=text-\[\#B0B3B8\]]{color:#a7c1dc}body.io-inner footer [class*=border-]{border-color:var(--io-line)}.io-home-footer{padding:50px 4.8% 24px}.io-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;max-width:1180px;margin:auto}.io-home-footer h3{color:white;font-size:13px;margin:4px 0 20px}.io-home-footer p,.io-home-footer a{font-size:13px;line-height:1.8;color:#a7c1dc}.io-home-footer a{text-decoration:none;display:block;margin-bottom:6px}.io-home-footer a:hover{color:#8cd0ff}.io-home-footer .io-brand{font-size:25px;color:#fff;margin-bottom:15px}.io-footer-bottom{max-width:1180px;margin:35px auto 0;padding-top:22px;border-top:1px solid var(--io-line);display:flex;justify-content:space-between;align-items:center;gap:20px}.io-footer-bottom a{display:inline;margin-left:20px}.io-footer-bottom p{margin:0;font-size:11px}
@media(min-width:1500px){.io-header{padding-left:max(4.8%,calc((100% - 1680px)/2));padding-right:max(4.8%,calc((100% - 1680px)/2))}}
@media(max-width:1100px){.io-header{gap:20px;padding:0 4%}.io-nav{gap:17px;font-size:12px}.io-brand{font-size:24px}.io-incident{padding-left:16px;font-size:11px}.io-incident span{max-width:130px;white-space:normal;line-height:1.4}body.io-inner #main-content>.io-page-frame{padding-top:48px}}
@media(max-width:850px){.io-header{height:76px;padding:0 22px;gap:14px}.io-brand{font-size:24px}.io-brand img{width:30px;height:34px}.io-incident{margin-left:auto;font-size:10px;padding-left:14px;max-width:150px}.io-menu-toggle{display:block;flex:none;font-size:22px}.io-nav{display:none;position:absolute;top:69px;left:18px;right:18px;background:#0b2948;border:1px solid var(--io-line);border-radius:9px;padding:14px;box-shadow:0 20px 50px #0006;margin:0;max-height:80svh;overflow:auto}.io-header[data-open=true] .io-nav{display:flex;flex-direction:column;align-items:stretch;gap:0}.io-nav>a,.io-nav summary{padding:15px 10px;font-size:15px;display:block}.io-nav details>div{position:static;width:100%;background:#041d35;box-shadow:none;margin-bottom:10px}.io-nav details>div a{font-size:13px}body.io-home .hero{padding-top:38px;padding-bottom:35px}body.io-home .site-shell>main{display:block}body.io-home .site-shell{min-height:0}.io-footer-grid{grid-template-columns:1fr 1fr;gap:26px}.io-footer-bottom{align-items:flex-start;flex-direction:column}.io-footer-bottom a:first-child{margin-left:0}body.io-inner #main-content>.io-page-frame{padding-top:40px}body.io-inner #main-content .io-page-hero h1{font-size:clamp(35px,7vw,54px)}body.io-inner #main-content .io-page-hero{padding-top:38px;padding-bottom:40px}body.io-inner #main-content .io-page-hero.relative:before{top:24px}body.io-inner #main-content .io-page-hero p{font-size:17px;line-height:1.7}.io-home-footer{padding:35px 24px 25px}}
@media(max-width:400px){.io-header{padding:0 16px;gap:8px}.io-brand{font-size:21px;gap:6px}.io-incident{max-width:118px;padding-left:10px;font-size:9px;gap:5px}.io-incident svg{width:17px}.io-menu-toggle{width:33px;height:36px}.io-footer-grid{grid-template-columns:1fr}.io-footer-bottom a{display:block;margin:0 0 8px}body.io-inner #main-content h1{overflow-wrap:anywhere}body.io-inner #main-content .io-page-hero h1{font-size:35px}}
body.io-inner{background-image:linear-gradient(#05182f80,#05182fb8),url('/assets/atmosphere.png')!important}body.io-inner #main-content .io-page-hero>div.absolute{display:none}body.io-inner #main-content :is(a,button)[class~=bg-white]{background:#c4e7ff!important;color:#164a78!important;border-color:#95c3e1!important}body.io-inner #main-content :is(a,button)[class~=bg-white] *{color:#164a78!important}body.io-inner #main-content div[class*=rounded-full]:not(.io-panel):not(.io-ice):not(.io-soft){border-radius:9999px}body.io-inner #main-content .io-ice [class*=text-\[\#7A808A\]]{color:#44617d}body.io-inner #main-content .io-ice [class*=bg-gradient-to-br]{color:#fff!important}body.io-inner #main-content .io-ice [class*=bg-gradient-to-br] span{color:#fff!important}
body.io-inner #main-content .io-page-hero:before{display:none}body.io-inner #main-content .io-page-hero.relative:before{display:none}
/* The existing draggable Portfolio keeps every control, photo, and project. */
body.io-portfolio.portfolio-workstation .io-header{display:flex!important;position:relative;z-index:3000!important}body.io-portfolio .io-workstation{top:80px;height:calc(100dvh - 80px);background-image:linear-gradient(#031c34b8,#031c34bd),url('/assets/io-shield-desktop-wallpaper.png');--io-navy:#0d3156;--io-panel:#c4e7ff;--io-panel-light:#ecf7ff;--io-panel-mid:#d9edfc;--io-ink:#102d4e;font-family:'IO Manrope',Arial,sans-serif}body.io-portfolio .io-workstation *{font-family:'IO Manrope',Arial,sans-serif!important;cursor:auto!important}body.io-portfolio .io-workstation :is(a,button){cursor:pointer!important}body.io-portfolio .io-window{border:1px solid #a2cff080;border-radius:10px;box-shadow:0 24px 70px #0007;overflow:hidden;container-type:inline-size}body.io-portfolio .io-titlebar{background:#10385f;border-bottom:3px solid #ffda00;padding:7px 10px;min-height:44px}body.io-portfolio :is(.io-window-actions button,.io-win-button,.io-task-button,.io-start-button,.io-byte-actions button,.io-byte-actions a,.io-byte-titlebar button){border:1px solid #87a8c780;border-radius:5px;background:#c4e7ff;color:#102d4e;box-shadow:none;font-weight:650}body.io-portfolio :is(.io-window-actions button,.io-task-button):hover{background:#f0f9ff}body.io-portfolio .io-menubar{background:#d7edfc;border:0;border-bottom:1px solid #94b4d0;padding:8px 12px}body.io-portfolio .io-window-body{background:#eaf5ff}body.io-portfolio .io-workstation h1{font-size:clamp(28px,3.1vw,44px);line-height:1.12;font-weight:800;letter-spacing:-.045em}body.io-portfolio .io-workstation h2{font-size:30px;line-height:1.2;font-weight:750}body.io-portfolio .io-workstation h3{font-size:23px;line-height:1.3}body.io-portfolio .io-lede{font-size:17px;line-height:1.65}body.io-portfolio .io-overview-layout{gap:24px}body.io-portfolio :is(.io-hero-photo,.io-project-card,.io-fact,.io-work-column,.io-credential,.io-publication){border:1px solid #8faec980;border-radius:7px;background:#d5ebfc;box-shadow:none}body.io-portfolio .io-hero-photo{padding:8px}body.io-portfolio .io-statusbar{border:0;background:#d0e7f9;color:#36516c}body.io-portfolio .io-statusbar span{border:0}body.io-portfolio .io-taskbar{background:#092642ed;border-top:1px solid #a4cdf166;box-shadow:none;padding:7px;gap:6px}body.io-portfolio .io-task-button{font-size:10px;min-height:32px}body.io-portfolio .io-start-button{background:#ffda00;border-color:#ffda00}body.io-portfolio :is(.io-system-line,.io-desktop-hint){background:#082642c9;color:#c2dbf2;border:1px solid #8eb8dc4d;border-radius:6px;box-shadow:none}body.io-portfolio .io-shortcut{border-radius:7px}body.io-portfolio .io-shortcut:hover{background:#75b5e62b;border:1px solid #9ccdf06e}body.io-portfolio .io-shortcut img{border:1px solid #afd4f07a;border-radius:6px;box-shadow:none}body.io-portfolio .io-shortcut span{text-shadow:0 1px 3px #0007}body.io-portfolio .io-byte-bubble{background:#d8efff;border:1px solid #9abedb;border-radius:9px;overflow:hidden;box-shadow:0 15px 40px #0006}body.io-portfolio .io-byte-titlebar{background:#0d3156}
body.io-inner #main-content>.io-flush-frame{padding-top:0}body.io-inner #main-content [class*=text-\[\#4B5563\]],body.io-inner #main-content [class*=text-\[\#465166\]],body.io-inner #main-content [class*=text-\[\#355272\]],body.io-inner #main-content [class*=text-\[\#334155\]]{color:#bdd1e8}body.io-inner #main-content .io-ice [class*=text-\[\#4B5563\]],body.io-inner #main-content .io-ice [class*=text-\[\#465166\]],body.io-inner #main-content .io-ice [class*=text-\[\#355272\]],body.io-inner #main-content .io-ice [class*=text-\[\#334155\]]{color:#36516c}
@media(max-width:850px){body.io-inner #main-content .io-page-hero{padding-top:0}body.io-inner #main-content .io-page-hero>div[class*=py-16]{padding-top:40px;padding-bottom:40px}}
@container(max-width:650px){body.io-portfolio .io-overview-layout{grid-template-columns:1fr}body.io-portfolio .io-hero-photo{max-width:280px}body.io-portfolio .io-workstation h1{font-size:34px}}
@media(max-width:850px){body.io-portfolio .io-workstation{top:76px;height:calc(100dvh - 76px)}}
body.io-inner #main-content h1{color:#f1f6ff}body.io-inner #main-content [class*=text-\[\#111827\]],body.io-inner #main-content [class*=text-\[\#252A34\]],body.io-inner #main-content [class*=text-\[\#173A66\]],body.io-inner #main-content [class*=text-\[\#414650\]]{color:#eef5ff}body.io-inner #main-content .io-ice [class*=text-],body.io-inner #main-content .io-ice :is(p,li,small,blockquote){color:#36516c}body.io-inner #main-content .io-ice :is(h1,h2,h3,h4,strong){color:#102d4e}body.io-inner #main-content .io-ice :is(a,button)[class*=bg-\[\#0F63D8\]],body.io-inner #main-content .io-ice [class*=bg-gradient-to-br],body.io-inner #main-content .io-ice [class*=bg-gradient-to-br] *{color:#fff!important}body.io-inner #main-content .io-ice .io-panel [class*=text-]{color:#e0eefb}body.io-inner #main-content .io-ice [class*=text-\[\#0F63D8\]],body.io-inner #main-content .io-ice [class*=text-\[\#00AEEF\]]{color:#075cb7}body.io-inner #main-content .io-ice :is(a,button)[class*=bg-\[\#FFD700\]]{color:#071b32!important}
@media screen and (max-width:720px){body.io-portfolio .io-mobile-portfolio{height:calc(100dvh - 76px);--io-lcd:#c4e7ff;--io-lcd-dark:#102d4e;--io-phone-silver:#123555;--io-phone-silver-dark:#08223d;--io-phone-charcoal:#071d35;--io-phone-key:#153c60;--io-phone-yellow:#ffda00;background:#05182f}body.io-portfolio .io-phone-stage{background:#05182f;padding:8px}body.io-portfolio .io-phone{height:max(680px,calc(100dvh - 92px));border:1px solid #87b5dc6e;border-radius:24px;box-shadow:0 18px 50px #0005}body.io-portfolio .io-phone-top{border-radius:22px;background:#123555;box-shadow:none;border:0}body.io-portfolio .io-phone-screen{border-color:#80aacb}body.io-portfolio .io-phone-instructions{color:#c3d9ed}body.io-portfolio .io-phone-brand{color:#dceeff}}
@media screen and (max-width:720px){body.io-portfolio .io-mobile-portfolio{--io-phone-key:#c4e7ff;--io-phone-key-edge:#7298b8}body.io-portfolio .io-phone-stage{min-height:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
