:root{color-scheme:light;--ink: #223029;--muted: rgba(34, 48, 41, .74);--glass: rgba(255, 255, 248, .66);--line: rgba(51, 67, 57, .18);--accent: #9f6f20;--cyan: #257fa4;--green: #337d56;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;overflow:hidden;background:#dff6ff;color:var(--ink)}button{font:inherit}#world{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;display:block}#interface{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.titleplate{position:absolute;top:28px;left:28px;width:min(520px,calc(100vw - 56px));padding:14px 16px 16px;border:1px solid rgba(255,255,255,.36);border-radius:8px;background:#fffff847;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 60px #364a4614;text-shadow:0 2px 24px rgba(255,255,255,.4)}.eyebrow,.label{margin:0 0 8px;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.eyebrow{position:relative;display:inline-block;pointer-events:auto;cursor:default;transition:color .18s ease,letter-spacing .22s ease,transform .22s ease}.eyebrow:after{content:"click a tab to travel";position:absolute;left:0;top:calc(100% + 5px);width:max-content;padding:5px 8px;border:1px solid rgba(34,48,41,.12);border-radius:6px;background:#fffff8d1;color:#223029bd;font-size:.68rem;letter-spacing:0;opacity:0;transform:translateY(-3px);transition:opacity .18s ease,transform .18s ease}.eyebrow:hover{color:var(--cyan);letter-spacing:.28em;transform:translate(3px)}.eyebrow:hover:after{opacity:1;transform:translateY(0)}h1{margin:0;max-width:12ch;font-size:clamp(2.65rem,7vw,6.9rem);line-height:.88;letter-spacing:0}.titleplate p:last-child{max-width:38rem;margin:0;color:var(--muted);font-size:clamp(.95rem,1.35vw,1.08rem);line-height:1.55}.panel{position:absolute;right:24px;bottom:118px;width:min(390px,calc(100vw - 48px));padding:18px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,#fffcecc7,#def6ff94);box-shadow:0 28px 90px #37504b2e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:opacity .42s ease,transform .52s cubic-bezier(.22,1,.36,1)}.panel.panel-exit{pointer-events:none;opacity:0;transform:translateY(130px)}.panel.panel-enter{opacity:0;transform:translate(170px)}.project-badge{position:absolute;top:28px;right:28px;max-width:min(360px,calc(100vw - 56px));padding:12px 15px;border:1px solid rgba(34,48,41,.12);border-radius:8px;background:#fffff894;color:var(--ink);font-size:clamp(.95rem,1.8vw,1.35rem);font-weight:850;line-height:1.08;text-align:right;text-wrap:balance;box-shadow:0 18px 60px #364a461a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}#interface.home-active .project-badge{display:none}.project-badge.badge-swap{animation:badgeSwap .56s cubic-bezier(.22,1,.36,1)}@keyframes badgeSwap{0%{opacity:0;transform:translate(70px)}to{opacity:1;transform:translate(0)}}#interface.home-active .panel{display:none;pointer-events:none;opacity:0;transform:translateY(10px)}#interface.about-active .panel{display:none}.panel h2{margin:0;font-size:1.55rem;line-height:1.1}#roomDescription{margin:14px 0 16px;color:var(--muted);line-height:1.45}.meta-grid{display:grid;grid-template-columns:1fr;gap:8px}.meta-grid span{min-width:0;padding:10px 12px;border:1px solid rgba(34,48,41,.13);border-radius:7px;background:#ffffff7a;color:#223029d6;font-size:.82rem}.about-profile{position:absolute;left:50%;top:52%;z-index:4;display:block;width:min(860px,calc(100vw - 56px));max-height:calc(100vh - 230px);color:#191919;text-decoration:none;pointer-events:none;opacity:0;transform:translate(-50%,-48%) perspective(1000px) rotateX(4deg) scale(.94);transition:opacity .36s ease,transform .52s cubic-bezier(.22,1,.36,1)}.about-profile.visible{pointer-events:auto;opacity:1;transform:translate(-50%,-50%) perspective(1000px) rotateX(0) scale(1)}.linkedin-card{position:relative;overflow:hidden;max-height:inherit;border:1px solid rgba(25,25,25,.14);border-radius:12px;background:#fff;box-shadow:0 36px 120px #21303833}.linkedin-cover{position:relative;height:clamp(132px,18vh,182px);overflow:hidden;background:radial-gradient(circle at 12% 52%,rgba(190,119,38,.52) 0 10%,transparent 23%),radial-gradient(circle at 88% 58%,rgba(66,108,55,.5) 0 12%,transparent 25%),linear-gradient(90deg,#aa782e73,#fff7dd9e 42%,#b1c3bb94),#d7d0b5}.linkedin-cover:before,.linkedin-cover:after{content:"";position:absolute;inset:auto auto 0 0;width:100%;height:58%;background:repeating-linear-gradient(90deg,transparent 0 28px,rgba(255,255,255,.72) 28px 33px,transparent 33px 62px),linear-gradient(0deg,#6c2d1a9e,#a85b2eb3);clip-path:polygon(35% 26%,42% 26%,42% 0,58% 0,58% 26%,67% 26%,67% 100%,35% 100%)}.linkedin-cover:after{inset:auto auto 0 48%;width:2px;height:100%;background:#6d5637b3;clip-path:none}.campus-building span{position:absolute;bottom:0;display:block;width:18%;height:48%;background:#7e3520bd}.campus-building span:nth-child(1){left:33%}.campus-building span:nth-child(2){left:51%;height:60%}.campus-building span:nth-child(3){left:62%;width:14%;height:44%}.linkedin-avatar{position:absolute;left:34px;top:clamp(82px,11.5vh,112px);width:clamp(116px,13vh,148px);height:clamp(116px,13vh,148px);border:6px solid #ffffff;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 8px 28px #19191929}.linkedin-body{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,270px);grid-template-areas:"main school" "headline school" "location school" "connections school" "actions actions";gap:12px 32px;padding:clamp(70px,8.4vh,88px) 34px 24px}.linkedin-main{grid-area:main;display:flex;align-items:center;gap:12px;min-width:0}.linkedin-main h2{flex:1 1 auto;min-width:0;margin:0;font-size:clamp(1.7rem,2.8vw,2.35rem);line-height:1.05;letter-spacing:0}.linkedin-pronouns{flex:0 0 auto;margin:0;color:#666;font-size:clamp(.98rem,1.65vw,1.12rem);white-space:nowrap}.linkedin-pronouns:before{content:"✓";display:inline-grid;width:26px;height:26px;margin-right:8px;place-items:center;border:3px solid #555;border-radius:50%;color:#555;font-size:.9rem;font-weight:900}.linkedin-headline,.linkedin-location,.linkedin-connections{grid-column:1 / 2;margin:0}.linkedin-headline{grid-area:headline;max-width:620px;font-size:clamp(1rem,1.85vw,1.24rem);line-height:1.25}.linkedin-location{grid-area:location;color:#666;font-size:1.02rem}.linkedin-location span,.linkedin-connections{color:#0a66c2;font-weight:700}.linkedin-connections{grid-area:connections;font-size:1.08rem}.linkedin-school{grid-area:school;display:flex;align-items:start;justify-self:end;gap:12px;min-width:0;padding-top:10px;font-size:1.12rem}.howard-mark{display:grid;flex:0 0 auto;width:48px;height:48px;place-items:center;border:3px solid #a23b2a;border-radius:50%;background:#17324d;color:#fff;font-size:.42rem;font-weight:800;line-height:1;text-align:center;text-transform:uppercase}.linkedin-actions{grid-area:actions;display:flex;gap:10px;margin-top:4px}.linkedin-actions span{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border-radius:999px;font-size:1.04rem;font-weight:800}.message-action{min-width:118px;background:#0a66c2;color:#fff}.message-action:before{content:"";width:0;height:0;margin-right:9px;border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:16px solid #ffffff;transform:rotate(-36deg)}.more-action{min-width:78px;border:1.5px solid #505050;color:#3d3d3d}@media (max-width: 1040px){.about-profile{width:min(760px,calc(100vw - 40px))}.linkedin-body{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "school" "headline" "location" "connections" "actions";gap:10px}.linkedin-main{flex-wrap:wrap}.linkedin-school{justify-self:start;padding-top:0}}@media (max-height: 820px) and (min-width: 761px){.about-profile{top:53%;max-height:calc(100vh - 190px);width:min(720px,calc(100vw - 56px))}.linkedin-cover{height:124px}.linkedin-avatar{top:76px;width:108px;height:108px;border-width:4px}.linkedin-body{padding:62px 28px 20px;gap:8px 24px}.linkedin-main h2{font-size:clamp(1.45rem,2.5vw,2rem)}.linkedin-headline{font-size:clamp(.92rem,1.7vw,1.08rem)}.linkedin-location,.linkedin-connections{font-size:.92rem}.linkedin-actions span{min-height:36px;font-size:.92rem}}.map{position:absolute;left:50%;bottom:16px;display:flex;width:min(1680px,calc(100vw - 32px));gap:clamp(4px,.55vw,8px);flex-wrap:nowrap;justify-content:center;transform:translate(-50%);pointer-events:auto;overflow-x:auto;overflow-y:hidden;padding:clamp(4px,.65vw,8px);border:1px solid rgba(34,48,41,.16);border-radius:8px;background:#fffff8b3;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);scrollbar-width:none}.map::-webkit-scrollbar{display:none}.map button,.enter{flex:0 0 auto;border:1px solid rgba(34,48,41,.16);border-radius:7px;background:#ffffff94;color:var(--ink);cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.map button{flex:1 1 0;min-width:0;max-width:162px;min-height:clamp(34px,4.6vw,44px);padding:clamp(5px,.78vw,9px) clamp(5px,.9vw,11px);font-size:clamp(.56rem,1.08vw,.78rem);line-height:1.05;white-space:normal}.map button:hover,.enter:hover{transform:translateY(-1px);border-color:#257fa45c;background:#ffffffe0}.map button.active{border-color:#9f6f20bd;background:#f3c96957;color:#4a3212}.controls{position:absolute;top:24px;right:24px;display:flex;max-width:min(500px,calc(100vw - 48px));flex-wrap:wrap;gap:8px;justify-content:flex-end;pointer-events:none}.controls span{padding:8px 10px;border:1px solid rgba(34,48,41,.14);border-radius:999px;background:#fffff8a3;color:#223029b8;font-size:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.enter{position:absolute;left:28px;bottom:118px;padding:13px 16px;pointer-events:auto;background:#257fa41f;border-color:#257fa46b}.plan-tray{position:absolute;top:92px;right:24px;display:grid;gap:0;width:188px;pointer-events:none;opacity:0;transform:translateY(-10px);transition:opacity .24s ease,transform .24s ease}.plan-tray.deck-gallery{top:86px;right:20px;width:min(340px,23vw);min-width:250px;gap:10px}.plan-tray.visible{pointer-events:auto;opacity:1;transform:translateY(0)}.plan-tray.center-stage{top:50%;right:auto;left:50%;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(620px,calc(100vw - 420px));transform:translate(-50%,-50%) scale(.96)}.plan-tray.center-stage.visible{transform:translate(-50%,-50%) scale(1)}.plan-card{position:relative;width:188px;height:122px;margin-top:calc(var(--stack-index) * -72px);overflow:hidden;border:1px solid rgba(34,48,41,.2);border-radius:8px;background:#fffff8db;box-shadow:0 14px 40px #37504b2e;color:var(--ink);cursor:pointer;transform:translateY(calc(var(--stack-index) * 8px)) rotate(calc((var(--stack-index) - 1.5) * -1.4deg));transition:transform .22s ease,box-shadow .22s ease}.plan-tray.deck-gallery .plan-card{width:100%;height:clamp(76px,8.8vh,118px);margin-top:0;touch-action:none;transform:translate(var(--drag-x, 0),var(--drag-y, 0)) translate(calc((var(--stack-index) - 2) * 6px)) rotate(calc((var(--stack-index) - 2) * -.85deg))}.plan-tray.deck-gallery .plan-card:first-child{height:clamp(118px,15vh,174px)}.plan-tray.deck-gallery .plan-card.dragging{z-index:8;opacity:.94;box-shadow:0 26px 72px #37504b4d;transition:box-shadow .16s ease}.plan-card:hover{z-index:3;transform:translateY(calc(var(--stack-index) * 8px - 6px)) scale(1.03);box-shadow:0 22px 60px #37504b3d}.plan-tray.deck-gallery .plan-card:hover{z-index:4;transform:translate(var(--drag-x, 0),var(--drag-y, 0)) translate(calc((var(--stack-index) - 2) * 6px)) translateY(-3px) scale(1.015) rotate(calc((var(--stack-index) - 2) * -.85deg))}.plan-tray.center-stage .plan-card{width:100%;height:210px;margin-top:0;transform:none}.plan-tray.center-stage .plan-card:hover{transform:translateY(-5px) scale(1.02)}.plan-card span{position:absolute;z-index:1;left:8px;right:8px;bottom:7px;padding:5px 7px;border-radius:6px;background:#fffff8d1;font-size:.72rem;font-weight:800;text-align:left}.plan-card img{width:100%;height:100%;object-fit:cover;pointer-events:none}.pdf-stage{position:absolute;left:46%;top:50%;z-index:5;display:block;width:min(760px,calc(100vw - 510px));height:min(620px,calc(100vh - 190px));min-width:360px;overflow:hidden;border:1px solid rgba(34,48,41,.18);border-radius:8px;background:#fffff8f0;box-shadow:0 30px 90px #37504b38,12px 18px #d6aa552e;pointer-events:none;opacity:0;transform:translate(-50%,-50%) perspective(900px) rotateX(4deg) rotateY(-5deg) scale(.86);transform-origin:center;transition:opacity .26s ease,transform .32s ease}.pdf-stage.visible{pointer-events:auto;opacity:1;transform:translate(-50%,-50%) perspective(900px) rotateX(0) rotateY(-3deg) scale(1)}.pdf-stage.large-paper{left:50%;width:min(1040px,calc(100vw - 96px));height:min(760px,calc(100vh - 150px))}.pdf-stage-title{display:flex;height:42px;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px 9px 14px;border-bottom:1px solid rgba(34,48,41,.12);color:var(--ink);font-size:.82rem;font-weight:800}.pdf-paper-close{padding:7px 10px;border:1px solid rgba(34,48,41,.18);border-radius:7px;background:#ffffffb8;color:var(--ink);cursor:pointer;font-size:.76rem}.pdf-paper-viewport{width:100%;height:calc(100% - 42px);overflow:hidden;background:linear-gradient(90deg,rgba(34,48,41,.04) 1px,transparent 1px),linear-gradient(rgba(34,48,41,.04) 1px,transparent 1px),#fff;background-size:28px 28px;cursor:grab}.pdf-paper-viewport:active{cursor:grabbing}.pdf-paper-image{display:block;width:100%;height:100%;object-fit:contain;transform-origin:center;transition:transform 60ms linear;-webkit-user-select:none;user-select:none;pointer-events:none}#crosshair{position:absolute;top:50%;left:50%;width:18px;height:18px;transform:translate(-50%,-50%);opacity:.5}#crosshair:before,#crosshair:after{content:"";position:absolute;background:#223029cc}#crosshair:before{left:8px;top:2px;width:2px;height:14px}#crosshair:after{left:2px;top:8px;width:14px;height:2px}@media (max-width: 760px){.titleplate{top:10px;left:10px;width:min(58vw,330px);padding:10px 11px}.eyebrow,.label{margin-bottom:5px;font-size:.58rem}.titleplate p:last-child{font-size:.78rem;line-height:1.35;max-height:5.4rem;overflow:hidden}.controls{display:none}.project-badge{top:10px;right:10px;max-width:38vw;padding:9px 10px;font-size:.86rem}.panel{right:10px;bottom:92px;width:min(330px,calc(100vw - 20px));max-height:32vh;overflow:auto;padding:10px}.panel h2{font-size:1.05rem}#roomDescription{margin:8px 0 10px;font-size:.78rem;line-height:1.32}.meta-grid span{padding:7px 8px;font-size:.68rem}.enter{left:10px;bottom:92px;max-width:42vw;padding:10px 11px;font-size:.75rem}.map{bottom:8px;width:calc(100vw - 12px);max-height:58px;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.map::-webkit-scrollbar{display:none}.map button{flex:0 0 clamp(66px,15vw,92px);min-width:0;max-width:92px;min-height:38px;padding:6px 7px;font-size:.62rem;white-space:normal}.plan-tray{top:76px;right:12px;width:148px}.plan-tray.deck-gallery{top:72px;width:min(190px,45vw);min-width:152px;gap:7px}.plan-card{width:148px;height:100px}.plan-tray.deck-gallery .plan-card{height:68px}.plan-tray.deck-gallery .plan-card:first-child{height:98px}.pdf-stage{width:calc(100vw - 24px);min-width:0;height:calc(100vh - 210px)}.about-profile{top:50%;width:calc(100vw - 24px);max-height:calc(100vh - 150px)}.linkedin-cover{height:118px}.linkedin-avatar{left:18px;top:72px;width:104px;height:104px;border-width:4px}.linkedin-body{grid-template-columns:1fr;grid-template-areas:"main" "school" "headline" "location" "connections" "actions";gap:8px;padding:66px 18px 18px}.linkedin-main{display:block}.linkedin-pronouns{margin-top:6px;font-size:.95rem}.linkedin-school{grid-column:auto;grid-row:auto;justify-self:start;padding-top:4px;font-size:.98rem}.linkedin-headline,.linkedin-connections,.linkedin-location{font-size:.92rem}}
