/* Lilac satin, hot-pink bevels, gold WordArt and the original site's content. */
html.portal-mode, .portal-mode body{height:auto;min-height:100%;overflow:auto;background:#e6cfaa;background-size:480px;color:#101018;font-family:'Times New Roman',serif;font-size:17px}
.portal-mode *{box-sizing:border-box}.portal-mode button{cursor:pointer}.portal-mode a,.text-link{color:#00e;text-decoration:underline}.portal-mode :focus-visible{outline:3px dashed #0018ff;outline-offset:4px}
#portal{max-width:1640px;margin:auto;padding:24px 26px 60px}#portal button{font-family:inherit}#portal h2{font-size:25px;line-height:1.07;margin:0 0 13px}#portal p{margin:10px 0}.bevel,.panel{border:2px solid;border-color:#fff #70677e #70677e #fff;box-shadow:1px 1px 0 #eee,inset 0 0 0 1px #b1a5c2}.bevel{background:linear-gradient(120deg,#eee9f1,#bfb5ca)}
.masthead{display:grid;grid-template-columns:205px 1fr 210px;gap:25px;align-items:center;margin-bottom:18px}.network{text-align:center;padding:6px;background:#080a08}.network>a{color:white!important;font-size:21px;font-weight:bold}.led{font:bold 31px/1.08 monospace;letter-spacing:4px;color:#40ff07;text-shadow:0 0 5px #4aff0066;background:repeating-linear-gradient(0deg,transparent 0 3px,#0008 3px 5px);padding:8px}.mini-rainbow{margin-top:7px;background:#1713fe;color:#fff;padding:5px;font-size:13px}.identity{text-align:center}.name-row{display:flex;align-items:center;justify-content:center;gap:20px}.identity h1{font-size:clamp(56px,6.3vw,105px);line-height:1.04;letter-spacing:-3px;margin:0;color:#f8d965;text-shadow:1px 1px #fff5b4,2px 2px #d7a521,3px 3px #c09517,4px 4px #a0790e,5px 5px #886408,7px 8px 2px #382e35,10px 12px 5px #51405a88;transform:rotate(-2deg)}.tagline{color:blue;font:bold 24px 'Comic Sans MS',cursive;margin-top:12px}.p-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px}.p-icon svg{width:100%;height:100%}.globe{width:100px;height:100px;filter:drop-shadow(4px 5px 2px #625272);transform:rotate(-12deg)}.welcome-note{background:#ffffaf;box-shadow:6px 7px 5px #59447666;transform:rotate(-7deg);font-size:25px;font-weight:bold;padding:18px;text-align:center}.welcome-note span{display:block;font-size:40px;color:#ef0987}
.portal-grid{display:grid;grid-template-columns:205px minmax(0,1fr) 220px;gap:18px}.left-rail,.right-rail{display:flex;flex-direction:column;gap:18px}.nav-stack{padding:10px;display:grid;gap:8px}.nav-stack button,.pink-button{background:linear-gradient(#ff3297 0%,#ff0069 48%,#f7005d 70%,#ff087f 100%);border:5px solid;border-color:#ff8cc8 #a20049 #b00050 #ff86c4;box-shadow:1px 1px 2px #73657c;color:white;padding:9px 8px;font:bold 23px 'Times New Roman',serif;text-shadow:1px 1px #7f003d}.nav-stack button{display:flex;align-items:center;gap:12px;text-align:left}.nav-stack button:hover,.pink-button:hover{filter:brightness(1.14)}.nav-stack button:active,.pink-button:active{border-color:#a20049 #ff8cc8 #ff86c4 #b00050;transform:translate(1px,1px)}.counter{padding:13px 7px;text-align:center;font-size:20px}.counter span{font-size:14px}.digits{font:30px monospace;letter-spacing:2px;background:#060b05;color:#39ff0b;margin:8px 0;border:3px inset #b4b4b4}.sticker{padding:14px;text-align:center}.rainbow-sticker{background:#fff;border:5px ridge #d6d6d6;transform:rotate(-6deg);font:bold 23px 'Comic Sans MS',cursive;color:#1415dd;text-shadow:2px 2px #ffff00,-1px -1px #0effdc;box-shadow:4px 5px #705f9d}.rainbow-sticker span{color:red}.utilities,.more-links{padding:10px;display:grid;gap:10px}.utilities button,.more-links button{display:flex;gap:10px;align-items:center;background:none;border:0;color:blue;text-decoration:underline;font-size:20px!important}.trash{display:flex;align-items:center;justify-content:center;gap:8px;background:#fffcc3;border:3px outset #fffcc3;transform:rotate(5deg);font-size:18px}.tiny-welcome{font:bold italic 38px Georgia;text-align:center;color:red;text-shadow:2px 2px #fff,4px 4px blue;transform:rotate(-8deg)}.tiny-welcome span{color:#ffda00}
.sunset{min-height:127px;background:#003de7 url('/assets/blue-beach.png') center 53%/cover;border:3px ridge #cec3e6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;text-shadow:2px 2px 2px #240d28;padding:14px}.sunset>span{font-size:22px}.sunset strong{font-size:34px;font-weight:normal}.ticker{margin:10px 0;padding:6px 3px;background:linear-gradient(90deg,#ff002d,#ffce00,#caff00,#00ed9d,#00b2ff,#c847ff);border:2px ridge #fff;overflow:hidden;color:#111;font:bold 17px 'Comic Sans MS',cursive;text-align:center}.ticker span{display:block;animation:rainbowFloat 5s ease-in-out infinite}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.panel{position:relative;padding:16px;min-width:0}.shortcut{background:linear-gradient(120deg,#eaffee,#d9fff2)}.champion{background:linear-gradient(110deg,#e8e8ff,#c1ddff)}.shortcut-title{font:bold 44px monospace!important;color:#057b39;display:flex;align-items:center;gap:10px;letter-spacing:-2px}.intro{font-size:19px}.burst{position:absolute;right:-9px;top:-7px;z-index:2;width:68px;height:68px;display:flex;align-items:center;justify-content:center;background:#fff600;color:#f00027;font:bold italic 24px Arial;filter:drop-shadow(2px 2px #f00027);clip-path:polygon(50% 0,59% 19%,77% 5%,78% 28%,100% 24%,87% 45%,100% 56%,79% 65%,87% 90%,64% 82%,54% 100%,43% 80%,23% 97%,24% 73%,0 77%,15% 55%,0 43%,23% 35%,13% 11%,37% 20%);transform:rotate(12deg)}.photo-link{display:block;position:relative;background:#151515;padding:0;border:3px inset #d6d6d6;width:100%;margin:12px 0}.photo-link img{width:100%;aspect-ratio:1.85;object-fit:cover;display:block}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:white;font-size:29px;background:#0009;width:48px;height:40px;line-height:40px;text-align:center}.panel-bottom{display:grid;gap:7px;text-align:center}.pink-button{display:block;font-size:20px!important;padding:5px 12px;max-width:100%}.text-link{border:0;background:none;padding:0;font-size:inherit;text-align:inherit}.champion h2{padding-right:26px;color:blue;min-height:53px}.champion p{font-size:14px}.xbench{background:linear-gradient(125deg,#fffbdb,#ffe9cf)}.xbench-title{font:bold 45px monospace!important;letter-spacing:3px;color:#001dd0;text-shadow:2px 2px white,4px 4px #7878ba}.project-symbol{height:70px;display:flex;align-items:center;justify-content:space-around;margin:8px 0}.project-symbol .p-icon{width:66px;height:66px}.project-symbol img{width:65px;height:65px;object-fit:contain}.research{background:linear-gradient(120deg,#d1ffd7,#b1efc2)}.research h2{font-size:24px!important}.research p{font-size:14px}.research-art{display:flex;align-items:center;justify-content:space-between;margin:22px 0}.research-art .p-icon{width:58px;height:58px}.research-art>span:not(.p-icon){color:#f00088;font-size:26px}.bottom-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:13px;margin-top:14px}.dunks{background:#ffe9c9}.dunk-title{color:#b34400;text-shadow:2px 2px #fff;font:bold 29px monospace!important}.basketball{text-align:center;font-size:63px;filter:drop-shadow(3px 5px #b9723766);margin:9px 0;animation:bounce 3s ease-in-out infinite}.press{background:#fffbdf;display:flex;flex-direction:column;gap:8px}.press img{width:100%;height:82px;object-fit:contain}.press h2{font-size:23px!important}.mines{background:#cae5f7;text-align:center}.mines-preview{border:3px outset #eee;background:#bdbdbd;padding:5px;width:130px;max-width:100%;margin:0 auto 8px;display:block}.mines-preview>span{font-size:25px;background:#ffed00}.mines-preview>div{display:grid;grid-template-columns:repeat(6,1fr);margin-top:4px}.mines-preview b{border:2px outset #eee;height:18px;color:blue;font:12px Arial}.badge-strip{display:flex;gap:13px;justify-content:center;margin:20px 0 5px;flex-wrap:wrap}.badge-strip>span{display:flex;align-items:center;gap:7px;border:4px ridge #eaeaea;background:#fff;font-size:23px;padding:3px 9px;transform:rotate(-3deg)}.badge-strip>span:nth-child(even){transform:rotate(3deg);background:#ffff00}.badge-strip b{font:bold 13px Arial}
.mini-popup{transform:rotate(3deg);box-shadow:5px 6px 0 #6c4e8e77;text-align:center;background:#fffdf1}.popup-title{background:linear-gradient(90deg,#230990,#923ce4);color:white;font:bold 13px Arial;display:flex;justify-content:space-between;align-items:center;padding:4px 5px;gap:12px}.popup-title button{color:black;font:bold 18px Arial;background:#c0c0c0;border:2px outset white;width:23px;height:23px;line-height:16px;padding:0}.wordart{font:bold italic 38px Georgia;background:linear-gradient(red,#ef009b,#5836ff,#00bb70,#ffd600);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(2px 3px #2516b4);transform:rotate(-9deg);padding:20px 0 6px}.mini-popup p{font:17px 'Comic Sans MS',cursive}.mail-panel{background:#ffffac;text-align:center}.mail-panel>button{border:0;background:none;display:block;margin:auto}.mail-art{height:86px;width:100px;filter:drop-shadow(4px 4px #b3a24b)}.mail-panel>a{font-size:18px;font-weight:bold;overflow-wrap:anywhere}.book{background:linear-gradient(125deg,#ffdcf5,#f4abe5)}.book h2{font-size:24px!important}.book-art{font-size:48px;text-align:center;margin:13px 0}.book-art .p-icon{width:56px;height:56px}.book .text-link{overflow-wrap:anywhere;font-size:16px}.star-sticker{background:#faff05;border:5px ridge #ffb700;transform:rotate(7deg);font-size:40px;color:red;text-shadow:2px 2px #fff}.star-sticker span{font:bold 20px 'Comic Sans MS',cursive;color:blue;text-shadow:none}.rainbow-rule{height:7px;background:linear-gradient(90deg,red,#ffed00,#10ff00,#00cfff,#002aff,#ff00cc)}.portal-footer{margin-top:22px;text-align:center}.portal-footer>span,.portal-footer>a,.portal-footer>button{display:inline-block;margin:14px;font-size:15px}.portal-footer>button{border:0;background:none;text-decoration:underline;color:blue}
/* Original applications stay functional above the new homepage. */
.portal-mode #screen{position:fixed;inset:0;z-index:100;pointer-events:none;background:none}.portal-mode .desktop{background:transparent;pointer-events:none;overflow:visible}.portal-mode .desktop-icons{display:none}.portal-mode .window,.portal-mode .taskbar,.portal-mode .start-menu,.portal-mode .gag-overlay{pointer-events:auto}.portal-mode .taskbar{position:fixed;bottom:0;left:0;right:0}.portal-mode .window{max-width:calc(100vw - 16px);max-height:calc(100dvh - 50px)}.portal-mode .window>.title-bar{background:linear-gradient(90deg,#401494,#e32da5)}
#content-dialog{padding:0;border:3px outset #e2dbeb;width:min(800px,calc(100vw - 24px));max-height:85dvh;background:#fff;box-shadow:8px 8px #3b195b88;color:#111}#content-dialog::backdrop{background:#2e095666}.dialog-content{overflow:auto;max-height:calc(85dvh - 36px)}.dialog-content .ie-doc{font-size:16px}.dialog-content .ie-nav a{cursor:pointer}.dialog-content .ie-main{padding:20px}
@keyframes bounce{50%{transform:translateY(-5px) rotate(6deg)}}@keyframes rainbowFloat{50%{transform:translateX(6px)}}
@media(min-width:1450px){#portal{padding-top:28px}.portal-grid{grid-template-columns:230px minmax(0,1fr) 245px}.masthead{grid-template-columns:230px 1fr 245px}.sunset{min-height:145px}.photo-link img{aspect-ratio:1.9}}
@media(max-width:1100px){#portal{padding:14px 14px 60px}.masthead{grid-template-columns:160px 1fr 160px;gap:14px}.portal-grid{grid-template-columns:160px minmax(0,1fr);gap:14px}.right-rail{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}.identity h1{font-size:64px}.globe{width:65px;height:65px}.tagline{font-size:20px}.welcome-note{font-size:20px}.nav-stack button{font-size:19px;padding:7px 3px;gap:5px}.led{font-size:24px}.network>a{font-size:17px}.sunset strong{font-size:29px}.right-rail .star-sticker,.right-rail .more-links{display:none}}
@media(max-width:680px){.masthead{grid-template-columns:1fr}.network,.welcome-note{display:none}.identity h1{font-size:54px}.globe{width:54px;height:54px}.tagline{font-size:18px}.portal-grid{display:block}.left-rail{display:block}.nav-stack{display:flex;overflow-x:auto;margin-bottom:14px;gap:6px;padding:6px}.nav-stack button{flex-shrink:0;font-size:16px;padding:5px}.nav-stack .p-icon{width:22px;height:22px}.left-rail> :not(nav){display:none}.sunset{min-height:115px}.sunset strong{font-size:27px}.sunset>span{font-size:19px}.feature-grid{grid-template-columns:1fr}.bottom-grid{grid-template-columns:1fr 1fr}.bottom-grid .mines{grid-column:1/-1}.right-rail{display:grid;grid-template-columns:1fr;margin-top:18px}.right-rail .mini-popup{max-width:260px;margin:7px auto;width:100%}.panel{padding:18px}.photo-link img{aspect-ratio:1.85}.portal-mode .window{left:8px!important;top:12px!important;min-width:0!important}.portal-mode .taskbar .start-button{min-width:60px}.portal-footer>span,.portal-footer>a,.portal-footer>button{margin:6px}.ticker{font-size:13px}.champion h2{min-height:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important}}
.portal-mode #screen{font-family:var(--font);font-size:11px}.portal-mode #portal{-webkit-user-select:text;user-select:text}.portal-mode .desktop{flex:1;min-height:0}.portal-mode .taskbar{background:linear-gradient(#dec9f8,#a58ac7);border-top:2px outset #eee}.portal-mode .taskbar-clock{color:#211039}.portal-mode .taskbar-tray{background:#c3a6e5}
/* The portal sits above a little inhabited patch of sand. */
#sand-world{position:fixed;inset:0;z-index:3;pointer-events:none;image-rendering:pixelated}
.portal-mode body{background-image:linear-gradient(#e6cfaa66,#e6cfaa66),linear-gradient(115deg,#fff5 0%,transparent 40%,#62461712 100%),url('/assets/sand-realistic.png');background-size:auto,100vw 100vh,640px}
#portal .panel{box-shadow:2px 3px 0 #83725e,5px 7px 0 #9a88726b,10px 15px 12px #4d351936}
#portal .nav-stack,#portal .counter,#portal .utilities,#portal .more-links{box-shadow:2px 3px 0 #8b7d73,7px 11px 9px #4d351936}
#portal .sunset{box-shadow:3px 4px 0 #726171,7px 10px 9px #4d351938}
#portal .welcome-note{box-shadow:2px 3px 0 #e1cf80,9px 13px 8px #4d35194d}
#portal .mini-popup{box-shadow:3px 4px 0 #78688e,10px 15px 10px #4d35194d}
#portal .sticker{filter:drop-shadow(4px 7px 3px #4d351938)}
#portal .panel,#portal .bevel,#portal .sunset,#portal .sticker{transition:box-shadow .18s ease,translate .18s ease}
@media(hover:hover){#portal .panel:hover{translate:0 -2px;box-shadow:2px 4px 0 #83725e,5px 9px 0 #9a88726b,12px 18px 14px #4d351944}}
/* A deliberately wonky collection of personal-web ephemera. */
.identity h1{position:relative;isolation:isolate;font:bold italic clamp(76px,7.7vw,128px)/1.08 Georgia,serif;letter-spacing:-5px;transform:rotate(-5deg) skew(-5deg);color:transparent;text-shadow:none;margin:4px -35px 12px;white-space:nowrap}
.identity h1 span{position:relative;z-index:1;background:linear-gradient(160deg,#ff153b 5%,#ff9200 21%,#ffe500 34%,#00ba49 49%,#009ce9 64%,#272ee0 78%,#d400be 95%);background-clip:text;-webkit-background-clip:text;-webkit-text-stroke:1px #ffffff80;filter:drop-shadow(1px -1px 0 #fff)}
.identity h1::before{content:attr(data-text);position:absolute;inset:0;z-index:0;color:#191bbd;text-shadow:1px 1px #fff,2px 2px #111fce,3px 3px #111fce,4px 4px #111fce,5px 5px #eee,6px 6px #2a148c,7px 7px #2a148c,9px 11px 4px #49333688;transform:translate(4px,6px)}
.name-row .globe{width:68px;height:68px}.masthead{padding:15px 0 22px}.tagline{position:relative;margin-top:15px}
#portal .shortcut{transform:rotate(-1.4deg)}#portal .champion{transform:rotate(1.6deg) translateY(9px)}#portal .xbench{transform:rotate(1deg) translateY(5px)}#portal .research{transform:rotate(-1.7deg) translateY(14px)}#portal .bottom-grid{margin-top:32px;gap:19px}#portal .dunks{transform:rotate(-2.1deg)}#portal .press{transform:rotate(1.9deg) translateY(8px)}#portal .mines{transform:rotate(-.8deg)}#portal .feature-grid{gap:24px 23px}#portal .nav-stack{transform:rotate(-1deg)}#portal .book{transform:rotate(2deg)}
#portal .burst{clip-path:none;background:none;filter:drop-shadow(2px 3px 0 #8d133d66);width:82px;height:82px;top:-16px;right:-14px;transform:rotate(13deg);font:bold italic 23px Arial;isolation:isolate}
#portal .burst::before,#portal .burst::after{content:'';position:absolute;inset:0;background:#ef002a;clip-path:polygon(50% 0,59% 19%,77% 5%,78% 28%,100% 24%,87% 45%,100% 56%,79% 65%,87% 90%,64% 82%,54% 100%,43% 80%,23% 97%,24% 73%,0 77%,15% 55%,0 43%,23% 35%,13% 11%,37% 20%);z-index:-2}
#portal .burst::after{inset:4px;background:#fff500;z-index:-1}#portal .burst b{position:relative;transform:rotate(-9deg);text-shadow:1px 1px white;white-space:nowrap}
#portal .mini-popup{overflow:visible}.wordart{font-size:34px;padding:24px 4px 12px;line-height:1.4;filter:drop-shadow(2px 3px #2516b4)}
#portal .project-photo img{aspect-ratio:1.9;object-fit:contain;background:#fff}#portal .research .project-photo img{aspect-ratio:1.5}#portal .press img{height:auto;aspect-ratio:1;object-fit:cover;border:3px ridge #ddd;box-shadow:3px 4px #76695655}#portal .dunks .photo-link img{aspect-ratio:4/3;object-fit:cover}
@media(max-width:1100px){.identity h1{font-size:76px;letter-spacing:-4px;margin-left:-15px;margin-right:-15px}.name-row .globe{display:none}}
@media(max-width:680px){.identity h1{font-size:clamp(46px,12vw,76px);letter-spacing:-3px;margin:0}.masthead{padding:10px 0 18px}#portal .feature-grid{gap:30px}#portal .panel{transform:rotate(-.6deg)}#portal .champion,#portal .research{transform:rotate(.7deg)}#portal .burst{right:-5px}.portal-grid{padding:0 6px}}
#walker-hit{position:fixed;z-index:4;width:42px;height:45px;padding:0;border:0;background:transparent;touch-action:none;user-select:none;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Ctext y='31' font-size='30'%3E%F0%9F%91%8A%3C/text%3E%3C/svg%3E") 18 18,pointer}
#walker-hit.dragging{cursor:grabbing}#walker-hit:focus-visible{outline:2px dashed #805b36;border-radius:50%}#walker-hit.punched::after{content:'👊';position:absolute;inset:0;font-size:28px;pointer-events:none;animation:little-punch .34s both}
#walker-speech{position:fixed;z-index:5;padding:5px 10px;background:white;color:#25182d;border:2px solid #25182d;border-radius:8px 8px 8px 0;box-shadow:3px 3px #59392044;font:bold 17px 'Comic Sans MS',monospace;pointer-events:none;transform:rotate(-8deg)}
@keyframes little-punch{0%{opacity:0;transform:translate(15px,-4px) scale(1.25)}25%{opacity:1;transform:translate(-5px,1px) scale(.9)}100%{opacity:0;transform:translate(12px,-8px) scale(1.1)}}
.name-row .fried-fire{width:94px;height:116px;flex:0 0 94px;image-rendering:pixelated;filter:contrast(1.65) saturate(2.8) drop-shadow(0 0 2px #ffff00) drop-shadow(0 0 8px #ff2400) drop-shadow(3px 4px 0 #840023);transform:rotate(-9deg);margin-right:4px;animation:fried-twitch .24s steps(2,end) infinite}
@keyframes fried-twitch{0%{transform:rotate(-9deg) skewX(-2deg)}50%{transform:rotate(-6deg) skewX(3deg)}100%{transform:rotate(-10deg) skewX(-1deg)}}
@media(max-width:1100px){.name-row .fried-fire{width:58px;height:88px;flex-basis:58px;margin-right:-8px}.name-row{gap:10px}}
@media(max-width:680px){.name-row .fried-fire{width:40px;height:70px;flex-basis:40px;margin-right:-6px}.identity h1{font-size:clamp(40px,10.5vw,68px)}}
@media(prefers-reduced-motion:reduce){.name-row .fried-fire{animation:none}}
#portal .sunset{margin-bottom:24px}
#portal .inline-mines{display:block;width:calc(100% + 18px);margin:15px 0 15px -9px;transform:rotate(5deg);background:#c0c0c0;border:4px outset #eee;box-shadow:4px 6px 0 #706252,10px 14px 9px #4d351947;font:12px Tahoma,sans-serif;min-width:0}
#portal .inline-mines .popup-title{background:linear-gradient(90deg,#000080,#2679c4);padding:5px 7px;font:bold 14px Tahoma,sans-serif}
#portal .inline-mines .minesweeper{--ms-cell-size:22px;display:flex;flex-direction:column;background:#c0c0c0;width:100%;min-width:0;padding:8px;gap:7px;overflow:hidden}
#portal .inline-mines .ms-grid{min-width:0;width:max-content;margin:auto;gap:0}#portal .inline-mines .ms-grid-wrap{background:#c0c0c0;overflow:hidden;border:2px inset #eee}
#portal .inline-mines .ms-difficulty{display:none}#portal .inline-mines .ms-toolbar{justify-content:flex-end}#portal .inline-mines .ms-mode{font:11px Tahoma,sans-serif}
#portal .inline-mines .ms-header{background:#c0c0c0;border:2px inset #eee;padding:5px;display:flex;justify-content:space-between;align-items:center}
#portal .inline-mines .ms-lcd{background:#160000;color:#ff1a15;font:bold 25px monospace;padding:2px 4px;min-width:53px}
#portal .inline-mines .ms-face{background:#c0c0c0;border:3px outset #eee;border-radius:0}
#portal .inline-mines .ms-cell{border-radius:0;font-family:monospace;font-weight:bold}#portal .inline-mines .ms-status{display:block;font-size:10px}#portal .inline-mines .ms-status>span{display:block}#portal .inline-mines .ms-hint{font:10px/1.35 Tahoma,sans-serif;white-space:normal}
@media(min-width:1450px){#portal .inline-mines .minesweeper{--ms-cell-size:25px}}
@media(max-width:1100px){#portal .right-rail .inline-mines{display:block;width:100%;margin:8px 0;transform:rotate(3deg)}}
@media(max-width:680px){#portal .right-rail .inline-mines{width:280px;max-width:calc(100% - 12px);margin:18px auto}#portal .inline-mines .minesweeper{--ms-cell-size:26px}}
/* Three main columns; the press clipping lives in the left rail. */
#portal .feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:28px 21px}
#portal .feature-grid .panel{padding:13px}
#portal .feature-grid .shortcut-title{font-size:34px!important;letter-spacing:-2px;gap:6px}
#portal .feature-grid .shortcut-title .p-icon{width:23px;height:23px}
#portal .feature-grid .xbench-title{font-size:37px!important;letter-spacing:1px}
#portal .feature-grid h2{font-size:23px;overflow-wrap:anywhere}
#portal .feature-grid .intro{font-size:16px}
#portal .feature-grid .pink-button{font-size:17px!important;padding:5px 7px}
#portal .feature-grid .dunks{transform:rotate(1.4deg) translateY(14px)}
#portal .feature-grid .mines{transform:rotate(-2deg) translateY(7px)}
#portal .left-rail .sidebar-press{transform:rotate(-4deg);padding:12px;background:#fff9e6;margin:8px 0 10px}
#portal .sidebar-press h2{font-size:23px!important}
#portal .sidebar-press img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff}
@media(max-width:1100px){#portal .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 21px}}
@media(max-width:680px){#portal .feature-grid{grid-template-columns:1fr;gap:28px}#portal .left-rail .sidebar-press{display:flex;max-width:240px;margin:18px auto 28px;transform:rotate(-3deg)}#portal .feature-grid .shortcut-title{font-size:38px!important}}
/* Give the desktop portal the breathing room of an 80% browser zoom. */
@media(min-width:681px){#portal{zoom:.666;max-width:1900px;width:86%;margin-inline:auto}}
/* Small overlaps live in the card borders, clear of the text and controls. */
@media(min-width:1101px){
 #portal .feature-grid{gap:20px 0;isolation:isolate;align-items:stretch}
 #portal .feature-grid>.panel{min-width:0;padding:21px 23px;position:relative}
 #portal .feature-grid>.shortcut{z-index:1;transform:rotate(-1.5deg) translateX(3px)}
 #portal .feature-grid>.champion{z-index:2;transform:rotate(1deg) translate(-3px,7px)}
 #portal .feature-grid>.xbench{z-index:1;transform:rotate(-1deg) translateX(-6px)}
 #portal .feature-grid>.research{z-index:2;transform:rotate(1.1deg) translate(3px,-6px)}
 #portal .feature-grid>.dunks{z-index:1;transform:rotate(-1.4deg) translateY(-2px)}
 #portal .feature-grid>.press{z-index:2;transform:rotate(1.3deg) translate(-5px,-8px)}
 #portal .feature-grid>.panel:focus-within{z-index:3}
 #portal .feature-grid .shortcut-title{font-size:30px!important}
 #portal .feature-grid .burst{right:3px;top:-23px}
}
#portal .feature-grid>.press img{max-height:220px;object-fit:contain;background:#fff}
/* Independent stacks preserve each card's natural height; press is a narrow clipping. */
#portal .feature-grid.content-columns{grid-template-columns:1.06fr 1.08fr .82fr;align-items:start;gap:0 8px}
#portal .content-stack{display:flex;flex-direction:column;gap:25px;min-width:0}
#portal .content-columns .panel{height:auto;min-height:0;padding:19px 21px;position:relative;align-self:stretch}
#portal .content-columns .shortcut{transform:rotate(-1.3deg) translateX(4px)}
#portal .content-columns .champion{transform:rotate(1.2deg) translate(-3px,6px)}
#portal .content-columns .research{transform:rotate(1deg) translate(4px,-5px)}
#portal .content-columns .dunks{transform:rotate(-1.5deg) translate(-2px,-3px)}
#portal .content-columns .xbench{transform:rotate(-1.2deg) translateX(-5px)}
#portal .content-columns .press{transform:rotate(2deg) translate(-4px,-5px);padding:22px 16px 26px;gap:15px;background:#fff9e6}
#portal .content-columns .press h2{font:bold 28px/1.08 Georgia,serif!important;margin:0 0 3px}
#portal .content-columns .press img{height:auto;max-height:none;aspect-ratio:4/5;object-fit:contain;background:white;padding:9px;border:3px ridge #ddd}
#portal .content-columns .press>a:last-child{font-size:18px;line-height:1.35}
#portal .content-columns .champion h2{min-height:0}
#portal .content-columns .xbench-title{font-size:32px!important}
@media(max-width:1100px) and (min-width:681px){#portal .feature-grid.content-columns{grid-template-columns:1fr 1fr;gap:22px}#portal .content-stack:last-child{grid-column:1/-1;display:grid;grid-template-columns:1.15fr .85fr;align-items:start;gap:22px}}
@media(max-width:680px){#portal .feature-grid.content-columns{grid-template-columns:1fr;gap:28px}#portal .content-stack{gap:28px}#portal .content-columns .panel{transform:rotate(-.6deg)}#portal .content-columns .press{max-width:270px;width:100%;margin:auto;transform:rotate(2deg)}}
#portal .content-columns .press{background:#151416;color:#f5efdc;border-color:#625e65 #050405 #050405 #625e65;box-shadow:3px 4px 0 #080708,9px 13px 10px #30201455}
#portal .content-columns .press a{color:#fff0bd}
#portal .content-columns .press img{background:#fff;border-color:#80777d #242025 #242025 #80777d}
/* Keep the rainbow name centered over the content after removing the name box. */
@media(min-width:681px){.masthead>.identity{grid-column:2}.masthead>.welcome-note{grid-column:3}}
#walker-hit{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44'%3E%3Ctext y='34' font-size='34'%3E%F0%9F%A5%BE%3C/text%3E%3C/svg%3E") 22 26,pointer}
#walker-hit.punched::after{content:'🥾';font-size:36px;animation:big-kick .3s both}
#walker-hit.dragging{cursor:grabbing}
@keyframes big-kick{0%{opacity:0;transform:translate(-24px,8px) rotate(-40deg)}35%{opacity:1;transform:translate(12px,-3px) rotate(20deg)}100%{opacity:0;transform:translate(26px,-12px) rotate(40deg)}}
.usa-sticker{grid-column:1;grid-row:1;transform:rotate(-9deg) scale(1.2);filter:drop-shadow(4px 6px 2px #5b351e77);align-self:center}
.usa-sticker img{display:block;width:100%;height:auto;clip-path:polygon(5% 6%,12% 6%,18% 9%,36% 11%,52% 12%,55% 10%,58% 14%,64% 14%,68% 17%,72% 21%,73% 29%,78% 29%,83% 22%,89% 20%,91% 7%,94% 6%,98% 14%,97% 20%,92% 29%,91% 38%,88% 49%,90% 59%,83% 67%,84% 78%,97% 78%,98% 82%,98% 90%,85% 91%,81% 95%,78% 91%,75% 85%,70% 77%,65% 77%,62% 83%,58% 80%,51% 83%,49% 94%,45% 92%,42% 87%,40% 82%,36% 79%,33% 77%,30% 74%,24% 74%,19% 71%,15% 67%,11% 67%,7% 64%,5% 56%,2% 48%,2% 42%,3% 36%,2% 27%,4% 19%)}
@media(max-width:680px){.usa-sticker{width:150px;justify-self:center;margin:0 0 16px;transform:rotate(-8deg)}.masthead>.identity{grid-row:2}}
#portal .content-columns .dunks{padding-bottom:18px;overflow:visible}
.dunks-callout{position:absolute;right:-15px;bottom:-14px;z-index:2;padding:17px 23px;background:#fffca8;border:4px solid #211045;border-radius:12px;box-shadow:5px 7px 0 #fc168c;transform:rotate(-8deg);pointer-events:none;white-space:nowrap}
.dunks-callout::before{content:'';position:absolute;right:38px;top:-23px;width:25px;height:25px;background:#fffca8;border-top:4px solid #211045;border-left:4px solid #211045;transform:skewY(28deg) rotate(28deg)}
.dunks-callout span{position:relative;display:block;font:bold italic 38px/1.15 'Comic Sans MS',cursive;background:linear-gradient(110deg,#a000b8 0%,#153aff 28%,#fff 40%,#ffff80 45%,#ff22a7 52%,#a000b8 70%);background-size:260% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(1px 2px #35155a55);animation:me-shimmer 2.2s linear infinite}
@keyframes me-shimmer{from{background-position:140% 0}to{background-position:-120% 0}}
#portal .book h2{font-size:31px!important;line-height:1.12}
#portal .book .book-pdf{display:block;border:0;background:transparent;margin:18px auto;padding:0;transform:rotate(-8deg);filter:drop-shadow(5px 7px 1px #973e7f66)}
#portal .book-pdf .p-icon{width:122px;height:140px}
#portal .book .text-link{font-size:22px;font-weight:bold;line-height:1.25;overflow-wrap:normal}
#portal .content-columns .press img{image-rendering:auto}
@media(max-width:680px){.dunks-callout{right:-3px}.dunks-callout span{font-size:33px}}
@media(prefers-reduced-motion:reduce){.dunks-callout span{animation:none;background-position:60% 0}}
/* The callout spills across the gutter onto the neighboring press clipping. */
@media(min-width:1101px){
 #portal .content-stack:nth-child(2){position:relative;z-index:2}
 #portal .content-stack:nth-child(3){position:relative;z-index:1}
 #portal .dunks-callout{right:-96px;bottom:-14px}
}
#portal .content-columns .press>a:last-child{align-self:flex-end;text-align:right;margin-left:auto}
#portal .left-rail .book{display:block;transform:rotate(-3deg);margin:12px 0}
@media(max-width:680px){#portal .left-rail .book{max-width:300px;margin:22px auto 30px}}
/* Give the playable board more room without adding columns to the game. */
@media(min-width:1101px){
 #portal .right-rail .inline-mines{width:calc(100% + 76px);margin-left:-18px}
 #portal .inline-mines .minesweeper{--ms-cell-size:28px;padding:10px}
}
@media(min-width:1450px){#portal .inline-mines .minesweeper{--ms-cell-size:31px}}
@media(min-width:681px) and (max-width:1100px){
 #portal .right-rail .inline-mines{width:310px;max-width:100%;justify-self:center}
 #portal .inline-mines .minesweeper{--ms-cell-size:25px}
}
#portal .left-rail .paint-launch{display:block;margin-bottom:8px;transform:rotate(-3deg);white-space:normal}
#portal .paint-wall{margin-top:45px;background:#ffeac7;padding:22px;transform:rotate(-.5deg)}
.wall-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.wall-heading h2{font:bold 32px 'Comic Sans MS',cursive!important;color:#251183}
.wall-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:22px}.wall-drawing{margin:4px 0;background:#fff;padding:10px;border:3px outset #eee;box-shadow:4px 5px #9f775477;transform:rotate(-2deg)}.wall-drawing:nth-child(even){transform:rotate(2deg)}.wall-drawing img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#fff}.wall-drawing figcaption{padding:9px 0 3px;overflow-wrap:anywhere}.wall-drawing figcaption>*{display:block}.wall-drawing figcaption span{font:13px Tahoma,sans-serif;margin-top:5px}.wall-message:empty{display:none}
.paint-post{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:7px;align-items:end;padding:8px;background:#fff4c1;border-top:2px outset #fff;color:#111;font:12px Tahoma,sans-serif}.paint-post label{display:grid;gap:3px;flex:1 1 100px}.paint-post input{min-width:0;width:100%;padding:5px;border:2px inset #ccc;font:12px Tahoma,sans-serif;user-select:text}.paint-post button{padding:6px;border:2px outset #fff;background:#e9e3df;font:bold 12px Tahoma,sans-serif;cursor:pointer}.paint-post button:disabled{opacity:.6}.paint-post-status{flex-basis:100%;font:12px Tahoma,sans-serif}.paint-post-status:empty{display:none}
@media(max-width:680px){.wall-heading{flex-wrap:wrap}.wall-gallery{grid-template-columns:1fr}}
.cuba-postcard{transform:rotate(7deg) scale(1.12);filter:drop-shadow(7px 9px 3px #62422166)}.cuba-postcard img{display:block;width:100%;height:auto}
@media(min-width:681px){.masthead>.cuba-postcard{grid-column:3;grid-row:1}}
@media(max-width:680px){.cuba-postcard{width:160px;justify-self:center;margin:14px 0;transform:rotate(6deg)}}
#inline-paint{margin:18px 0 26px;border:4px outset #eee;background:#ece9d8;box-shadow:6px 8px 0 #a2816477;color:#000;font:11px Tahoma,sans-serif;transform:rotate(.5deg)}
#inline-paint>.app.paint{height:590px;min-height:0;display:flex;flex-direction:column;overflow:hidden}
#inline-paint .paint-main{min-height:0}
#inline-paint .paint-canvas{max-width:100%;height:auto}
#inline-paint .paint-palette{flex-wrap:wrap}
#inline-paint .paint-post{padding:12px;gap:10px}
#inline-paint .paint-post input{font-size:15px;padding:7px}
#inline-paint .paint-post button{font-size:15px;background:#ff1681;color:#fff;border-color:#ffb3d8 #a10046 #a10046 #ffb3d8;padding:8px 13px}
#inline-paint:fullscreen{transform:none;width:100%;height:100%;padding:8px}
#inline-paint:fullscreen>.app.paint{height:calc(100% - 30px)}
@media(max-width:680px){#inline-paint>.app.paint{height:540px}#inline-paint .paint-swatches{grid-template-columns:repeat(8,16px);grid-template-rows:repeat(4,16px)}#inline-paint .paint-post input{font-size:16px}}
.cuba-postcard{position:relative;container-type:inline-size}
.free-cuba{position:absolute;bottom:6%;left:1%;width:98%;text-align:center;white-space:nowrap;font:900 15cqw/1.15 Impact,'Arial Black',sans-serif;letter-spacing:-.04em;transform:rotate(-4deg);background:linear-gradient(110deg,#fff000 0%,#ffdf00 28%,#fff 42%,#69ffff 46%,#fff500 55%,#ff9700 80%);background-size:280% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-stroke:1px #ffff7c;filter:drop-shadow(2px 2px 0 #001ebc) drop-shadow(-2px -1px 0 #001ebc) drop-shadow(3px 4px 0 #101066) saturate(2);animation:free-cuba-shimmer 1.8s linear infinite}
@keyframes free-cuba-shimmer{from{background-position:140% 0}to{background-position:-140% 0}}
@media(prefers-reduced-motion:reduce){.free-cuba{animation:none;background-position:50% 0}}
/* The entire white work area is drawable; no gray overflow beside the canvas. */
#inline-paint>.app.paint{height:auto;min-height:0;overflow:visible}
#inline-paint .paint-main{flex:none;align-items:stretch;min-height:0}
#inline-paint .paint-canvas-area{background:#fff;padding:0;margin:2px;min-width:0;flex:1 1 0;overflow:hidden}
#inline-paint .paint-canvas{display:block;width:100%;max-width:none;height:auto;aspect-ratio:10/7;box-shadow:none}
#inline-paint .paint-post{border-top:0;border-bottom:2px outset #fff;padding:13px 12px}
#inline-paint .paint-post label{font-weight:bold}
#inline-paint:fullscreen>.app.paint{height:auto;max-height:100%;overflow:auto}
@media(max-width:680px){#inline-paint>.app.paint{height:auto}#inline-paint .paint-post label{flex-basis:120px}}
/* Oversized postcard with lettering spilling beyond the bottom edge. */
.masthead>.cuba-postcard{transform:rotate(7deg) scale(1.32);overflow:visible;z-index:2}
.cuba-postcard .free-cuba{bottom:-24%;left:-8%;width:120%;font-size:18cqw;transform:rotate(-16deg);z-index:2}
@media(max-width:680px){.masthead>.cuba-postcard{width:195px;margin:20px 0 42px;transform:rotate(7deg) scale(1.1)}}
#portal .linked-card{position:relative;cursor:pointer}
#portal .linked-card .card-hit-link{position:absolute;inset:0;z-index:1;display:block;margin:0;padding:0}
#portal .linked-card a:not(.card-hit-link){position:relative;z-index:2}
#portal .linked-card a.pink-button{text-align:center;text-decoration:none}
#portal .linked-card .book-pdf{cursor:pointer}
#portal .linked-card .card-hit-link:focus-visible{outline:4px dashed #f600b4;outline-offset:5px}
#portal .shortcut>.photo-link:last-child,#portal .champion>.photo-link:last-child{margin-bottom:0}
/* Drawing tools stay comfortably sized even in the zoomed-out portal. */
#inline-paint .paint-tools{flex:0 0 152px;padding:9px;gap:10px}
#inline-paint .paint-toolgrid{gap:6px;padding:5px}
#inline-paint .paint-tool{width:58px;height:58px;cursor:pointer}
#inline-paint .paint-tool-glyph{width:34px;height:34px}
#inline-paint .paint-tooloptions{gap:7px;padding:8px 4px}
#inline-paint .paint-opt{width:116px;height:43px;cursor:pointer}
#inline-paint .paint-opt-bar{width:78px}
#inline-paint .paint-fillswatch{width:58px;height:25px}
#inline-paint .paint-swatches{grid-template-columns:repeat(16,34px);grid-template-rows:repeat(2,34px);gap:4px}
#inline-paint .paint-swatch{width:34px;height:34px;cursor:pointer}
#inline-paint .paint-colorinput{width:48px;height:48px}
#inline-paint .paint-current{flex-basis:55px;width:55px;height:48px}
#inline-paint .paint-fg,#inline-paint .paint-bg{width:30px;height:30px}
#inline-paint .paint-palette{padding:10px;gap:12px}
#inline-paint .paint-post{justify-content:flex-end;background:#ece9d8}
#inline-paint .paint-post>button{font-size:21px;padding:13px 22px;min-height:56px}
#portal .wall-heading{display:flex;flex-wrap:wrap;align-items:end;gap:16px;justify-content:flex-end}
#portal .wall-heading>label{flex:1 1 170px;display:grid;gap:7px;font:18px Tahoma,sans-serif}
#portal .wall-heading input{width:100%;min-width:0;border:3px inset #eee;background:white;padding:12px;font:20px Tahoma,sans-serif;user-select:text}
#portal .wall-heading>.pink-button{font-size:24px!important;padding:13px 18px;min-height:56px;white-space:normal}
#inline-paint{margin-top:16px}
@media(max-width:680px){#inline-paint .paint-tools{flex-basis:102px;padding:4px}#inline-paint .paint-tool{width:42px;height:44px}#inline-paint .paint-tool-glyph{width:28px;height:28px}#inline-paint .paint-toolgrid{gap:3px;padding:2px}#inline-paint .paint-opt{width:86px;height:38px}#inline-paint .paint-opt-bar{width:60px}#inline-paint .paint-swatches{grid-template-columns:repeat(8,30px);grid-template-rows:repeat(4,30px);gap:3px}#inline-paint .paint-swatch{width:30px;height:30px}}
#portal .wall-heading>.paint-post{display:flex;flex-wrap:wrap;align-items:end;gap:16px;flex:1 1 100%;padding:0;border:0;background:transparent}
#portal .wall-heading .paint-post>label{flex:1 1 170px;display:grid;gap:7px;font:18px Tahoma,sans-serif}
#portal .wall-heading .paint-post>button[type=submit]{font-size:24px!important;padding:13px 18px;min-height:56px;white-space:normal}
#portal .wall-heading .paint-post-status{font:16px Tahoma,sans-serif}
#inline-paint .paint-tools .paint-palette{flex-direction:column;padding:8px 2px;gap:10px;border-top:2px groove white}
#inline-paint .paint-tools .paint-swatches{grid-template-columns:repeat(4,27px);grid-template-rows:repeat(8,27px);gap:3px}
#inline-paint .paint-tools .paint-swatch{width:27px;height:27px}
#inline-paint .paint-tools .paint-current{flex-basis:48px}
@media(max-width:680px){#inline-paint .paint-tools .paint-swatches{grid-template-columns:repeat(3,26px);grid-template-rows:repeat(11,26px);gap:3px}#inline-paint .paint-tools .paint-swatch{width:26px;height:26px}}
#portal .shortcut .burst{width:130px;height:92px;right:-10px;top:-30px}
#portal .shortcut .burst b{max-width:100px;white-space:normal;text-align:center;font-size:22px;line-height:1.05}
#portal .shortcut .intro{font-weight:bold}
#portal .nav-stack>a{display:flex;align-items:center;gap:12px;text-align:left;background:linear-gradient(#ff3297 0%,#ff0069 48%,#f7005d 70%,#ff087f 100%);border:5px solid;border-color:#ff8cc8 #a20049 #b00050 #ff86c4;box-shadow:1px 1px 2px #73657c;color:white;padding:9px 8px;font:bold 23px 'Times New Roman',serif;text-shadow:1px 1px #7f003d;text-decoration:none}
#portal .nav-stack>a:hover{filter:brightness(1.14)}
@media(max-width:1100px){#portal .nav-stack>a{font-size:19px;padding:7px 3px;gap:5px}}
@media(max-width:680px){#portal .nav-stack>a{flex-shrink:0;font-size:16px;padding:5px}}

/* A tiny lab specimen, tucked beneath Project Sid. */
#portal .fruitless{width:88%;align-self:center;margin:-18px 0 24px 14%;padding:18px 22px;background:linear-gradient(125deg,#e9ff51,#baff20 65%,#8df7ac);border:4px outset #eaffae;transform:translateX(40px) rotate(9deg);z-index:3;box-shadow:7px 9px 0 #34250060;color:#192500;overflow:visible}
#portal .fruitless h2{margin:3px 0 8px;font:bold 39px/1 Impact,'Arial Black',sans-serif;color:#6400bd;text-shadow:2px 2px #fff600,-1px -1px #ff65de}
#portal .fruitless p{margin:0 0 10px;font-size:19px;line-height:1.3}
#portal .fruitless-label{display:inline-block;background:#190724;color:#f5ff00;padding:3px 7px;font:bold 13px monospace;letter-spacing:2px;transform:rotate(3deg)}
#portal .fruitless-fly{float:right;margin:-27px -29px 0 4px;width:88px;height:100px;transform:rotate(19deg);filter:contrast(1.7) saturate(2.7) drop-shadow(5px 5px 0 #8200a9);pointer-events:none}
#portal .fruitless>a:not(.card-hit-link){font-weight:bold;color:#6000b0}
@media(max-width:680px){#portal .fruitless{width:90%;margin:-10px auto 26px;transform:translateX(18px) rotate(7deg)}#portal .fruitless-fly{width:72px;height:82px}}

/* The body stays still; short wing flutters happen between long rests. */
#portal .fly-wing{transform-box:fill-box;transform-origin:center bottom;animation:fruitless-wings 5s linear infinite}
@keyframes fruitless-wings{
 0%,78%,82%,86%,90%,94%,98%,100%{transform:scaleX(1)}
 80%,84%,88%,92%,96%{transform:scaleX(.22)}
}
@media(prefers-reduced-motion:reduce){#portal .fly-wing{animation:none}}

/* Give finished drawings room, then tuck the editor away after posting. */
#portal .wall-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;padding:16px 8px}
#portal .wall-drawing{padding:16px}
#portal .wall-drawing img{aspect-ratio:10/7}
#portal .wall-drawing:only-child{grid-column:1/-1}
#portal .wall-drawing figcaption strong{font-size:25px}
#portal .wall-drawing figcaption span{font-size:18px}
#inline-paint[hidden],#portal .paint-expand[hidden]{display:none!important}
#portal .wall-heading.paint-collapsed .paint-post>label,
#portal .wall-heading.paint-collapsed .paint-post>button[type=submit]{display:none}
#portal .wall-heading.paint-collapsed>.paint-post{flex:1 1 220px;align-self:center}
#portal .wall-heading.paint-collapsed{min-height:76px;align-items:center}
@media(max-width:900px){#portal .wall-gallery{grid-template-columns:1fr;gap:28px}}

.site-bot-check{width:min(100%,320px);min-width:0;position:relative;z-index:10}.paint-post>.site-bot-check{flex:1 1 100%}

#portal .shortcut-title,#portal .dunk-title{font:900 52px/.98 Impact,'Arial Black',sans-serif!important;letter-spacing:-1px;margin:4px 0 18px;transform:rotate(-2deg);-webkit-text-stroke:1px currentColor}
#portal .shortcut-title{color:#006824;text-shadow:2px 2px #e8ff00,4px 4px #164600,6px 6px #ff32b1;gap:12px}
#portal .shortcut-title>span{display:block;min-width:0}
#portal .dunk-title{font-size:58px!important;color:#ff4800;text-shadow:2px 2px #fffa00,4px 4px #821400,6px 6px #b000ff;filter:saturate(1.7) contrast(1.15)}
@media(max-width:680px){#portal .shortcut-title{font-size:43px!important}#portal .dunk-title{font-size:49px!important}}

/* Keep the Shortcut headline bold, spacious, and easy to read. */
#portal .feature-grid .shortcut-title{display:block;font:900 54px/1.08 'Arial Black',Arial,sans-serif!important;letter-spacing:-1px;color:#006b32;text-shadow:2px 2px 0 #fff;transform:none;-webkit-text-stroke:0;filter:none;margin:6px 0 18px}
@media(max-width:680px){#portal .feature-grid .shortcut-title{font-size:46px!important}}

/* Two smaller, loosely pinned drawings per row, including the first post. */
#portal .wall-gallery{grid-template-columns:repeat(2,minmax(0,1fr));width:86%;margin:0 auto;gap:44px 36px;align-items:start;padding:24px 8px 42px}
#portal .wall-drawing,#portal .wall-drawing:only-child{grid-column:auto;width:var(--art-width,98%);justify-self:center;min-width:0;padding:12px;transform:translateY(var(--art-offset,0px)) rotate(var(--art-tilt,-2deg))}
#portal .wall-drawing figcaption strong{font-size:22px}
#portal .wall-drawing figcaption span{font-size:16px}
@media(max-width:680px){#portal .wall-gallery{width:100%;gap:26px 16px;padding-inline:4px}#portal .wall-drawing{padding:7px}#portal .wall-drawing figcaption strong{font-size:17px}#portal .wall-drawing figcaption span{font-size:12px}}

#portal .shortcut{container-type:inline-size}
#portal .feature-grid .shortcut-title{font-size:clamp(18px,8.1cqw,40px)!important;line-height:1.15!important;letter-spacing:-.6px;white-space:nowrap;margin-bottom:14px}
#portal .shortcut .intro{font:bold clamp(23px,6.1cqw,30px)/1.2 Arial,sans-serif;color:#16432d;margin:8px 0 15px}

/* Stronger scrapbook angles for the six main cards. */
#portal .content-columns .shortcut{transform:rotate(-3.2deg) translateX(4px)}
#portal .content-columns .champion{transform:rotate(2.8deg) translate(-3px,6px)}
#portal .content-columns .research{transform:rotate(2.6deg) translate(4px,-5px)}
#portal .content-columns .dunks{transform:rotate(-3.4deg) translate(-2px,-3px)}
#portal .content-columns .xbench{transform:rotate(-2.9deg) translateX(-5px)}
#portal .content-columns .press{transform:rotate(3.5deg) translate(-4px,-5px)}

/* A longer lab note, with enough room to explain the actual experiment. */
#portal .content-columns .fruitless{width:96%;align-self:center;margin:8px 0 30px 4%;padding:24px 26px;transform:translateX(16px) rotate(2.5deg)}
#portal .fruitless h2{font-size:43px;margin-bottom:5px}
#portal .fruitless .fruitless-intro{font-weight:bold;margin-bottom:20px}
#portal .fruitless h3{font:bold 24px/1.2 Georgia,serif;color:#4e0784;margin:22px 0 10px}
#portal .fruitless p{font-size:20px;line-height:1.45;margin:0 0 16px}
#portal .fruitless .fruitless-finding{background:#f7ffb7;border-left:5px solid #7600ae;padding:12px 14px}
#portal .fruitless .fruitless-caveat{font-size:18px;line-height:1.45}
#portal .fruitless>a:not(.card-hit-link){display:inline-block;font-size:21px;margin-top:3px}
@media(max-width:680px){#portal .content-columns .fruitless{width:96%;margin:10px auto 30px;padding:20px;transform:rotate(1.5deg)}}

/* Visitor art fills both side rails and grows alongside the entire page. */
#portal .wall-gallery.side-art{display:flex;flex-direction:column;width:100%;margin:24px 0 0;gap:34px;padding:12px 0 34px;align-items:center;min-width:0}
#portal .side-art:empty{display:none}
#portal .side-art .wall-drawing{flex:none;width:var(--art-width,98%);padding:9px;scroll-margin-top:70px}
#portal .side-art .wall-drawing figcaption strong{font-size:21px}
#portal .side-art .wall-drawing figcaption span{font-size:15px}
@media(min-width:1101px){#portal .left-rail,#portal .right-rail{align-self:start}}
@media(min-width:681px) and (max-width:1100px){#portal .right-rail .side-art{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}
@media(max-width:680px){#portal .left-rail>.side-art{display:flex;max-width:290px;margin:28px auto}#portal .right-rail>.side-art{max-width:290px;margin:28px auto}#portal .side-art:empty{display:none}}

/* A wide, shallow research note beneath the main cards. */
#portal .main-column>.fruitless{width:97%;margin:32px auto 38px;padding:20px 26px;transform:rotate(1deg);box-sizing:border-box}
#portal .main-column>.fruitless h2{font-size:38px;margin:0 0 14px}
#portal .fruitless-copy{display:grid;grid-template-columns:1fr 1.15fr;gap:28px;clear:both}
#portal .fruitless-copy p{font-size:19px;line-height:1.35;margin:0 0 12px}
#portal .main-column>.fruitless>a:not(.card-hit-link){font-size:18px;margin:0}
#portal .main-column>.fruitless .fruitless-fly{width:70px;height:80px;margin:-26px -13px -22px 8px}
@media(max-width:680px){#portal .main-column>.fruitless{width:98%;padding:18px;margin:24px auto;transform:rotate(.6deg)}#portal .fruitless-copy{grid-template-columns:1fr;gap:0}#portal .fruitless-copy p{font-size:17px}}

#portal .main-column>.fruitless{padding:15px 24px;margin-top:25px;margin-bottom:28px}
#portal .main-column>.fruitless h2{font-size:33px;margin-bottom:9px}
#portal .fruitless-copy{grid-template-columns:1fr 1fr;gap:24px}
#portal .fruitless-copy p{font-size:18px;line-height:1.28;margin-bottom:9px}
#portal .main-column>.fruitless .fruitless-fly{width:58px;height:64px;margin:-20px -10px -22px 8px}
@media(max-width:680px){#portal .fruitless-copy{grid-template-columns:1fr;gap:0}}

#portal .fruitless-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:28px;clear:both}
#portal .fruitless-layout .fruitless-copy{display:block}
#portal .fruitless-chart{display:block;margin:0;background:#fff;border:3px ridge #e9e9d3;transform:rotate(-1deg)}
#portal .fruitless-chart img{display:block;width:100%;height:auto}
#portal .left-rail>.guadalupe-sticker{display:block;width:112%;margin:16px -6% 28px;transform:rotate(-5deg)}
.guadalupe-sticker img{display:block;width:100%;height:auto;clip-path:polygon(43% 0,65% 0,81% 5%,87% 19%,95% 45%,100% 70%,100% 98%,0 100%,0 65%,7% 37%,20% 15%);filter:drop-shadow(4px 5px 0 #713471)}
@media(max-width:680px){#portal .fruitless-layout{grid-template-columns:1fr;gap:16px}#portal .left-rail>.guadalupe-sticker{max-width:240px;width:90%;margin:24px auto}}

/* A quiet footprint message pressed into the sand at the page's lower right. */
#portal .right-rail{align-self:stretch}
#portal .sand-trail-note{flex:none;margin-top:auto;padding-top:52px;padding-bottom:24px;width:100%;text-align:center;pointer-events:none;transform:rotate(-7deg)}
.sand-trail-note svg{display:block;width:100%;height:auto;max-width:220px;margin:0 auto;fill:#78552b;opacity:.6;filter:drop-shadow(1px 2px 0 #fff0c4)}
.sand-trail-note span{display:block;color:#73502c;font:bold italic 33px/1.2 'Comic Sans MS',cursive;text-shadow:1px 2px 0 #fff0ca;letter-spacing:1px;opacity:.85;transform:rotate(4deg)}
@media(max-width:1100px){#portal .sand-trail-note{grid-column:1/-1;max-width:210px;justify-self:end;margin-left:auto}}

#portal .cuban-cigar{width:112%;margin:-12px -6% -14px;pointer-events:none;position:relative;z-index:2}
.cuban-cigar svg{display:block;width:100%;height:auto;overflow:visible;filter:drop-shadow(3px 5px 2px #51321d55)}
.cigar-smoke{stroke-width:5;filter:blur(1.4px)}
.smoke-wisp{opacity:0;transform-origin:235px 119px;animation:cigar-drift 5.4s ease-out infinite}
.wisp-two{animation-delay:-1.8s;stroke-width:7}
.wisp-three{animation-delay:-3.6s;stroke-width:4}
.cigar-ember{animation:cigar-glow 3.5s ease-in-out infinite}
@keyframes cigar-drift{0%{opacity:0;transform:translate(0,8px) scale(.65,.7)}20%{opacity:.55}65%{opacity:.28}100%{opacity:0;transform:translate(-18px,-42px) scale(1.25,1.15)}}
@keyframes cigar-glow{0%,100%{filter:brightness(.85)}45%{filter:brightness(1.65) drop-shadow(0 0 5px #ff6c0c)}}
@media(prefers-reduced-motion:reduce){.smoke-wisp{animation:none;opacity:.25}.wisp-two,.wisp-three{opacity:0}.cigar-ember{animation:none}}
@media(max-width:1100px){#portal .cuban-cigar{grid-column:1/-1;width:250px;margin:0 auto -15px}}

/* Compact Fruitless strip: small chart, top-aligned copy, no empty middle. */
#portal .fruitless-layout{grid-template-columns:minmax(0,1fr) minmax(0,260px);align-items:start;gap:22px}
#portal .main-column>.fruitless{padding:14px 22px;margin-bottom:24px}
#portal .main-column>.fruitless h2{margin:0 0 10px}
#portal .fruitless-layout .fruitless-chart{width:100%;max-width:260px;justify-self:end}
#portal .fruitless-layout .fruitless-copy p{margin:0 0 9px}
#portal .main-column>.fruitless .fruitless-fly{position:absolute;right:14px;top:6px;width:43px;height:49px;margin:0}
@media(max-width:680px){#portal .fruitless-layout{grid-template-columns:1fr;gap:12px}#portal .fruitless-layout .fruitless-chart{max-width:220px;justify-self:center}}

#portal .right-rail>.cuban-cigar{width:115%;height:auto;aspect-ratio:5.4;margin:-10px -7.5%;padding:0;position:relative;z-index:8;overflow:visible;transform:rotate(-3deg);pointer-events:none}
.cuban-cigar .cigar-photo{position:absolute;inset:0;overflow:hidden}
.cuban-cigar .cigar-photo img{position:absolute;width:100%;height:auto;left:0;top:50%;transform:translateY(-50%);filter:contrast(1.12) saturate(1.25)}
.cuban-cigar svg.cigar-smoke-overlay{position:absolute;width:220px;height:330px;max-width:none;left:calc(7% - 92px);bottom:40%;overflow:visible;filter:blur(2px);z-index:2}
.real-smoke{opacity:0;stroke-width:7;transform-origin:100px 330px;animation:real-cigar-smoke 7s ease-out infinite}
.smoke-b{stroke-width:11;animation-delay:-2.3s}
.smoke-c{stroke-width:5;animation-delay:-4.6s}
@keyframes real-cigar-smoke{0%{opacity:0;transform:translate(0,8px) scale(.5,.7)}18%{opacity:.5}65%{opacity:.23}100%{opacity:0;transform:translate(-45px,-65px) scale(1.3,1.2)}}
@media(max-width:1100px){#portal .right-rail>.cuban-cigar{width:250px;margin:-8px auto;grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.real-smoke{animation:none;opacity:.2}.smoke-b,.smoke-c{opacity:0}}

/* Fuller, more visible smoke drifting over the nearby cards. */
.cuban-cigar svg.cigar-smoke-overlay{width:250px;height:390px;left:calc(7% - 104px);filter:blur(2.2px) drop-shadow(1px 1px 1px #60452c55)}
.cigar-smoke-overlay .real-smoke{stroke:#fff9ef;stroke-width:11}
.cigar-smoke-overlay .smoke-b{stroke-width:17}
.cigar-smoke-overlay .smoke-c{stroke-width:9}
@keyframes real-cigar-smoke{0%{opacity:0;transform:translate(0,8px) scale(.5,.7)}15%{opacity:.85}45%{opacity:.65}75%{opacity:.35}100%{opacity:0;transform:translate(-45px,-65px) scale(1.3,1.2)}}

/* Bottom cards lean in opposing directions rather than marching in parallel. */
#portal .content-columns .research{transform:translate(-7px,5px) rotate(-4.4deg)}
#portal .content-columns .champion{transform:translate(5px,23px) rotate(4.8deg)}
#portal .content-columns .press{transform:translate(9px,-10px) rotate(-2.7deg)}

#portal .content-columns .xbench{transform:translate(-20px,3px) rotate(3.8deg);z-index:4}
#portal .content-columns .champion{margin-top:-22px;transform:translate(5px,-4px) rotate(3deg);z-index:3}
@media(min-width:1101px){#portal .content-stack:nth-child(2),#portal .content-stack:nth-child(3){z-index:auto}#portal .content-columns .dunks{z-index:2}#portal .content-columns .press{z-index:1}}
@media(max-width:680px){#portal .content-columns .xbench{transform:rotate(3deg)}}

/* Phone overview uses a fitted desktop canvas rather than stacking the collage. */
html.mobile-overview{ -webkit-text-size-adjust:100%;text-size-adjust:100% }
html.mobile-overview #portal{zoom:1;width:94%;max-width:1280px;padding:24px 20px 48px;margin-inline:auto}

/* Local mobile review: fixed wide composition, scaled to the actual viewport. */
#portal .wall-gallery.mobile-art{display:none}
html.mobile-overview,html.mobile-overview body{overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
html.mobile-overview #portal{width:1400px;max-width:none;zoom:var(--overview-scale);margin:0 auto;padding:24px 30px 48px}
html.mobile-overview #portal .masthead{display:grid;grid-template-columns:170px minmax(0,1fr) 170px;gap:24px;margin-bottom:26px}
html.mobile-overview #portal .masthead>.usa-sticker{display:block;width:100%}
html.mobile-overview #portal .masthead>.cuba-postcard{width:170px;margin:0;transform:rotate(7deg) scale(1.2)}
html.mobile-overview #portal .identity h1{font-size:82px;letter-spacing:-3px;margin:0}
html.mobile-overview #portal .tagline{font-size:24px}
html.mobile-overview #portal .portal-grid{display:grid;grid-template-columns:170px minmax(0,1fr) 175px;gap:20px;padding:0}
html.mobile-overview #portal .left-rail,html.mobile-overview #portal .right-rail{display:flex;flex-direction:column;grid-column:auto;gap:18px;margin:0;min-width:0}
html.mobile-overview #portal .left-rail>*{display:block}
html.mobile-overview #portal .nav-stack{display:flex;flex-direction:column;overflow:visible;gap:8px;padding:7px}
html.mobile-overview #portal .nav-stack>a{font-size:21px;gap:8px;padding:8px}
html.mobile-overview #portal .left-rail>.guadalupe-sticker{width:112%;max-width:none;margin:12px -6% 24px}
html.mobile-overview #portal .left-rail .book{width:100%;margin:12px 0}
html.mobile-overview #portal .right-rail .mini-popup{width:100%;max-width:none;margin:0}
html.mobile-overview #portal .right-rail .inline-mines{width:calc(100% + 32px);max-width:none;margin:4px 0 4px -12px;--ms-cell-size:19px}
html.mobile-overview #portal .inline-mines .minesweeper{--ms-cell-size:19px}
html.mobile-overview #portal .right-rail>.cuban-cigar{width:115%;margin:-10px -7.5%;grid-column:auto}
html.mobile-overview #portal .feature-grid.content-columns{display:grid;grid-template-columns:1.06fr 1.08fr .82fr;gap:0 8px;align-items:start}
html.mobile-overview #portal .content-stack,html.mobile-overview #portal .content-stack:last-child{display:flex;flex-direction:column;grid-column:auto;gap:25px;min-width:0}
html.mobile-overview #portal .content-columns .press{width:100%;max-width:none;margin:0}
html.mobile-overview #portal .feature-grid .shortcut-title{font-size:8.1cqw!important}
html.mobile-overview #portal .content-columns .xbench{transform:translate(-20px,3px) rotate(3.8deg)}
html.mobile-overview #portal .content-columns .dunks{z-index:2}
html.mobile-overview #portal .content-columns .press{z-index:1}
html.mobile-overview #portal .dunks-callout{right:-55px;bottom:-14px;padding:12px 16px}
html.mobile-overview #portal .dunks-callout span{font-size:31px}
html.mobile-overview #portal .main-column>.fruitless{width:97%;padding:14px 22px;transform:rotate(1deg)}
html.mobile-overview #portal .fruitless-layout{grid-template-columns:minmax(0,1fr) 220px;gap:20px}
html.mobile-overview #portal .fruitless-layout .fruitless-chart{max-width:220px;justify-self:end}
html.mobile-overview #portal .wall-gallery.side-art{display:none}
html.mobile-overview #portal .wall-gallery.mobile-art:not(:empty){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:24px;margin:16px 0 28px;padding:12px}
html.mobile-overview #portal .wall-drawing{padding:9px}
html.mobile-overview #portal .wall-heading>.paint-post{flex-wrap:nowrap;gap:14px}
html.mobile-overview #portal .wall-heading .paint-post>label{flex:1 1 0;min-width:0}
html.mobile-overview #portal .wall-heading .paint-post>button[type=submit]{flex:0 0 210px;font-size:23px!important}
html.mobile-overview #inline-paint .paint-main{align-items:flex-start}
html.mobile-overview #inline-paint .paint-tools{flex:0 0 118px;padding:6px;gap:6px}
html.mobile-overview #inline-paint .paint-toolgrid{gap:4px;padding:2px}
html.mobile-overview #inline-paint .paint-tool{width:46px;height:38px}
html.mobile-overview #inline-paint .paint-tool-glyph{width:27px;height:27px}
html.mobile-overview #inline-paint .paint-opt{width:96px;height:25px}
html.mobile-overview #inline-paint .paint-opt-bar{width:68px}
html.mobile-overview #inline-paint .paint-tooloptions{gap:4px;padding:4px 2px}
html.mobile-overview #inline-paint .paint-tools .paint-swatches{grid-template-columns:repeat(4,22px);grid-template-rows:repeat(8,18px);gap:2px}
html.mobile-overview #inline-paint .paint-tools .paint-swatch{width:22px;height:18px}
html.mobile-overview #inline-paint .paint-tools .paint-palette{padding:5px 0;gap:5px}
html.mobile-overview #inline-paint .paint-canvas-area{align-self:flex-start;background:white}
html.mobile-overview #inline-paint .paint-canvas{width:100%;height:auto;aspect-ratio:10/7}

/* Explicit header placement prevents the old phone rules moving the name below USA. */
html.mobile-overview #portal .masthead{grid-template-columns:minmax(0,.8fr) minmax(0,1.7fr) minmax(0,.8fr);align-items:center;gap:28px;padding:24px 8px 30px;margin-bottom:20px}
html.mobile-overview #portal .masthead>.usa-sticker{grid-column:1;grid-row:1;width:205px;max-width:100%;margin:0;justify-self:center;transform:rotate(-9deg)}
html.mobile-overview #portal .masthead>.identity{grid-column:2;grid-row:1;min-width:0;width:100%;justify-self:center}
html.mobile-overview #portal .masthead>.cuba-postcard{grid-column:3;grid-row:1;width:205px;max-width:100%;margin:0 0 24px;justify-self:center;transform:rotate(7deg)}
html.mobile-overview #portal .name-row{display:flex;justify-content:center;align-items:center;gap:12px;min-width:0}
html.mobile-overview #portal .identity h1{font-size:72px;letter-spacing:-3px;line-height:1.15;margin:0;white-space:nowrap}
html.mobile-overview #portal .name-row .fried-fire{width:48px;height:72px;flex:0 0 48px;margin:0}
html.mobile-overview #portal .tagline{font-size:25px;line-height:1.2;white-space:nowrap;margin:18px 0 0}

/* Three columns total on phones: sidebar items join the main collage. */
.mobile-utilities,.mobile-social{display:none}
html.mobile-overview #portal{width:1040px;max-width:none;padding:24px 24px 40px}
html.mobile-overview #portal .portal-grid{display:block}
html.mobile-overview #portal .portal-grid>.left-rail,html.mobile-overview #portal .portal-grid>.right-rail{display:none}
html.mobile-overview #portal .main-column{display:block;width:100%;min-width:0}
html.mobile-overview #portal .masthead{grid-template-columns:180px minmax(0,1fr) 180px;gap:22px;padding:16px 0 26px}
html.mobile-overview #portal .masthead>.usa-sticker,html.mobile-overview #portal .masthead>.cuba-postcard{width:160px}
html.mobile-overview #portal .identity h1{font-size:57px;letter-spacing:-2px}
html.mobile-overview #portal .tagline{font-size:23px}
html.mobile-overview #portal .name-row .fried-fire{width:37px;height:57px;flex-basis:37px}
html.mobile-overview #portal .mobile-social{display:block;margin:0 8px 22px}
html.mobile-overview #portal .mobile-social .nav-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;transform:rotate(-.7deg)}
html.mobile-overview #portal .mobile-social .nav-stack>a{justify-content:center;font-size:25px}
html.mobile-overview #portal .mobile-utilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:36px 10px 28px;align-items:start}
html.mobile-overview #portal .mobile-utility-column{display:flex;flex-direction:column;gap:20px;min-width:0}
html.mobile-overview #portal .mobile-utilities .guadalupe-sticker{display:block;width:78%;margin:0 auto;transform:rotate(-6deg)}
html.mobile-overview #portal .mobile-utilities .counter{transform:rotate(2deg)}
html.mobile-overview #portal .mobile-utilities .book{margin:0;transform:rotate(-3deg)}
html.mobile-overview #portal .mobile-utilities .mail-panel{transform:rotate(2deg)}
html.mobile-overview #portal .mobile-utilities .cuban-cigar{width:100%;aspect-ratio:5.4;margin:4px 0 -8px;position:relative;transform:rotate(-3deg);z-index:8}
html.mobile-overview #portal .mobile-utilities .inline-mines{display:block;width:100%;max-width:none;margin:0;transform:rotate(3deg)}
html.mobile-overview #portal .mobile-utilities .inline-mines .minesweeper{--ms-cell-size:25px}
html.mobile-overview #portal .mobile-utilities .paint-launch{white-space:normal}

/* Oversized white glove for hovering and holding the walker. */
#walker-hit{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Cg%20stroke%3D%22%2325203b%22%20stroke-width%3D%223.5%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M24%2075%2019%2054%207%2043Q2%2034%2010%2031Q15%2029%2027%2040L19%2017Q17%208%2024%207Q30%206%2033%2014L41%2033%2036%209Q36%202%2043%203Q49%203%2050%2011L54%2032%2055%2013Q57%205%2063%208Q69%2010%2067%2018L65%2039%2072%2025Q77%2018%2083%2023Q87%2027%2083%2034L74%2060Q70%2071%2062%2077Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M23%2073%2065%2073%2068%2091%2023%2091Z%22%20fill%3D%22%23dedaf0%22%2F%3E%3Cpath%20d%3D%22M31%2047Q43%2041%2056%2048M37%2055Q48%2050%2060%2054M28%2079H62%22%20fill%3D%22none%22%20stroke%3D%22%23a19bad%22%20stroke-width%3D%223%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 44 43,grab}
#walker-hit.dragging{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Cg%20stroke%3D%22%2325203b%22%20stroke-width%3D%223.5%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M24%2074%2016%2048Q9%2030%2020%2025Q27%2022%2033%2034L33%2021Q34%2012%2042%2015L48%2018Q53%2010%2062%2018Q72%2013%2078%2022L81%2043Q81%2065%2066%2076Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M20%2043Q33%2038%2043%2046L57%2050Q65%2056%2057%2062L38%2059M47%2020%2047%2035M62%2021%2062%2036M74%2025%2074%2039%22%20fill%3D%22none%22%20stroke%3D%22%23a19bad%22%2F%3E%3Cpath%20d%3D%22M24%2073%2067%2073%2069%2091%2023%2091Z%22%20fill%3D%22%23dedaf0%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 47 44,grabbing}
#walker-hit.punched::after{display:none}

/* Hover below his face; the held glove is drawn around his body in the scene. */
#walker-hit{cursor:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2272%22%20height%3D%2288%22%20viewBox%3D%220%200%2096%20112%22%3E%3Cg%20transform%3D%22translate%280%2018%29%22%20stroke%3D%22%23393143%22%20stroke-width%3D%223%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M24%2075%2019%2054%207%2043Q2%2034%2010%2031Q15%2029%2027%2040L19%2017Q17%208%2024%207Q30%206%2033%2014L41%2033%2036%209Q36%202%2043%203Q49%203%2050%2011L54%2032%2055%2013Q57%205%2063%208Q69%2010%2067%2018L65%2039%2072%2025Q77%2018%2083%2023Q87%2027%2083%2034L74%2060Q70%2071%2062%2077Z%22%20fill%3D%22%23fffdf5%22%2F%3E%3Cpath%20d%3D%22M23%2073%2065%2073%2068%2091%2023%2091Z%22%20fill%3D%22%23e9e5f3%22%2F%3E%3Cpath%20d%3D%22M31%2047Q43%2041%2056%2048M37%2055Q48%2050%2060%2054%22%20fill%3D%22none%22%20stroke%3D%22%23b8afbe%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") 32 0,grab}
#walker-hit.dragging{cursor:none}

html.mobile-overview{scrollbar-width:none}
html.mobile-overview::-webkit-scrollbar,html.mobile-overview body::-webkit-scrollbar{display:none}
html.mobile-overview body{width:100%;min-width:0;overflow:visible}
#portal .fruitless-chart img{aspect-ratio:5/4}

/* Real phone layout: two readable columns, without scaling the whole document. */
@media(max-width:600px){
 html.mobile-overview #portal{zoom:1;width:100%;max-width:100%;padding:16px 14px 32px;margin:0}
 html.mobile-overview #portal .masthead{grid-template-columns:80px minmax(0,1fr) 80px;gap:4px 8px;padding:8px 0 16px;margin:0 0 10px}
 html.mobile-overview #portal .masthead>.identity{grid-column:1/-1;grid-row:1}
 html.mobile-overview #portal .identity h1{font-size:clamp(31px,8.8vw,49px);letter-spacing:-2px;line-height:1.15}
 html.mobile-overview #portal .name-row{gap:7px}
 html.mobile-overview #portal .name-row .fried-fire{width:24px;height:36px;flex-basis:24px}
 html.mobile-overview #portal .tagline{font-size:13px;margin:12px 0 4px;white-space:nowrap}
 html.mobile-overview #portal .masthead>.usa-sticker{grid-row:2;grid-column:1;width:73px;margin:0;transform:rotate(-8deg)}
 html.mobile-overview #portal .masthead>.cuba-postcard{grid-row:2;grid-column:3;width:72px;margin:0 0 8px;transform:rotate(7deg)}
 html.mobile-overview #portal .mobile-social{margin:0 0 16px}
 html.mobile-overview #portal .mobile-social .nav-stack{padding:4px;gap:5px;border-width:2px}
 html.mobile-overview #portal .mobile-social .nav-stack>a{font-size:14px;gap:4px;padding:7px 2px;border-width:3px;white-space:nowrap}
 html.mobile-overview #portal .mobile-social .p-icon{width:15px;height:15px}
 html.mobile-overview #portal .sunset{min-height:72px;padding:9px 5px;margin-bottom:21px}
 html.mobile-overview #portal .sunset>span{font-size:12px}
 html.mobile-overview #portal .sunset strong{font-size:18px}
 html.mobile-overview #portal .feature-grid.content-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 12px}
 html.mobile-overview #portal .content-stack,html.mobile-overview #portal .content-stack:last-child{display:contents}
 html.mobile-overview #portal .content-columns .panel{padding:11px 9px;min-width:0;margin:0;height:auto;align-self:start}
 html.mobile-overview #portal .content-columns .shortcut{order:1;transform:rotate(-2deg)}
 html.mobile-overview #portal .content-columns .dunks{order:2;transform:rotate(2deg);padding-bottom:13px}
 html.mobile-overview #portal .content-columns .xbench{order:3;transform:rotate(2deg)}
 html.mobile-overview #portal .content-columns .research{order:4;transform:rotate(-2.4deg)}
 html.mobile-overview #portal .content-columns .champion{order:5;transform:rotate(-1.5deg)}
 html.mobile-overview #portal .content-columns .press{order:6;transform:rotate(2deg)}
 html.mobile-overview #portal .feature-grid .shortcut-title{font:900 clamp(12px,3.7vw,20px)/1.2 Arial,sans-serif!important;letter-spacing:-.4px;white-space:nowrap;margin:4px 0 9px;text-shadow:1px 1px #fff}
 html.mobile-overview #portal .shortcut .intro{font:bold 14px/1.22 Arial,sans-serif;margin:0 0 10px}
 html.mobile-overview #portal .dunk-title{font:900 clamp(22px,6.4vw,34px)/1.05 Impact,'Arial Black',sans-serif!important;letter-spacing:-.7px;-webkit-text-stroke:0;margin:2px 0 10px;text-shadow:1px 1px #fff800,2px 2px #bd004b}
 html.mobile-overview #portal .feature-grid .xbench-title{font-size:26px!important;letter-spacing:0;margin-bottom:9px}
 html.mobile-overview #portal .feature-grid .intro{font-size:14px}
 html.mobile-overview #portal .research h2,html.mobile-overview #portal .champion h2{font-size:16px!important;line-height:1.15;min-height:0;margin:0 0 10px;padding:0}
 html.mobile-overview #portal .research p{font-size:11px;line-height:1.3}
 html.mobile-overview #portal .photo-link{margin:9px 0;border-width:2px}
 html.mobile-overview #portal .play{font-size:20px;width:30px;height:28px;line-height:28px}
 html.mobile-overview #portal .pink-button{font-size:14px!important;padding:5px 7px}
 html.mobile-overview #portal .text-link{font-size:13px}
 html.mobile-overview #portal .burst{width:46px;height:46px;top:-15px;right:-7px;font-size:16px}
 html.mobile-overview #portal .shortcut .burst{width:66px;height:48px;top:-21px;right:-4px}
 html.mobile-overview #portal .shortcut .burst b{font-size:12px;line-height:1;max-width:52px}
 html.mobile-overview #portal .dunks-callout{right:-4px;bottom:-17px;padding:6px 8px;border-width:2px;border-radius:6px;box-shadow:3px 3px #ff168d;transform:rotate(-8deg)}
 html.mobile-overview #portal .dunks-callout span{font-size:18px}
 html.mobile-overview #portal .dunks-callout::before{width:12px;height:12px;top:-11px;right:17px;border-width:2px}
 html.mobile-overview #portal .press img{padding:4px;border-width:2px}
 html.mobile-overview #portal .press>a:last-child{font-size:13px}
 html.mobile-overview #portal .mobile-utilities{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:28px 0 24px}
 html.mobile-overview #portal .mobile-utility-column{gap:15px;min-width:0}
 html.mobile-overview #portal .mobile-utility-column:last-child{grid-column:1/-1;width:255px;max-width:90%;justify-self:center;gap:9px}
 html.mobile-overview #portal .mobile-utilities .book,html.mobile-overview #portal .mobile-utilities .mail-panel{padding:12px 9px}
 html.mobile-overview #portal .book h2{font-size:18px!important;line-height:1.12}
 html.mobile-overview #portal .book-pdf{width:68px;height:83px;margin:10px auto}
 html.mobile-overview #portal .book-pdf .p-icon{width:62px;height:76px}
 html.mobile-overview #portal .mail-panel h2{font-size:20px}
 html.mobile-overview #portal .mail-art{width:65px;height:54px}
 html.mobile-overview #portal .mail-panel>a{font-size:12px}
 html.mobile-overview #portal .counter{padding:8px;font-size:15px}
 html.mobile-overview #portal .digits{font-size:22px;letter-spacing:2px}
 html.mobile-overview #portal .counter>span{font-size:10px}
 html.mobile-overview #portal .mobile-utilities .inline-mines .minesweeper{--ms-cell-size:23px}
 html.mobile-overview #portal .main-column>.fruitless{width:100%;padding:13px 12px;margin:24px 0;transform:rotate(.6deg)}
 html.mobile-overview #portal .fruitless h2{font-size:29px;margin-bottom:12px}
 html.mobile-overview #portal .fruitless-layout{grid-template-columns:1fr;gap:14px}
 html.mobile-overview #portal .fruitless-layout .fruitless-copy p{font-size:14px;line-height:1.35}
 html.mobile-overview #portal .fruitless-layout .fruitless-chart{width:220px;max-width:85%;justify-self:center}
 html.mobile-overview #portal .fruitless-copy>a{font-size:14px}
 html.mobile-overview #portal .wall-gallery.mobile-art:not(:empty){grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 13px;margin:20px 0;padding:4px}
 html.mobile-overview #portal .wall-drawing{padding:6px}
 html.mobile-overview #portal .wall-drawing figcaption strong{font-size:15px}
 html.mobile-overview #portal .wall-drawing figcaption span{font-size:11px}
 html.mobile-overview #portal .paint-wall{padding:12px 13px;margin:24px 0 0;transform:none}
 html.mobile-overview #portal .wall-heading>.paint-post{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%}
 html.mobile-overview #portal .wall-heading .paint-post>label{font-size:12px;gap:4px;min-width:0}
 html.mobile-overview #portal .wall-heading input{font-size:16px;padding:6px;width:100%}
 html.mobile-overview #portal .wall-heading .paint-post>button[type=submit]{grid-column:1/-1;justify-self:end;min-height:36px;font-size:16px!important;padding:8px 13px}
 html.mobile-overview #portal .wall-heading .paint-post-status{grid-column:1/-1;font-size:13px}
 html.mobile-overview #portal .wall-heading>.paint-expand{font-size:16px!important;min-height:38px;padding:8px}
 html.mobile-overview #inline-paint{width:720px;zoom:var(--phone-paint-scale);margin-top:16px}
 html.mobile-overview #inline-paint>.app.paint{width:720px;height:auto;min-height:0}
 html.mobile-overview #inline-paint .paint-tools{gap:4px;padding:4px}
 html.mobile-overview #inline-paint .paint-tool{height:32px}
 html.mobile-overview #inline-paint .paint-tooloptions{gap:3px;padding:3px 2px}
 html.mobile-overview #inline-paint .paint-opt{height:19px}
 html.mobile-overview #inline-paint .paint-tools .paint-swatches{grid-template-columns:repeat(8,11px);grid-template-rows:repeat(4,18px);gap:2px}
 html.mobile-overview #inline-paint .paint-tools .paint-swatch{width:11px;height:18px}
 html.mobile-overview #inline-paint .paint-tools .paint-current{flex-basis:30px;transform:scale(.7);transform-origin:center}
 html.mobile-overview #inline-paint .paint-tools .paint-palette{gap:2px;padding:2px 0}
}

/* Primary actions in beveled black; the invitation to Paint gets its own blue. */
#portal .pink-button,#portal .nav-stack>a,#portal .paint-post>button[type=submit]{background:linear-gradient(#393939 0%,#171717 46%,#050505 72%,#202020 100%);border-color:#777 #080808 #000 #606060;color:white;text-shadow:1px 1px #000}
#portal .pink-button.paint-launch{background:linear-gradient(#639bff 0%,#1764ef 46%,#003bd4 72%,#286eff 100%);border-color:#afcdff #00236f #002b91 #97bdff;text-shadow:1px 1px #002b77}
#portal .sand-crop-circle{width:100%;max-width:250px;transform:rotate(-12deg);padding-top:35px;opacity:.85}
#portal .sand-crop-circle svg{width:100%;max-width:none;fill:none;opacity:1;filter:none}
.sand-etch-light{stroke:#fff0c8;stroke-width:4;opacity:.65}
.sand-etch-dark{stroke:#6a4927;stroke-width:3.5;opacity:.62}
.sand-etch-core{stroke:#8c673b;stroke-width:1.2;stroke-dasharray:13 .8 4 .5;opacity:.85}

#portal .inline-mines .ms-toolbar{flex-wrap:nowrap;gap:4px}
#portal .inline-mines .ms-toolbar .ms-hint{font:10px/1.2 Tahoma,sans-serif;white-space:nowrap;margin-right:auto}
#portal .inline-mines .ms-mode{white-space:nowrap}
html.mobile-overview #portal .mobile-utilities{grid-template-columns:repeat(2,minmax(0,1fr))}
html.mobile-overview #portal .mobile-utility-column:empty{display:none}
html.mobile-overview #portal .mobile-utilities .inline-mines{width:100%;transform:rotate(2deg)}
html.mobile-overview #portal .inline-mines .ms-grid{width:100%;grid-template-columns:repeat(9,minmax(0,1fr))!important;grid-template-rows:repeat(9,minmax(0,1fr));aspect-ratio:1;padding:2px;flex:none}
html.mobile-overview #portal .inline-mines .ms-cell{width:100%;height:100%;min-width:0;min-height:0;padding:0;font-size:12px}
@media(max-width:600px){
 html.mobile-overview #portal .inline-mines .minesweeper{padding:4px;gap:4px;height:auto}
 html.mobile-overview #portal .inline-mines .popup-title{font-size:11px;padding:4px}
 html.mobile-overview #portal .inline-mines .ms-header{padding:3px}
 html.mobile-overview #portal .inline-mines .ms-lcd{font-size:17px;line-height:22px;min-width:0;padding:1px 2px}
 html.mobile-overview #portal .inline-mines .ms-face{width:25px;height:25px;font-size:16px;border-width:2px}
 html.mobile-overview #portal .inline-mines .ms-toolbar .ms-hint{font-size:8px}
 html.mobile-overview #portal .inline-mines .ms-mode{font-size:9px;padding:3px;min-height:24px}
}

#portal .phone-stack{display:none}
html.mobile-overview #portal.phone-flow .content-stack,html.mobile-overview #portal.phone-flow .mobile-utilities{display:none}
html.mobile-overview #portal.phone-flow .phone-stack{display:flex;flex-direction:column;gap:18px;min-width:0}
html.mobile-overview #portal.phone-flow .phone-stack>*{order:initial!important;flex:none}
html.mobile-overview #portal.phone-flow .phone-stack .panel{width:100%;min-height:0}
html.mobile-overview #portal.phone-flow .phone-stack .cuban-cigar{width:100%;aspect-ratio:5.4;margin:4px 0 -15px;transform:rotate(-3deg)}
html.mobile-overview #portal.phone-flow .phone-stack .inline-mines{width:100%;margin:0;transform:rotate(2deg)}
html.mobile-overview #portal.phone-flow .phone-stack .guadalupe-sticker{width:82%;margin:0 auto;transform:rotate(-5deg)}
html.mobile-overview #portal.phone-flow .phone-stack .book{padding:12px 9px;transform:rotate(-3deg)}
html.mobile-overview #portal.phone-flow .phone-stack .book-pdf{width:54px;height:64px;margin:10px auto 2px}
html.mobile-overview #portal.phone-flow .phone-stack .book-pdf .p-icon{width:54px;height:64px}
html.mobile-overview #portal.phone-flow .phone-stack .mail-panel{padding:12px 8px;transform:rotate(2deg)}
html.mobile-overview #portal.phone-flow .phone-stack .mail-panel h2{margin:0 0 6px}
html.mobile-overview #portal.phone-flow .phone-stack .mail-art{width:48px;height:40px}
html.mobile-overview #portal.phone-flow .phone-stack .counter{transform:rotate(-2deg)}
html.mobile-overview #portal.phone-flow .phone-stack .paint-launch{white-space:normal}
