@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--modal-open-dur:.25s;--modal-close-dur:.15s;--modal-scale:.96;--modal-scale-close:.96;--modal-ease:cubic-bezier(.22, 1, .36, 1)}.windows-desktop{color:#111;background:teal;font-family:Arial,sans-serif;position:absolute;inset:0;overflow:hidden}.desktop-wallpaper,.desktop-wallpaper-shade{width:100%;height:calc(100% - 30px);position:absolute;inset:0 0 30px}.desktop-wallpaper{object-fit:cover;object-position:center;pointer-events:none;display:block}.desktop-wallpaper-shade{pointer-events:none;background:#00181826}.desktop-shortcuts{z-index:2;position:absolute;inset:14px 14px 44px}.desktop-selection-rectangle{z-index:1;pointer-events:none;background:#00008047;border:1px dotted navy;position:absolute}.desktop-icon{color:#fff;text-shadow:1px 1px #000;cursor:default;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;place-items:center;gap:4px;width:90px;min-height:74px;padding:4px;font:12px/1.15 Arial,sans-serif;display:grid;position:absolute}.desktop-icon img{width:32px;height:32px;image-rendering:pixelated}.desktop-icon span{overflow-wrap:anywhere;max-width:86px}.desktop-icon[data-selected=true],.desktop-icon:focus-visible{background:#000080ad;border-color:#fff;outline:1px dotted #000}.desktop-taskbar{z-index:5;background:silver;border-top:2px solid #fff;align-items:center;gap:5px;height:30px;padding:3px;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:inset 0 1px #dfdfdf}.taskbar-window-list{flex:1;gap:4px;min-width:0;display:flex}.start-button,.sound-button,.taskbar-window-button,.taskbar-session,.taskbar-clock{color:#111;background:silver;border:2px outset #dfdfdf;height:23px;font:700 12px Arial,sans-serif}.taskbar-window-button{text-overflow:ellipsis;white-space:nowrap;text-align:left;min-width:108px;max-width:180px;padding:2px 9px;font-weight:400;overflow:hidden}.taskbar-window-button[aria-pressed=true]{background:#d6d6d6;border-style:inset;font-weight:700}.start-button,.sound-button{align-items:center;gap:4px;padding:2px 7px;display:inline-flex}.start-button img{width:18px;height:18px;image-rendering:pixelated}.start-menu{z-index:12;background:silver;border:2px outset #dfdfdf;width:220px;display:flex;position:absolute;bottom:27px;left:0;box-shadow:3px 3px #00000073}.start-menu-brand{color:#fff;writing-mode:vertical-rl;letter-spacing:.04em;background:navy;flex-direction:column;flex:0 0 36px;justify-content:flex-end;padding:8px 4px;font-size:12px;display:flex;transform:rotate(180deg)}.start-menu-brand span{color:silver;margin-top:8px;font-size:10px}.start-menu-items{flex:1;gap:1px;padding:5px;display:grid}.start-menu-item{color:#111;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:8px;min-height:30px;padding:4px 8px;font:12px Arial,sans-serif;display:flex}.start-menu-item:hover,.start-menu-item:focus-visible{color:#fff;background:navy;border-color:#fff;outline:1px dotted #000}.start-menu-item-glyph{color:navy;width:12px;font-size:18px;line-height:1}.start-menu-item:hover .start-menu-item-glyph,.start-menu-item:focus-visible .start-menu-item-glyph{color:#fff}.start-menu-rule{border-top:1px solid gray;border-bottom:1px solid #fff;height:1px;margin:3px 2px}.sound-button{margin-left:0;padding:2px 5px}.sound-button img{width:16px;height:16px;image-rendering:pixelated}.taskbar-volume{flex:none;margin-left:auto;display:inline-flex;position:relative}.volume-control{z-index:13;color:#111;background:silver;border:2px outset #dfdfdf;gap:5px;width:168px;padding:8px;font:11px Arial,sans-serif;display:grid;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:3px 3px #00000073}.volume-control-row{grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:6px;display:grid}.volume-control input{accent-color:navy;width:100%}.volume-control output{text-align:right}.taskbar-session{flex:none;align-items:center;padding:3px 12px;font-weight:400;display:inline-flex}.taskbar-clock{border-style:inset;align-items:center;padding:3px 8px;font-weight:400;display:inline-flex}.desktop-window{z-index:4;background:silver;border:2px outset #dfdfdf;width:min(560px,100vw - 32px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:3px 3px #00000073}.desktop-window.is-minimized{display:none}.desktop-window[data-maximized=true]{box-shadow:none;border-width:2px}.desktop-window.is-maximized{transform:none}.t-modal{transform-origin:50%;transform:translate(-50%, -50%) scale(var(--modal-scale));opacity:0;pointer-events:none;transition:transform var(--modal-open-dur) var(--modal-ease), opacity var(--modal-open-dur) var(--modal-ease);will-change:transform, opacity}.t-modal.is-open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.t-modal.is-closing{transform:translate(-50%, -50%) scale(var(--modal-scale-close));opacity:0;pointer-events:none;transition:transform var(--modal-close-dur) var(--modal-ease), opacity var(--modal-close-dur) var(--modal-ease)}.desktop-window[data-maximized=true].t-modal.is-open{transform:none}.desktop-window[data-maximized=true].t-modal.is-closing{transform:scale(var(--modal-scale-close))}@media (prefers-reduced-motion:reduce){.t-modal{transition:none!important}}.desktop-window-titlebar{color:#fff;cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;background:navy;justify-content:space-between;align-items:center;min-height:24px;padding:2px 3px 2px 7px;font-size:13px;display:flex}.desktop-window-controls{gap:2px;display:inline-flex}.desktop-window-titlebar button{color:#111;cursor:default;background:silver;border:2px outset #dfdfdf;width:18px;height:18px;padding:0;font:700 13px/12px Arial,sans-serif}.desktop-window-titlebar button:active{border-style:inset}.window-control-glyph--minimize{display:inline-block;transform:translateY(-2px)}.desktop-window-body{align-items:center;gap:16px;min-height:150px;padding:28px;font-size:14px;display:flex}.desktop-window-body img{width:32px;height:32px;image-rendering:pixelated}.contact-card.contact-exe-card{background:#efefef;grid-template-columns:minmax(150px,.72fr) minmax(0,1.35fr) minmax(150px,.75fr);min-height:300px}.contact-exe-portrait{background:#d8d2ea;border-right:1px solid #777;align-content:start;justify-items:center;gap:14px;padding:22px 14px 18px;display:grid}.contact-exe-portrait-frame{color:#222;text-align:center;background:#b9b1d8;border:2px solid navy;width:132px;height:168px;padding:0;font:10px/1.2 MS Sans Serif,Tahoma,sans-serif;display:block;overflow:hidden}.contact-exe-portrait-frame img{object-fit:cover;object-position:center 35%;background:#fff;border:0;width:100%;height:100%;padding:0;display:block}.contact-exe-details{background:#f7f7f3;align-content:start;gap:0;padding:22px 20px 18px;display:grid}.contact-exe-details h2{color:#111;letter-spacing:0;margin:0;font-size:25px}.contact-exe-role{color:navy;margin:4px 0 0;font-size:14px}.contact-exe-rule{border-top:1px dashed #555;margin:18px 0 12px}.contact-exe-facts{gap:11px;margin:0;display:grid}.contact-exe-facts>div{grid-template-columns:22px minmax(0,1fr);gap:8px;display:grid}.contact-exe-facts dt{color:#555;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.contact-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:14px;height:14px}.contact-exe-facts dd{color:#222;margin:0;font-size:12px}.contact-exe-facts a{color:navy}.contact-card-email.contact-exe-email{flex-direction:column;align-items:stretch;gap:6px;margin-top:20px}.contact-exe-email button{justify-content:center;align-items:center;gap:7px;padding:7px 10px;font-weight:700;display:inline-flex}.contact-copy-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.contact-exe-social{background:#e7e7e7;border-left:1px dashed #777;align-content:start;gap:12px;padding:20px 14px;display:grid}.contact-exe-social h3{color:#111;text-transform:uppercase;margin:0;font-size:15px}.contact-exe-social-links{gap:8px;display:grid}.contact-exe-social-links a{color:#111;background:#d4d0c8;border:2px outset #dfdfdf;align-items:center;gap:8px;padding:8px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.contact-exe-social-links a:hover{color:#fff;background:navy}.contact-exe-social-links span{color:#fff;background:#111;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.contact-exe-social-links span .contact-brand-icon{object-fit:contain;width:17px;height:17px;display:block}.contact-exe-social-links a:first-child span,.contact-exe-social-links a:nth-child(3) span,.contact-exe-social-links a:nth-child(4) span{background:#111}.contact-exe-social-links a:nth-child(2) span{background:#0a66c2}.contact-brand-icon-github,.contact-brand-icon-x,.contact-brand-icon-devpost{filter:invert()}.contact-brand-icon-linkedin{width:18px!important;height:18px!important}@media (width<=760px){.contact-card.contact-exe-card{grid-template-columns:1fr}.contact-exe-portrait{border-bottom:1px solid #777;border-right:0;grid-template-columns:auto 1fr;place-items:center start}.contact-exe-portrait-frame{width:96px;min-height:0}.contact-exe-portrait-frame img{width:64px;height:64px}.contact-exe-social{border-top:1px dashed #777;border-left:0}}.project-catalog,.experience-directory,.origin-reader,.contact-directory{background:#d4d0c8;align-items:stretch;gap:8px;padding:10px;display:grid}.project-catalog-toolbar,.origin-reader-toolbar{color:#fff;letter-spacing:.02em;background:navy;justify-content:space-between;align-items:center;min-height:25px;padding:3px 6px;font-size:12px;display:flex}.project-catalog-table-wrap{background:#fff;border:2px inset #fff;margin-top:8px;overflow-x:auto}.project-catalog table{border-collapse:collapse;color:#111;width:100%;min-width:520px;font-size:12px}.project-catalog th,.project-catalog td{text-align:left;vertical-align:middle;border-bottom:1px solid #b9b9b9;padding:7px 8px}.project-catalog th{color:#fff;background:#555;font-weight:700}.project-catalog tr[aria-selected=true] td{background:#dfe9ff}.project-catalog-select{color:navy;min-width:150px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:7px;padding:2px 4px;font-weight:700;display:inline-flex}.project-catalog-select[aria-pressed=true]{background:#fff;border-color:navy}.project-catalog-select img{object-fit:contain;width:28px;height:28px;image-rendering:pixelated}.project-catalog-meta{color:#444}.project-catalog-links,.desktop-preview-links{flex-wrap:wrap;gap:5px;display:flex}.project-catalog-links a,.desktop-preview-links a{color:navy;background:#d4d0c8;border:1px outset #fff;padding:2px 6px;font-size:11px;display:inline-block}.project-catalog-detail{background:#f7f7f7;border:2px inset #fff;grid-template-columns:130px minmax(0,1fr);gap:12px;margin-top:10px;padding:10px;display:grid}.project-catalog-detail-image,.experience-detail-icon{color:#555;text-align:center;background:#e8e8e8;border:1px solid #888;align-content:center;place-items:center;gap:5px;min-height:100px;font-size:10px;display:grid}.project-catalog-detail-image img,.experience-detail-icon img{object-fit:contain;width:56px;height:56px;image-rendering:pixelated}.project-catalog-detail h2,.experience-detail-copy h2{color:navy;margin:0 0 4px;font-size:18px}.experience-mode-switcher{background:silver;border:2px inset #fff;gap:4px;margin-bottom:8px;padding:4px;display:flex}.experience-mode-switcher button{color:#111;font:inherit;cursor:pointer;background:#d4d0c8;border:1px outset #fff;padding:5px 9px;font-size:11px}.experience-mode-switcher button[aria-selected=true]{color:navy;background:#fff;border-style:inset;font-weight:700}.experience-list{background:#f7f7f7;border:2px inset #fff;gap:3px;padding:7px;display:grid}.experience-list-row{color:#111;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:6px;display:grid}.experience-list-row[aria-pressed=true]{background:#dfe9ff;border-color:navy}.experience-list-date{color:#fff;background:navy;place-items:center;width:27px;height:22px;font-size:10px;display:grid}.experience-list-copy{gap:2px;display:grid}.experience-list-copy strong{color:navy;font-size:12px}.experience-list-copy small{color:#555;font-size:10px}.experience-detail{background:#fff;border:2px inset #fff;grid-template-columns:112px minmax(0,1fr);gap:11px;margin-top:9px;padding:9px;display:grid}.origin-reader-toolbar{justify-content:flex-start;gap:20px}.origin-reader-document{color:#222;background:#fff;border:2px inset #fff;max-width:760px;margin:10px auto 0;padding:24px 28px 30px;box-shadow:5px 5px #777}.origin-reader-file{color:#666;margin:0 0 13px;font-family:Courier New,monospace;font-size:11px}.origin-reader-document h2{color:navy;margin:0;font-family:Georgia,serif;font-size:27px;font-weight:700}.origin-reader-lede{color:#555;max-width:560px;margin:10px 0 22px;font-size:14px;line-height:1.55}.origin-reader-document section{border-top:1px solid #c8c8c8;margin-top:20px;padding-top:12px}.origin-reader-document h3{color:navy;margin:0 0 6px;font-size:14px}.origin-reader-document section p{color:#333;max-width:610px;margin:0;line-height:1.6}.contact-directory-panel{background:#fff;border:2px inset #fff;max-width:620px;margin:8px auto;padding:13px;box-shadow:5px 5px #888}.contact-directory-heading{border-bottom:1px solid #aaa;align-items:center;gap:12px;padding-bottom:11px;display:flex}.contact-directory-heading img{width:56px;height:56px;image-rendering:pixelated;background:#d4d0c8;border:1px solid #777;padding:5px}.contact-directory-heading h2{color:navy;margin:0 0 3px;font-size:19px}.contact-directory-heading p{color:#555;margin:0;font-size:11px}.contact-directory-list{margin:13px 0 0}.contact-directory-list>div{border-bottom:1px dotted #aaa;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:10px;padding:9px 0;display:grid}.contact-directory-list dt{color:#555;font-size:11px;font-weight:700}.contact-directory-list dd{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:12px;display:flex}.contact-directory-list a{color:navy}.contact-directory-list button{font:inherit;background:#d4d0c8;border:1px outset #fff;padding:3px 7px;font-size:10px}.contact-directory-copy-status{color:#006400;margin:10px 0 0;font-size:11px}.thoughts-window .desktop-picture-stage{color:#555;background:#f1f1f1;min-height:105px}.media-player-body{background:#d4d0c8;grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr);gap:10px;padding:10px;display:grid}.media-player-section{background:#f7f7f7;border:2px inset #fff;min-width:0;padding:8px}.media-player-section-heading{color:#fff;background:navy;border-bottom:1px solid #888;justify-content:space-between;align-items:baseline;gap:8px;margin:-8px -8px 9px;padding:5px 7px;display:flex}.media-player-section-heading h2{margin:0;font-size:13px}.media-player-section-heading span{color:#d9e4ff;font-size:10px}.guestbook-window .guestbook-messages,.guestbook-window .utility-form{background:#fff;border:2px inset #fff}@media (width<=760px){.project-catalog-detail,.experience-detail,.media-player-body{grid-template-columns:1fr}.origin-reader-document{padding:17px}}.media-player-body{grid-template-columns:1fr}.thoughts-window .desktop-picture-stage{color:#fff;background-color:#0b3c40;background-image:radial-gradient(#2b6668 1px,#0000 1px);background-size:8px 8px;min-height:190px}.thoughts-window .desktop-picture-stage img{width:76px;height:76px}.resume-window{width:min(900px,100vw - 32px)}.content-window{width:min(880px,100vw - 32px)}.projects-window{width:min(920px,100vw - 32px)}.hackathons-window{width:min(1020px,100vw - 32px)}.experience-window{width:min(1080px,100vw - 32px)}.thoughts-window{width:min(880px,100vw - 32px)}.origin-window{width:min(860px,100vw - 32px)}.contact-window{width:min(760px,100vw - 32px)}.surface-kicker{color:navy;letter-spacing:.08em;text-transform:uppercase;margin:0;font:700 11px/1.2 IBM Plex Mono,Courier New,monospace}.project-shelf,.experience-timeline,.experience-property-sheet,.contact-card-window{align-content:start;gap:14px;padding:16px;display:grid}.experience-timeline,.hackathons-archive{background:#d4d0c8;grid-template-columns:minmax(220px,.3fr) minmax(0,1fr);gap:16px;min-height:min(66vh,600px);padding:16px;display:grid}.hackathons-win-list{background:#d4d0c8;border:2px inset #fff;align-content:start;min-width:0;padding:9px;display:grid;transform:translateY(-12px)}.hackathons-win-list-heading{color:#fff;letter-spacing:.06em;background:navy;border:2px outset #fff;padding:8px 9px;font:700 13px IBM Plex Mono,Courier New,monospace}.hackathons-win-list-items{gap:7px;margin-top:10px;display:grid}.hackathons-win-record{color:#222;text-align:left;cursor:pointer;background:#d4d0c8;border:2px outset #fff;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-height:45px;padding:4px 7px;font:700 12px Arial,sans-serif;display:grid}.hackathons-win-record img{width:32px;height:32px;image-rendering:pixelated}.hackathons-win-record[aria-pressed=true]{color:#fff;background:navy;border-style:inset}.hackathons-certificate{align-content:center;gap:14px;min-width:0;display:grid}.hackathons-certificate-sheet{background:#f7f7f7;border:5px double #555;outline:2px solid #fff;align-content:start;justify-items:center;min-height:390px;padding:26px 38px 30px;display:grid;box-shadow:inset 0 0 0 1px #111}.hackathons-certificate-icon{width:48px;height:48px;image-rendering:pixelated}.hackathons-placement{color:#111;text-transform:uppercase;margin:20px 0 14px;font:700 31px IBM Plex Mono,Courier New,monospace}.hackathons-certificate-rule{background:#111;width:min(440px,100%);height:2px;margin-bottom:22px;box-shadow:0 2px #fff}.hackathons-certificate-fields{gap:13px;width:min(560px,100%);display:grid}.hackathons-certificate-fields>div{color:#111;grid-template-columns:124px minmax(0,1fr);align-items:start;gap:12px;font-size:14px;display:grid}.hackathons-certificate-fields span{font-weight:700}.hackathons-certificate-fields strong{font-weight:400}.hackathons-certificate-fields a{color:navy}.hackathons-links{justify-content:center;gap:22px;display:flex}.hackathons-links a{color:navy;text-align:center;background:#d4d0c8;border:2px outset #fff;min-width:122px;padding:8px 14px;font-weight:700}.hackathons-links a:active{border-style:inset}.experience-property-sheet{min-height:min(66vh,600px)}.project-shelf{background:linear-gradient(135deg,#ffffffb3,#0000 38%),#d4d0c8;gap:10px;padding:10px 16px 16px}.project-shelf-header,.experience-header{border-bottom:2px solid gray;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:6px;display:flex}.project-shelf-controls{grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;display:grid}.project-shelf-nav{color:navy;background:silver;border:2px outset #dfdfdf;width:34px;height:26px;padding:0;font-size:12px;line-height:1}.project-shelf-nav:active{border-style:inset}.project-shelf-count{color:#555;text-align:center;font:11px IBM Plex Mono,Courier New,monospace}.project-shelf-subtitle,.experience-subtitle{color:#333;margin:4px 0 0;font-size:12px}.project-shelf-counter,.experience-range{color:#555;white-space:nowrap;background:#fff;border:2px inset #dfdfdf;padding:4px 7px;font:11px IBM Plex Mono,Courier New,monospace}.experience-mode-switcher{background:silver;border:2px inset #dfdfdf;gap:3px;padding:2px;display:inline-flex}.experience-mode-switcher button{color:#111;background:0 0;border:1px solid #0000;padding:4px 8px;font:11px Arial,sans-serif}.experience-mode-switcher button[aria-selected=true]{color:#fff;background:navy;border:2px inset #dfdfdf;font-weight:700}.project-shelf-rail{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.project-shelf-item{color:#111;text-align:left;background:silver;border:2px outset #dfdfdf;grid-template-columns:auto 48px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:7px;display:grid}.project-shelf-item:hover,.project-shelf-item:focus-visible{outline-offset:-4px;outline:1px dotted #000}.project-shelf-item[aria-pressed=true]{color:#fff;background:navy;border-style:inset}.project-shelf-index{color:#555;align-self:start;font:10px IBM Plex Mono,Courier New,monospace}.project-shelf-item[aria-pressed=true] .project-shelf-index{color:#b6c7ff}.project-shelf-thumb{background:#fff;border:2px inset #dfdfdf;place-items:center;width:44px;height:44px;display:grid}.project-shelf-thumb img{width:32px;height:32px;image-rendering:pixelated}.project-shelf-label{gap:3px;min-width:0;display:grid}.project-shelf-label strong,.project-shelf-label small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-shelf-label strong{font-size:12px}.project-shelf-label small{color:#333;font-size:10px}.project-shelf-item[aria-pressed=true] .project-shelf-label small{color:#e5e5ff}.project-feature{background:#fff;border:2px inset #dfdfdf;grid-template-columns:minmax(270px,.9fr) minmax(0,1.1fr);gap:16px;min-height:300px;padding:10px;display:grid}.project-feature-report{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:220px}.project-feature-report .project-feature-copy{align-content:start;padding:20px 24px}.project-feature-meta{border-left:1px dotted gray;align-content:start;gap:18px;min-width:0;padding:20px 24px;display:grid}.project-feature-meta-label{color:navy;text-transform:uppercase;font:11px IBM Plex Mono,Courier New,monospace;display:block}.project-feature-meta p{color:#333;margin:4px 0 0;font-size:12px;line-height:1.45}.project-feature-meta p a{color:navy;text-decoration:underline}.project-feature-picture{background:#000;border:2px solid #000;grid-template-rows:auto minmax(0,1fr);min-height:270px;display:grid}.project-feature-titlebar{color:#fff;background:navy;padding:5px 7px;font:700 11px Arial,sans-serif}.project-feature-stage{color:#fff;text-align:center;background:linear-gradient(140deg,#008080e6,#000080e6),teal;align-content:center;place-items:center;gap:10px;min-height:240px;padding:18px;display:grid;position:relative;overflow:hidden}.project-feature-stage:after{content:"";pointer-events:none;border:1px solid #ffffff8c;position:absolute;inset:12px}.project-feature-stage img{z-index:1;width:92px;height:92px;image-rendering:pixelated;background:#fff;border:2px outset #dfdfdf;padding:12px;position:relative}.project-feature-coordinate,.project-feature-placeholder{z-index:1;letter-spacing:.05em;text-transform:uppercase;font:10px IBM Plex Mono,Courier New,monospace;position:relative}.project-feature-coordinate{color:#b6ffff;align-self:start}.project-feature-placeholder{color:#fff}.project-feature-copy{align-content:center;min-width:0;padding:8px;display:grid}.project-feature-copy h2,.project-feature-copy p{margin:0}.project-feature-copy h2{color:navy;margin-top:6px;font-size:26px}.project-feature-report .project-feature-copy h2{margin-top:0}.project-feature-report .desktop-preview-meta{margin-top:6px!important}.project-feature-achievement{font-weight:700;color:navy!important}.project-feature-has-achievement .project-feature-meta>.desktop-preview-links{position:relative;top:16px}.project-feature-edith .project-feature-meta>.desktop-preview-links{top:16px}.project-feature-ante .project-feature-meta>.desktop-preview-links{top:36px}.project-feature-muse .project-feature-meta>.desktop-preview-links{top:12px}.project-feature-artki .project-feature-meta>.desktop-preview-links{top:32px}.project-feature-penetra .project-feature-meta>.desktop-preview-links{top:72px}.project-feature-copy>p:not(.surface-kicker):not(.desktop-preview-meta){color:#222;max-width:48ch;margin-top:12px;font-size:14px;line-height:1.45}.experience-timeline{background:#efefef}.experience-track{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 0 5px;display:grid;position:relative}.experience-track-line{background:navy;height:3px;position:absolute;top:27px;left:8%;right:8%}.experience-stop{z-index:1;color:#111;text-align:center;background:0 0;border:0;justify-items:center;gap:7px;min-width:0;padding:0 4px;display:grid;position:relative}.experience-stop-marker{color:navy;background:silver;border:2px outset #dfdfdf;border-radius:50%;place-items:center;width:28px;height:28px;font:700 12px Arial,sans-serif;display:grid}.experience-stop[aria-pressed=true] .experience-stop-marker{color:#fff;background:navy;border-style:inset}.experience-stop-copy{gap:3px;min-width:0;display:grid}.experience-stop-copy strong,.experience-stop-copy small{text-overflow:ellipsis;overflow:hidden}.experience-stop-copy strong{font-size:11px}.experience-stop-copy small{color:#555;font-size:10px;line-height:1.2}.experience-stop[aria-pressed=true] .experience-stop-copy strong{color:navy}.experience-detail{background:#fff;border:2px inset #dfdfdf;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:16px;min-height:190px;padding:14px;display:grid}.experience-detail-icon{color:navy;text-align:center;background:#d4d0c8;border:2px solid navy;justify-items:center;gap:6px;padding:10px;font:700 10px IBM Plex Mono,Courier New,monospace;display:grid}.experience-detail-icon img{width:68px;height:68px;image-rendering:pixelated;background:#fff;border:2px outset #dfdfdf;padding:9px}.experience-detail-copy h2,.experience-detail-copy p{margin:0}.experience-detail-copy h2{color:navy;margin-top:5px;font-size:21px}.experience-detail-copy>p:not(.surface-kicker):not(.desktop-preview-meta){max-width:66ch;margin-top:10px;font-size:13px;line-height:1.4}.experience-property-sheet{background:#d4d0c8;gap:10px;padding:16px}.experience-property-main{background:#d4d0c8;border:2px inset #fff;grid-template-columns:minmax(300px,.4fr) minmax(0,1fr);gap:22px;min-height:385px;padding:24px 18px 22px;display:grid}.experience-record-list{background:#fff;border:2px inset #fff;align-content:start;gap:10px;padding:10px;display:grid}.experience-record{color:#222;min-height:36px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:10px;padding:0;display:grid}.experience-record:hover .experience-record-copy,.experience-record[aria-pressed=true] .experience-record-copy{background:#bcbcbc}.experience-record-radio{background:#f7f7f7;border:2px solid #222;border-radius:50%;width:25px;height:25px;display:block}.experience-record[aria-pressed=true] .experience-record-radio{background:radial-gradient(circle,#222 0 5px,#f7f7f7 6px 100%);border-color:#222}.experience-record-copy{background:#d4d0c8;border:1px solid silver;align-content:center;gap:3px;min-width:0;min-height:30px;padding:4px 8px;display:grid}.experience-record-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.experience-record-copy strong{color:#333;font-size:12px;line-height:1.2}.experience-record-copy small{color:#666;font-size:10px}.experience-property-form{align-content:start;min-width:0;padding:0 6px 0 0;display:grid}.experience-property-heading{align-items:center;min-height:44px;display:flex}.experience-property-heading h2{color:#111;margin:0;font-size:28px;line-height:1}.experience-property-rule{background:gray;height:2px;margin:10px 0 18px;box-shadow:0 1px #fff}.experience-property-fields{gap:14px;display:grid}.experience-property-fields label{color:#222;grid-template-columns:122px minmax(0,1fr);align-items:center;gap:12px;font-size:14px;display:grid}.experience-property-fields label>span{font-weight:700}.experience-property-fields input,.experience-property-fields textarea{box-sizing:border-box;color:#222;background:#fff;border:2px inset #fff;border-radius:0;width:100%;font:14px Arial,sans-serif}.experience-property-fields input{height:36px;padding:5px 8px}.experience-property-fields textarea{resize:vertical;min-height:118px;padding:8px;line-height:1.4}.experience-property-description{align-items:start!important}.origin-terminal{color:#b4f7d2;background:#101010;gap:0;padding:0;font-family:IBM Plex Mono,Courier New,monospace;display:grid}.origin-terminal-header{background:#18231b;border-bottom:2px solid #355c3f;align-items:center;gap:10px;padding:12px 14px;display:flex}.origin-terminal-header .surface-kicker{color:#b4f7d2}.origin-terminal-header p:last-child{color:#6d987a;margin:3px 0 0;font-size:11px}.origin-terminal-led{background:#55e884;border:2px solid #b4f7d2;border-radius:50%;width:12px;height:12px;box-shadow:0 0 8px #55e884b3}.origin-terminal-screen{color:#b4f7d2;background:linear-gradient(#101010eb,#101010eb),repeating-linear-gradient(0deg,#0000 0 19px,#b4f7d214 20px);min-height:300px;max-height:min(68vh,640px);padding:20px;font-size:12px;line-height:1.6;overflow-y:auto}.origin-terminal-screen p{max-width:66ch;margin:0 0 13px}.origin-article-topline{color:#6d987a;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid #355c3f;justify-content:space-between;gap:12px;margin-bottom:22px;padding-bottom:7px;font-size:10px;display:flex}.origin-terminal-screen h2,.origin-terminal-screen h3{color:#d5ffe2;margin:0;font-family:Arial,sans-serif}.origin-terminal-screen h2{max-width:16ch;font-size:clamp(24px,4vw,38px);line-height:1.05}.origin-terminal-screen h3{margin-top:4px;font-size:18px}.origin-article-lede{color:#b4f7d2;font-size:14px;line-height:1.5;margin-top:14px!important}.origin-article-chapter{border-top:1px solid #355c3f;border-left:3px solid #55e884;margin-top:26px;padding:13px 0 0 15px}.origin-article-chapter p:last-child{color:#d5ffe2;margin-top:9px;line-height:1.55}.origin-article-chapter-label{color:#55e884;letter-spacing:.08em;font-size:10px;margin-bottom:0!important}.origin-terminal-prompt{color:#55e884}.origin-terminal-output{color:#d5ffe2}.origin-terminal-cursor{color:#55e884;animation:1s steps(2,start) infinite origin-blink}@keyframes origin-blink{50%{opacity:0}}.origin-reader{color:#111;background:silver;gap:0;padding:0;font-family:Arial,sans-serif;display:grid}.origin-reader-menu{background:silver;border-bottom:1px solid gray;gap:18px;padding:4px 8px;font-size:12px;display:flex}.origin-reader-menu span:first-letter{text-decoration:underline}.origin-reader-toolbar{background:#d4d0c8;border-bottom:2px inset #fff;align-items:center;gap:4px;min-height:38px;padding:4px 7px;display:flex}.origin-reader-toolbar button{color:#111;background:silver;border:2px outset #dfdfdf;min-width:48px;min-height:27px;padding:3px 7px;font:11px Arial,sans-serif}.origin-reader-toolbar button:active{border-style:inset}.origin-reader-toolbar-divider{border-left:1px solid gray;border-right:1px solid #fff;width:1px;height:24px;margin:0 5px}.origin-reader-chapters{background:#d4d0c8;border-bottom:1px solid gray;gap:2px;padding:7px 9px 0;display:flex;overflow-x:auto}.origin-reader-chapters a{color:navy;background:silver;border:2px outset #dfdfdf;border-bottom:0;flex:none;padding:6px 12px 7px;font-size:11px;text-decoration:none}.origin-reader-chapters a:first-child{z-index:1;background:#fff;border-bottom:1px solid #fff;margin-bottom:-1px;font-weight:700;position:relative}.origin-reader-document{color:#111;width:auto;max-width:none;max-height:min(68vh,640px);box-shadow:none;background:#fff;border:2px inset #fff;margin:8px;padding:20px 28px 34px;font:13px/1.4 Arial,sans-serif;overflow-y:auto}.origin-reader-heading{display:none}.origin-reader-heading .surface-kicker{color:navy;font-size:11px}.origin-reader-file{color:#555;margin:0;font:11px Courier New,monospace}.origin-reader-document h2{color:#111;margin:0 0 12px;font:700 18px/1.2 Arial,sans-serif}.origin-reader-photo{aspect-ratio:2.15;background:silver;border:2px inset #fff;margin:0 0 18px;padding:4px;overflow:hidden}.origin-reader-photo img{object-fit:cover;object-position:center bottom;image-rendering:auto;width:100%;height:100%;display:block}.origin-reader-document>p{display:none}.origin-reader-document p{max-width:none;margin:0 0 11px}.origin-reader-document .origin-article-lede{color:#111;margin-top:0;font-size:13px;line-height:1.4}.origin-reader-document .origin-article-chapter{border-top:0;border-left:0;margin-top:22px;padding:0;scroll-margin-top:12px}.origin-reader-document .origin-article-chapter-label{color:navy;letter-spacing:.08em;margin-bottom:4px;font:700 11px Courier New,monospace}.origin-reader-document .origin-article-chapter h3{color:#111;margin:0 0 5px;font:700 15px/1.2 Arial,sans-serif}.origin-reader-document .origin-article-chapter p:last-child{color:#222;margin-top:0;line-height:1.65}.origin-reader-status{color:#333;background:silver;border-top:2px outset #dfdfdf;padding:4px 8px;font:11px Courier New,monospace}.contact-card-window{background:#d4d0c8;min-height:0;padding:18px}.contact-card{background:#f4f0e7;border:2px solid #000;grid-template-columns:minmax(190px,.72fr) minmax(0,1.28fr);min-height:300px;display:grid;box-shadow:7px 7px #00000040}.contact-card-face{color:#fff;background:linear-gradient(145deg,#ffffff42,#0000 55%),navy;align-content:space-between;gap:16px;padding:18px;display:grid}.contact-card-photo{color:#fff;text-align:center;background:teal;border:2px solid #fff;justify-items:center;gap:10px;padding:14px 8px;font:700 10px/1.3 IBM Plex Mono,Courier New,monospace;display:grid}.contact-card-photo img{width:92px;height:92px;image-rendering:pixelated;background:#fff;border:2px outset #dfdfdf;padding:12px}.contact-card-stamp{letter-spacing:.06em;margin:0;font:700 16px/1.25 IBM Plex Mono,Courier New,monospace}.contact-card-stamp small{color:#b6ffff;letter-spacing:.02em;font-size:9px}.contact-card-info{align-content:center;gap:9px;padding:24px;display:grid}.contact-card-info h2,.contact-card-info p{margin:0}.contact-card-info h2{color:navy;font-size:24px}.contact-card-copy{color:#333;max-width:48ch;font-size:13px;line-height:1.45}.contact-card-email{color:#111;background:#fff;border:2px inset #dfdfdf;justify-content:space-between;align-items:center;gap:8px;padding:7px 8px;font:12px IBM Plex Mono,Courier New,monospace;display:flex}.contact-card-email span{text-overflow:ellipsis;overflow:hidden}.contact-card-email button,.contact-card-links a{color:navy;background:silver;border:2px outset #dfdfdf;flex:none;padding:5px 9px;font:700 11px Arial,sans-serif}.contact-card-email button:active,.contact-card-links a:active{border-style:inset}.contact-card-status{color:#006b2d;font-size:11px;font-weight:700}.contact-card-links{flex-wrap:wrap;gap:7px;display:flex}.desktop-explorer{box-sizing:border-box;background:silver;flex-direction:column;align-items:stretch;height:min(66vh,560px);min-height:min(66vh,560px);padding:0;display:flex}.desktop-explorer-content{flex:1;grid-template-columns:240px minmax(0,1fr);min-height:0;display:grid}.desktop-explorer-sidebar{background:#d4d0c8;border-right:2px inset #dfdfdf;min-width:0;padding:10px;overflow-y:auto}.desktop-explorer-sidebar-title{color:navy;text-transform:uppercase;margin:0 0 7px;font:700 11px Arial,sans-serif}.desktop-explorer-items{gap:6px;display:grid}.desktop-explorer-item{color:#111;text-align:left;cursor:default;background:0 0;border:2px solid #0000;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;width:100%;padding:6px;display:grid}.desktop-explorer-item:hover,.desktop-explorer-item:focus-visible{border-color:navy;outline:0}.desktop-explorer-item[aria-pressed=true]{color:#fff;background:navy;border-color:navy}.desktop-explorer-item span{gap:3px;min-width:0;display:grid}.desktop-explorer-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.desktop-explorer-item small{color:#333;text-overflow:ellipsis;font-size:10px;line-height:1.2;overflow:hidden}.desktop-explorer-item[aria-pressed=true] small{color:#e5e5ff}.desktop-explorer-preview{background:#fff;align-content:start;gap:12px;min-width:0;padding:14px;display:grid;overflow-y:auto}.desktop-picture-frame{background:gray;border:2px inset #dfdfdf}.desktop-picture-stage{color:#fff;text-transform:uppercase;background-color:#0b3c40;background-image:radial-gradient(#2b6668 1px,#0000 1px);background-size:8px 8px;align-content:center;place-items:center;gap:8px;min-height:190px;padding:18px;font:11px IBM Plex Mono,Courier New,monospace;display:grid}.desktop-picture-stage img{width:76px;height:76px;image-rendering:pixelated;background:#fff;border:2px outset #dfdfdf;padding:8px}.desktop-picture-stage[data-image-layout=banner]{padding:0}.desktop-picture-stage[data-image-layout=banner] img{object-fit:cover;image-rendering:auto;border:0;width:100%;height:190px;padding:0;display:block}.desktop-picture-stage[data-image-layout=banner] span{display:none}.desktop-preview-copy h2,.desktop-preview-copy p{margin:0}.desktop-preview-copy h2{color:navy;font-size:20px}.desktop-preview-meta{color:#333;font-size:11px;font-weight:700;margin-top:4px!important}.desktop-preview-copy>p:not(.desktop-preview-meta){color:#222;max-width:62ch;margin-top:9px;font-size:13px;line-height:1.4}.desktop-thought-article{color:#222;max-width:72ch;margin-top:9px;font-size:13px;line-height:1.5}.desktop-thought-article p{margin:0 0 13px}.desktop-thought-article p:last-child{margin-bottom:0}.desktop-thought-article strong{color:navy}.desktop-preview-links{flex-wrap:wrap;gap:7px;margin-top:13px;display:flex}.desktop-preview-links a{color:navy;background:silver;border:2px outset #dfdfdf;padding:5px 12px;font:700 12px Arial,sans-serif;text-decoration:underline}.desktop-preview-links a:active{border-style:inset}.resume-window-body{padding:0;display:block}.resume-pdf{background:#fff;border:0;width:100%;height:min(78vh,820px);display:block}.resume-pdf-link{color:navy;text-align:right;background:silver;padding:7px 10px;font-size:12px;display:block}@media (width<=600px){.resume-window{width:calc(100vw - 16px)}.resume-window-body{padding:0}.resume-pdf{height:min(70vh,640px)}.content-window{width:calc(100vw - 16px)}.desktop-explorer{height:auto;min-height:0}.desktop-explorer-content{grid-template-columns:1fr}.desktop-explorer-sidebar{border-bottom:2px inset #dfdfdf;border-right:0;max-height:180px}.desktop-explorer-items{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-explorer-preview{padding:10px}.desktop-picture-stage{min-height:150px}}.desktop-context-menu{z-index:11;background:silver;border:2px outset #dfdfdf;width:150px;padding:3px;display:grid;position:absolute;box-shadow:2px 2px #00000073}.desktop-context-menu-item{color:#111;text-align:left;background:0 0;border:1px solid #0000;padding:5px 9px;font:12px Arial,sans-serif}.desktop-context-menu-item:hover,.desktop-context-menu-item:focus-visible{color:#fff;background:navy;border-color:#fff;outline:1px dotted #000}.utility-window{width:min(480px,100vw - 32px)}.personalization-window{width:min(720px,100vw - 32px)}.personalization-window .desktop-window-titlebar{background:navy}.personalization-body{color:#111;background:#d4d0c8;gap:12px;padding:12px;display:grid}.personalization-heading,.personalization-section-heading,.personalization-footer{align-items:center;gap:10px;display:flex}.personalization-heading{justify-content:space-between;padding:4px 3px 0}.personalization-heading h2,.personalization-heading p,.personalization-preview-copy h3,.personalization-preview-copy p,.personalization-section-heading h3,.personalization-section-heading span{margin:0}.personalization-heading h2{color:navy;margin-top:2px;font-size:22px}.personalization-heading p:last-child{color:#444;margin-top:5px;font-size:12px}.personalization-status{color:#555;text-transform:uppercase;align-self:end;font:10px Courier New,monospace}.personalization-preview-panel{background:#efefef;border:2px inset #dfdfdf;grid-template-columns:minmax(0,1.65fr) minmax(150px,.7fr);gap:12px;padding:10px;display:grid}.personalization-preview-monitor{background:silver;border:3px outset #dfdfdf;overflow:hidden}.personalization-preview-titlebar{color:#fff;background:navy;padding:3px 6px;font:700 11px Arial,sans-serif}.personalization-preview-screen{background-position:50%;background-size:cover;border-top:2px inset #dfdfdf;min-height:156px;position:relative;overflow:hidden}.personalization-preview-screen:after{content:"";pointer-events:none;background:#0018181a;position:absolute;inset:0}.personalization-preview-icons{z-index:1;color:#fff;text-shadow:1px 1px #000;gap:7px;font:9px Arial,sans-serif;display:grid;position:absolute;top:9px;left:9px}.personalization-preview-icons span:before{content:"";background:silver;border:1px solid #fff;width:19px;height:19px;margin-bottom:2px;display:block}.personalization-preview-taskbar{z-index:1;color:#111;background:silver;border-top:2px outset #dfdfdf;align-items:center;gap:6px;height:22px;padding:2px 4px;font-size:9px;display:flex;position:absolute;bottom:0;left:0;right:0}.personalization-preview-taskbar b,.personalization-preview-taskbar span{background:silver;border:1px outset #dfdfdf;padding:2px 5px}.personalization-preview-taskbar i{flex:1}.personalization-preview-copy{align-self:center;padding:6px}.personalization-preview-copy h3{color:navy;margin-top:4px;font-size:17px}.personalization-preview-copy p:last-child{color:#555;margin-top:8px;font-size:11px;line-height:1.4}.personalization-gallery{background:#efefef;border:2px inset #dfdfdf;padding:9px}.personalization-section-heading{justify-content:space-between;margin-bottom:8px}.personalization-section-heading h3{color:navy;font-size:14px}.personalization-section-heading span{color:#555;font-size:10px}.personalization-wallpaper-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.personalization-wallpaper-choice{color:#111;text-align:left;background:silver;border:2px outset #dfdfdf;gap:5px;min-width:0;padding:4px;font:11px Arial,sans-serif;display:grid}.personalization-wallpaper-choice:active,.personalization-wallpaper-choice[aria-pressed=true]{border-style:inset}.personalization-wallpaper-choice[aria-pressed=true]{color:navy;background:#dfe9ff;font-weight:700}.personalization-wallpaper-thumb{aspect-ratio:16/9;background:teal;border:2px inset #dfdfdf;display:block;position:relative;overflow:hidden}.personalization-wallpaper-thumb img{object-fit:cover;width:100%;height:100%;display:block}.personalization-wallpaper-thumb strong{color:#fff;background:navy;border:2px outset #dfdfdf;place-items:center;width:18px;height:18px;font-size:12px;display:grid;position:absolute;top:4px;right:4px}.personalization-footer{color:#333;background:silver;border:2px inset #dfdfdf;min-height:25px;padding:3px 6px;font-size:10px}.personalization-footer-icon{color:navy;font-size:14px}.personalization-footer-spacer{flex:1}.guestbook-window{width:min(760px,100vw - 32px)}.media-player-window{width:min(560px,100vw - 32px)}.guestbook-window .desktop-window-titlebar{background:navy}.media-player-window .desktop-window-titlebar{background:#5b2a86}.media-player-window .soundtrack-panel{background:#efe6f5;border-color:#7b4fa1}.guestbook-window .guestbook-body{background:#d4d0c8}.readme-window{width:min(560px,100vw - 32px)}.readme-window .utility-window-body{gap:0;padding:12px}.readme-document{color:#111;background:#fff;border:2px inset #dfdfdf;max-height:min(560px,100vh - 120px);padding:14px;font:12px/1.45 Courier New,monospace;overflow-y:auto}.readme-document h1,.readme-document h2{color:navy;margin:0}.readme-document h1{margin-bottom:12px;font-size:17px}.readme-document h2{border-bottom:1px solid silver;margin-top:14px;font-size:13px}.readme-document p{margin:8px 0 0}.readme-document ul{margin:7px 0 0;padding-left:22px}.readme-document li+li{margin-top:5px}.readme-footer{color:#555;font-style:italic}.utility-window-body,.control-panel-body{gap:12px;padding:20px;font-size:13px;display:grid}.guestbook-body{gap:8px;max-height:min(620px,100vh - 90px);padding:10px;overflow:hidden}.guestbook-toolbar{background:silver;border:2px outset #dfdfdf;gap:4px;padding:4px;display:flex}.guestbook-toolbar+.guestbook-messages,.guestbook-toolbar+.guestbook-write{margin-top:0}.guestbook-toolbar button,.guestbook-window-actions button{color:#111;background:silver;border:2px outset #dfdfdf;padding:4px 9px;font:11px Arial,sans-serif}.guestbook-toolbar button:active,.guestbook-window-actions button:active{border-style:inset}.guestbook-messages{background:#fff;border:2px inset #fff;min-height:360px;overflow:hidden}.guestbook-messages-heading{color:navy;background:#d9d9ee;border-bottom:1px solid gray;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;display:flex}.guestbook-messages-heading p{margin:0}.guestbook-messages-heading strong{font-size:13px}.guestbook-messages-heading span{color:#444;font-size:11px}.guestbook-messages-heading button{color:#111;background:silver;border:2px outset #dfdfdf;flex:none;padding:3px 8px;font:11px Arial,sans-serif}.guestbook-message{color:#111;background:#fff;border:0;border-bottom:1px dashed gray;padding:10px 8px}.guestbook-message:last-child{border-bottom:0}.guestbook-message-list{max-height:410px;padding:2px 9px;overflow-y:auto}.guestbook-message-meta{color:navy;justify-content:space-between;gap:8px;font-size:12px;display:flex}.guestbook-message-meta time{color:teal;font-size:11px}.guestbook-message p{white-space:pre-wrap;margin:5px 0 0;line-height:1.35}.guestbook-empty{color:#555;margin:0}.guestbook-write{background:#d4d0c8;border:2px inset #fff;gap:8px;min-height:360px;padding:10px;display:grid;overflow-y:auto}.guestbook-compose-heading{color:navy;background:#d9d9ee;border:1px solid gray;padding:7px 9px;font-size:13px;font-weight:700}.guestbook-review-note{color:#333;background:#d8eeee;border:1px solid gray;margin:0;padding:7px 9px;font-size:11px}.guestbook-write .utility-form{background:#efefef;border:2px inset #fff;gap:10px;padding:12px;display:grid}.guestbook-write .utility-form label{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:8px}.guestbook-write .utility-form label:nth-of-type(2){align-items:start}.guestbook-write .utility-form textarea{min-height:155px}.guestbook-write .utility-window-actions{border-top:1px solid gray;justify-content:flex-end;padding-top:8px}@media (width<=620px){.guestbook-window{width:calc(100vw - 16px)}.guestbook-toolbar{flex-wrap:wrap}.guestbook-write .utility-form label{grid-template-columns:1fr;gap:4px}}.media-player-body{max-height:min(620px,100vh - 100px);overflow-y:auto}.media-player-tabs{border-bottom:2px solid gray;gap:3px;display:flex}.media-player-tab{color:#111;background:silver;border:2px outset #dfdfdf;border-bottom:0;padding:6px 10px;font:11px Arial,sans-serif}.media-player-tab[aria-selected=true]{z-index:1;color:#5b2a86;background:#d4d0c8;border-bottom:2px solid #d4d0c8;margin-bottom:-2px;font-weight:700;position:relative}.media-player-tab:active{border-style:inset}.media-player-body>[role=tabpanel]{min-width:0}.song-request-panel{background:#d4d0c8;border:2px inset #fff;gap:0;display:grid}.song-request-heading{color:navy;background:#d9d9ee;border-bottom:1px solid gray;padding:7px 9px;font-size:13px}.song-request-form{gap:10px;padding:12px;display:grid}.song-request-required-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.song-request-form textarea{min-height:82px}.song-request-form .utility-window-actions{border-top:1px solid gray;margin-top:0;padding-top:8px}@media (width<=620px){.song-request-required-fields{grid-template-columns:1fr}}.soundtrack-panel{background:#efefef;border:2px inset #dfdfdf;gap:10px;padding:10px;display:grid}.soundtrack-now-playing{gap:10px;min-width:0;display:flex}.soundtrack-cover{color:#fff;text-align:center;text-shadow:1px 1px #000;background:linear-gradient(135deg,navy 0 46%,teal 46% 54%,silver 54% 100%);border:2px inset #dfdfdf;flex:0 0 72px;place-items:center;width:72px;height:72px;font:700 12px/1.1 Arial,sans-serif;display:grid}.soundtrack-cover img{object-fit:cover;width:100%;height:100%;display:block}.soundtrack-metadata{align-content:start;gap:2px;min-width:0;display:grid}.soundtrack-metadata strong,.soundtrack-metadata span,.soundtrack-metadata small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.soundtrack-metadata strong{color:navy;font-size:14px}.soundtrack-kicker{color:#555;text-transform:uppercase;margin:0;font-size:10px;font-weight:700}.soundtrack-metadata small{color:#444}.soundtrack-count{margin-top:3px;font-size:11px;font-weight:700}.soundtrack-progress-row{color:#333;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:6px;font-size:10px;display:grid}.soundtrack-progress-row input{accent-color:navy;min-width:0}.soundtrack-transport{justify-content:center;gap:6px;display:flex}.soundtrack-transport button{color:#111;background:silver;border:2px outset #dfdfdf;min-height:24px;padding:3px 7px;font:11px Arial,sans-serif}.soundtrack-transport button:active{border-style:inset}.soundtrack-error{color:#8b0000;margin:0;font-weight:700}.soundtrack-queue{background:#fff;border:2px inset #dfdfdf;max-height:146px;display:grid;overflow-y:auto}.soundtrack-queue-row{color:#111;grid-template-columns:26px minmax(0,1fr) minmax(0,.8fr);gap:6px;padding:3px 5px;font-size:11px;display:grid}.soundtrack-queue-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.soundtrack-queue-row[aria-current=true]{color:#fff;background:navy}.utility-form label{gap:4px;font-weight:700;display:grid}.utility-form input,.utility-form textarea{color:#111;background:#fff;border:2px inset #dfdfdf;min-width:0;padding:5px;font:13px Arial,sans-serif}.utility-form textarea{resize:vertical;min-height:70px}.utility-window-actions,.moderation-actions{justify-content:flex-end;gap:7px;margin-top:4px;display:flex}.utility-window-actions button,.moderation-actions button,.user-choice-grid button{color:#111;background:silver;border:2px outset #dfdfdf;padding:5px 10px;font:12px Arial,sans-serif}.utility-window-actions button:active,.moderation-actions button:active,.user-choice-grid button:active{border-style:inset}.utility-error{color:#8b0000;font-weight:700}.utility-muted{color:#444;font-size:12px}.user-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.user-choice-grid button{justify-items:center;gap:6px;min-height:100px;display:grid}.user-choice-avatar{color:#fff;background:navy;border:2px outset #dfdfdf;place-items:center;width:34px;height:34px;font:700 18px Arial,sans-serif;display:grid}.user-choice-avatar-visitor{background:teal}.recent-document-list{margin:0;padding-left:20px}.control-panel-window{width:min(760px,100vw - 32px)}.control-panel-body{max-height:min(620px,100vh - 80px);overflow-y:auto}.control-panel-intro{margin:0}.control-panel-tabs{border-bottom:2px solid gray;gap:3px;display:flex}.control-panel-tab{color:#111;background:silver;border:2px outset #dfdfdf;border-bottom:0;padding:6px 10px;font:11px Arial,sans-serif}.control-panel-tab[aria-selected=true]{z-index:1;color:navy;background:silver;border-bottom:2px solid silver;margin-bottom:-2px;font-weight:700;position:relative}.control-panel-tab:active{border-style:inset}.moderation-section{gap:6px;display:grid}.moderation-section h2{color:navy;margin:0;font-size:13px}.moderation-empty{color:#555;background:#efefef;border:2px inset #dfdfdf;margin:0;padding:8px;font-size:12px}.moderation-list{gap:7px;max-height:210px;display:grid;overflow:auto}.moderation-card{background:#fff;border:2px inset #dfdfdf;gap:3px;padding:9px;display:grid;position:relative}.moderation-card p{margin:0}.moderation-card a{color:navy;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.moderation-card-status{color:#555;text-transform:uppercase;font-size:10px;position:absolute;top:7px;right:8px}@media (width<=600px){.desktop-shortcuts{inset:14px 8px 44px}.desktop-window-body{padding:20px}.resume-window-body,.desktop-explorer{padding:0}.projects-window,.hackathons-window,.experience-window,.thoughts-window,.origin-window,.contact-window{width:calc(100vw - 16px)}.project-shelf,.experience-timeline,.contact-card-window{min-height:0;padding:11px}.project-shelf-header,.experience-header{flex-direction:column;align-items:flex-start;gap:7px}.project-shelf-rail,.project-feature{grid-template-columns:1fr}.project-feature-meta{border-top:1px dotted gray;border-left:0;padding:12px 0 0}.project-feature-has-achievement .project-feature-meta>.desktop-preview-links{top:0}.project-feature-picture{min-height:230px}.project-feature-stage{min-height:180px}.project-feature-copy h2{font-size:22px}.experience-track{grid-template-columns:1fr;gap:7px;padding:0 0 0 10px}.experience-track-line{width:3px;height:auto;top:8px;bottom:8px;left:23px}.experience-stop{text-align:left;grid-template-columns:28px minmax(0,1fr);place-items:center start;gap:9px;padding:3px 0}.experience-detail{grid-template-columns:1fr;justify-items:start}.experience-property-sheet{min-height:0;padding:11px}.hackathons-archive{grid-template-columns:1fr;min-height:0;padding:11px}.hackathons-win-list-items{grid-template-columns:1fr 1fr}.hackathons-win-list{transform:none}.hackathons-certificate-sheet{min-height:0;padding:22px 15px 25px}.hackathons-placement{font-size:24px}.hackathons-certificate-fields>div{grid-template-columns:1fr;gap:4px}.hackathons-links{gap:8px}.hackathons-links a{flex:1;min-width:0}.experience-property-main{grid-template-columns:1fr;gap:14px;min-height:0;padding:14px}.experience-record-list{gap:4px;padding:0}.experience-record{min-height:34px}.experience-property-heading h2{font-size:23px}.experience-property-fields label{grid-template-columns:1fr;gap:5px}.origin-terminal-screen{min-height:0;padding:15px;font-size:11px}.contact-card{grid-template-columns:1fr;box-shadow:4px 4px #00000040}.contact-card-face{grid-template-columns:110px minmax(0,1fr);align-items:center;padding:11px}.contact-card-photo{padding:7px}.contact-card-photo img{width:62px;height:62px;padding:7px}.contact-card-info{padding:16px}.contact-card-info h2{font-size:20px}.contact-card-email{flex-direction:column;align-items:stretch}.personalization-preview-panel{grid-template-columns:1fr}.personalization-preview-screen{min-height:145px}.personalization-wallpaper-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.personalization-status{display:none}}.boot-sequence{color:#24f58a;background:#000;place-items:center;font-family:IBM Plex Mono,ui-monospace,Consolas,monospace;display:grid;position:absolute;inset:0;overflow:hidden}.boot-terminal{text-shadow:0 0 8px #24f58a38;width:min(840px,100vw - 48px);max-height:calc(100vh - 48px);padding:24px 0;font-size:clamp(14px,1.4vw,20px);line-height:1.6;overflow:auto}.boot-lines p{margin:0}.boot-line{animation:.36s cubic-bezier(.22,1,.36,1) both boot-line-in}@keyframes boot-line-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes boot-copy-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.boot-spacer{height:1.1em;display:block}.boot-name-label{animation:.62s cubic-bezier(.22,1,.36,1) both boot-copy-in;display:block}.boot-prompt-row{align-items:center;gap:.8ch;min-width:0;display:flex}.boot-input{box-sizing:border-box;width:100%;min-width:0;height:1.8em;color:inherit;font:inherit;caret-color:#24f58a;background:#24f58a0a;border:1px solid #24f58a94;border-radius:0;outline:0;flex:auto;padding:0 .6ch;animation:.5s cubic-bezier(.22,1,.36,1) both boot-input-in}.boot-input:focus-visible{outline-offset:1px;border-color:#24f58af2;outline:1px solid #24f58a47}.boot-launch-lines,.boot-launch-lines+p{margin-top:1.1em}.boot-welcome{color:#7dffb4;text-shadow:0 0 16px #7dffb461;font-size:1.08em;animation:1.2s cubic-bezier(.22,1,.36,1) both boot-welcome-in;margin-top:1.4em!important}@keyframes boot-welcome-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes boot-input-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.boot-sequence{text-shadow:none}.boot-line,.boot-name-label,.boot-input,.boot-welcome{animation:none}}.intro-experience{isolation:isolate;background:#050604;width:100%;height:100%;position:relative;overflow:hidden}.intro-scene-layer,.scene-media,.scene-poster,.scene-video{width:100%;height:100%;position:absolute;inset:0}.scene-poster,.scene-video{object-fit:cover;object-position:50% 50%;display:block}.scene-video{z-index:1}.intro-labels{z-index:4;pointer-events:none;color:#f7f5eef0;text-shadow:0 1px 3px #00000059;position:absolute;inset:0}.intro-name,.intro-instruction{letter-spacing:.01em;font-weight:400;position:absolute;left:clamp(24px,3vw,48px)}.intro-name{font-size:clamp(20px,1.35vw,24px);top:clamp(24px,3vw,48px)}.intro-instruction{text-transform:lowercase;font-size:clamp(14px,.9vw,16px);bottom:clamp(32px,3vw,48px)}.computer-outline{z-index:2;pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity .2s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;overflow:visible}.computer-outline path{fill:none;stroke-linecap:round;stroke-linejoin:round;shape-rendering:geometricprecision}.computer-outline-halo path{stroke:#060a0c73}.computer-outline-trace path{stroke:#f7f5eef7}.computer-outline[data-active=true]{opacity:1}.computer-hotspot{z-index:3;cursor:pointer;background:0 0;border:0;outline:0;min-width:44px;min-height:44px;padding:0;display:block;position:absolute}.computer-hotspot:disabled{cursor:default}@media (hover:hover) and (pointer:fine){.intro-experience,.intro-experience *{cursor:none}}.cursor-circle{z-index:40;pointer-events:none;opacity:0;will-change:transform;transition:opacity .22s;position:fixed;top:0;left:0}.cursor-circle[data-active=true]{opacity:1}.cursor-circle-shape{background:#f7f5eef2;border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;transition:transform .2s cubic-bezier(.22,1,.36,1);display:block;box-shadow:0 0 0 1px #060a0c4d}.cursor-circle[data-pressed=true] .cursor-circle-shape{transform:scale(.82)}.transition-veil{z-index:6;pointer-events:none;opacity:0;transition:opacity calc(var(--zoom-duration) * .28) ease-in;background:#000;position:absolute;inset:0}.transition-veil[data-active=true]{opacity:1;transition-delay:calc(var(--zoom-duration) * .72)}.intro-scene-layer{transform-origin:0 0;transition:transform var(--zoom-duration) cubic-bezier(.33, 0, .2, 1), opacity .18s ease;will-change:transform, opacity;backface-visibility:hidden}.intro-experience[data-phase=zooming][data-cinematic=true] .computer-outline{display:none}.intro-labels,.computer-hotspot{transition:opacity .18s}.intro-experience[data-phase=zooming][data-cinematic=true] .intro-scene-layer,.intro-experience[data-phase=shutdown][data-cinematic=true] .intro-scene-layer{transform:translate3d(var(--zoom-x), var(--zoom-y), 0) scale(var(--zoom-scale))}.intro-experience[data-phase=zooming][data-cinematic=false] .intro-scene-layer{opacity:0}.intro-experience[data-phase=zooming] .intro-labels,.intro-experience[data-phase=zooming] .computer-hotspot,.intro-experience[data-phase=shutdown] .intro-labels,.intro-experience[data-phase=shutdown] .computer-hotspot{opacity:0;pointer-events:none}@media (prefers-reduced-motion:reduce){.intro-scene-layer,.intro-labels,.computer-hotspot,.computer-outline{transition-duration:.18s}}.loading-sequence{animation:.18s both loading-reveal}@keyframes loading-reveal{0%{opacity:0}to{opacity:1}}.loading-sequence,.loading-video,.desktop-entry{background:#050604;width:100%;height:100%;margin:0;position:absolute;inset:0}.loading-video{object-fit:cover;display:block}.desktop-entry{outline:0}.desktop-entry-shell{isolation:isolate;overflow:hidden}.desktop-entry-surface{position:absolute;inset:0}.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}:root{color:#f7f5eef0;font-synthesis:none;text-rendering:optimizelegibility;background:#050604;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Consolas,monospace}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0;overflow:hidden}button,video{font:inherit}
