
:root{--paper:#f7f3e8;--ink:#222b91;--line:#c7c4b8;--yellow:#f7db69;--body:#353847}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.5}a{color:inherit;text-underline-offset:.24em}a:hover{text-decoration-thickness:3px}a:focus-visible{outline:3px solid var(--ink);outline-offset:7px;border-radius:2px}.skip{position:absolute;left:24px;top:-100px;background:var(--yellow);padding:12px;z-index:5}.skip:focus{top:10px}.wrap{width:min(1184px,calc(100% - 96px));margin:auto}.prototype{background:var(--ink);color:var(--paper);font-size:.875rem;text-align:center;padding:8px 16px;letter-spacing:.015em}.masthead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}.wordmark{font-family:Georgia,serif;font-size:2rem;line-height:1;font-style:italic;text-decoration:none}.nav{display:flex;flex-wrap:wrap;gap:30px;align-items:center}.nav a{font-size:.9375rem}.hero{position:relative;display:grid;grid-template-columns:1.6fr 1fr;gap:32px;padding:70px 0 68px;min-height:550px;align-items:center}.eyebrow{text-transform:uppercase;font-size:.8125rem;letter-spacing:.14em;margin:0 0 20px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(4rem,7.4vw,6.5rem);letter-spacing:-.065em;line-height:.97;margin:0 0 28px;max-width:700px}.intro{color:var(--body);max-width:310px;font-size:1.125rem;margin:0;line-height:1.55}.doodle{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;position:relative}.asterisk{font-family:Georgia,serif;font-size:clamp(12rem,23vw,20rem);line-height:.85;color:var(--ink);transform:rotate(-9deg);user-select:none}.label{position:relative;transform:rotate(7deg);margin-top:-26px;padding:16px 27px;background:var(--yellow);color:#283070;border:1px solid #cfb74e;box-shadow:3px 4px 0 #d8d2c2;min-width:185px;text-align:center;font-size:1.0625rem}.label strong{font-family:Georgia,serif;font-size:1.65rem;font-weight:400;display:block;line-height:1.15}.label span{font-size:.875rem}.things{display:grid;grid-template-columns:1fr 2fr;gap:64px;border-top:1px solid var(--line);padding:44px 0 65px}.things h2{font-family:Georgia,serif;font-size:2rem;line-height:1.2;font-weight:400;letter-spacing:-.025em;margin:0}.section-note{font-size:.9375rem;color:var(--body);margin-top:10px}.empty{color:var(--body);font-size:1.125rem;margin:0;padding:4px 0}.item{display:flex;gap:26px;padding:24px 0;border-top:1px solid var(--line)}.item:first-child{padding-top:0;border-top:0}.item-number{font-size:.8125rem;padding-top:8px}.item h3{font-family:Georgia,serif;font-weight:400;font-size:1.7rem;line-height:1.3;margin:0}.item p{color:var(--body);margin:10px 0 0;overflow-wrap:anywhere}.item a{overflow-wrap:anywhere}footer{padding:24px 0 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;color:var(--body);font-size:.875rem}.hello{color:var(--ink)}.hello span{display:inline-block;margin-left:8px}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.masthead{padding:23px 0}.nav{gap:22px}.hero{grid-template-columns:1fr;padding:42px 0 46px;gap:30px;min-height:0}.hero h1{font-size:clamp(3.5rem,14vw,5.8rem);max-width:550px;overflow-wrap:normal}.hero .intro{max-width:330px}.doodle{position:relative;flex-direction:row;justify-content:flex-end;gap:18px;padding:0 8px;margin-top:-12px}.asterisk{font-size:6.5rem}.label{min-width:0;padding:8px 13px;margin-top:-9px;transform:rotate(7deg)}.label strong{font-size:1.15rem}.label span{font-size:.8125rem}.intro{max-width:330px!important;font-size:1rem}.things{grid-template-columns:1fr;gap:24px;padding:32px 0 40px}.things h2{font-size:1.85rem}.section-note{margin-bottom:0}footer{font-size:.8125rem;flex-wrap:wrap}.prototype{font-size:.8125rem}}@media(max-width:350px){.doodle{display:none}.intro{max-width:100%!important}.nav{gap:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.prototype,.nav,.doodle{display:none}.wrap{width:100%}.hero{min-height:0}body{color:#000}.things{break-inside:avoid}}
.rufus{width:min(100%,300px);margin:0 auto;transform:rotate(3deg)}.rufus img{display:block;width:100%;height:auto;border:10px solid #fff;box-shadow:3px 5px 0 #ddd5c2}.rufus .label{width:190px;margin:-20px -18px 0 auto;transform:rotate(-8deg)}@media(max-width:700px){.rufus{width:min(70%,240px);margin:8px auto 0}.rufus .label{width:170px;margin:-20px -22px 0 auto;padding:12px}.rufus .label strong{font-size:1.5rem}.rufus .label span{font-size:.875rem}}@media print{.rufus{transform:none;width:180px}}
.arcade{padding:25px 0 55px}.game-heading,.board-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.game-heading .eyebrow{margin:0 0 6px}.game-heading h1{font-family:Georgia,serif;font-size:clamp(2.3rem,7vw,4rem);font-weight:400;margin:0 0 24px}.game-heading button{background:transparent;font-size:.85rem;white-space:nowrap}.game-shell{border:3px solid #243c32;border-radius:15px;overflow:hidden;background:#243c32;box-shadow:8px 8px 0 #dedaca}.game-hud{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;color:#fff8df;font-variant-numeric:tabular-nums}.game-hud small{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;color:#d0ddc9}.game-hud strong{font-size:1.5rem}.game-hud button{background:#fff5d8;padding:7px 13px;font-size:.8rem}.game-hud #hearts{color:#f8b49e;letter-spacing:3px;font-size:1.6rem}.playfield{position:relative}#park{display:block;width:100%;height:auto;touch-action:manipulation;outline-offset:-5px}#overlay{position:absolute;inset:0;display:grid;place-items:center;background:#18362740;padding:15px}.game-card{background:#fff9e8;border:3px solid #243c32;border-radius:12px;text-align:center;padding:clamp(12px,3vw,28px) 30px;box-shadow:5px 5px 0 #243c32}.game-card h2{font-family:Georgia,serif;font-size:clamp(1.4rem,4vw,2.4rem);margin:0 0 8px}.game-card p{font-size:clamp(.75rem,1.7vw,1rem);line-height:1.45;margin:8px 0}.game-card button{background:#eec65b;font-weight:700;border:2px solid #243c32;margin-top:10px}.touch-controls{display:grid;grid-template-columns:1.5fr 1fr;gap:12px;padding:12px}.touch-controls button{min-height:66px;font-weight:700;font-size:1.1rem;touch-action:manipulation;border:0;background:#f2d783}.touch-controls button:last-child{background:#bfddbc}.touch-controls small{display:block;font-size:.68rem;font-weight:400;margin-top:3px}.game-instructions{text-align:center;font-size:.85rem;line-height:1.7;color:#494f47;margin:22px 0 10px}#game-status{min-height:1.5em;font-size:1rem;color:#3d493d}#result{margin-top:24px;padding:25px;background:#f0ead8;border:1px solid #c8c6b7;border-radius:8px}#result h2{margin:0;font-family:Georgia,serif;font-size:2rem}.score-entry{display:flex;gap:12px}.score-entry input{margin:0}.score-entry button{white-space:nowrap}.leaderboard{margin-top:32px;border-top:1px solid var(--line);padding-top:20px}.leaderboard h2{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:0}.leaderboard ol{padding-left:28px;font-variant-numeric:tabular-nums}.leaderboard li{padding:12px 10px;border-bottom:1px solid #deddd2}.leaderboard li span{display:inline-block;min-width:65%}.leaderboard li::marker{color:#626854}.leaderboard li:first-child{background:#f4e5ad}.leaderboard p{font-size:1rem}@media(max-width:600px){.arcade{padding-top:5px}.game-heading h1{margin-bottom:15px}.game-heading .eyebrow{font-size:.65rem}.game-hud{padding:10px;gap:8px}.game-hud strong{font-size:1.1rem}.game-hud #hearts{font-size:1.15rem;letter-spacing:0}.game-hud small{font-size:.56rem}.game-hud button{min-height:40px}.game-card{padding:10px 18px}.game-card #overlay-copy{display:none}.game-card h2{font-size:1.4rem}.game-card p{font-size:.7rem;margin:4px 0}.game-card button{padding:7px 15px;margin-top:5px;min-height:40px}.touch-controls{gap:8px;padding:8px}.touch-controls button{font-size:.95rem;min-height:66px}.touch-controls small{font-size:.59rem}.game-shell{box-shadow:4px 4px 0 #dedaca}.score-entry{flex-wrap:wrap}.score-entry input{flex:1;min-width:130px}.game-instructions{font-size:.74rem}.board-heading h2{font-size:1.65rem}.masthead{flex-wrap:wrap}.nav{gap:18px}}
.leash-game{padding:8px 0 35px;max-width:1060px;margin:auto;color:#242c40}.lab-note{font:12px system-ui;color:#575957;padding:0 0 10px}.leash-head{display:flex;align-items:center;gap:20px;padding:4px 0 15px}.leash-head h1{font:italic 42px Georgia,serif;margin:0 auto 0 0}.leash-stats{display:flex;align-items:center;gap:22px;font:12px system-ui;font-variant-numeric:tabular-nums}.leash-stats span{display:grid;gap:3px}.leash-stats b{font-size:20px}.leash-head button{background:transparent;min-height:42px;padding:6px 13px;font-size:12px}.leash-stage{position:relative;background:#e9e1cc;border:2px solid #263248;overflow:hidden}.leash-stage canvas{display:block;width:100%;height:auto;max-height:none;touch-action:none;outline-offset:-4px}.leash-stage canvas:focus-visible{outline:3px solid #263956}.leash-controls{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:12px 0}.leash-controls p{font:14px/1.55 system-ui;margin:0}.leash-controls span{font-size:11px;color:#5b5a52}.leash-controls button{background:#263956;color:#fff9e6;border:2px solid #263956;min-width:180px;min-height:62px;font-weight:700;touch-action:manipulation}.leash-controls button.attached{background:#b84430;border-color:#b84430}.leash-caption{font:12px system-ui;color:#626052;margin-top:8px}#leash-status{font:14px system-ui;min-height:20px;margin:0}#leash-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#e9e1cc50}.leash-title{text-align:center;border:2px solid #263248;background:#f4ecda;padding:22px 38px;box-shadow:5px 5px 0 #263248}.leash-title h2{font:italic 64px Georgia,serif;margin:0 0 10px}.leash-title p{font:14px/1.6 system-ui;margin:0 0 20px}.leash-title button{background:#263956;color:#fff9e6;min-width:130px;font-weight:700;border:0}.leash-stage button:focus-visible,.leash-controls button:focus-visible{outline:3px solid #263956;outline-offset:3px}@media(max-width:600px){.leash-head{gap:12px}.leash-head h1{font-size:34px}.leash-stats{gap:12px;font-size:10px}.leash-stats b{font-size:16px}.leash-head button{font-size:10px;padding:6px 8px}.leash-stage canvas{max-height:none}.leash-controls{gap:8px}.leash-controls button{min-width:112px;min-height:66px}.leash-controls p{font-size:12px}.leash-controls span{font-size:9px}.leash-title{padding:20px}.leash-title h2{font-size:50px}.leash-title p{font-size:12px}.leash-game{padding-top:0}}

@media(min-width:601px){.leash-stage{max-width:min(100%,calc(54vh * 1.428571));margin-inline:auto}.leash-head,.leash-controls,.lab-note,#leash-status,.leash-caption{max-width:min(100%,calc(54vh * 1.428571));margin-inline:auto}}

.speed-meter{font:11px system-ui;display:grid;gap:6px;margin:0}.speed-meter meter{display:block;width:90px;height:12px;accent-color:#344c77}.leash-controls button.attached{background:#f4ecda;color:#263956;border-color:#263956}.leash-controls button.lined-up{background:#263956;color:#fff9e6}@media(max-width:600px){.speed-meter{font-size:9px}.speed-meter meter{width:40px}.leash-controls{gap:7px}.leash-controls button{font-size:13px}}

.leash-page .masthead{padding:14px 0}.leash-page .wordmark{font-size:1.55rem}.leash-page .nav a{font-size:.8rem}.leash-page .nav{gap:20px}.leash-page .leash-game{padding-bottom:12px}.leash-page .leash-caption{margin-bottom:0}.leash-page .leash-head{padding-bottom:9px}.leash-page .lab-note{padding-bottom:2px;font-size:10px}.leash-page .leash-head h1{font-size:34px}.leash-page .leash-controls{padding:9px 0}.leash-page .leash-title{box-shadow:none}@media(max-width:600px){.leash-page .wrap{width:calc(100% - 24px)}.leash-page .masthead{padding:11px 0}.leash-page .nav{gap:13px}.leash-page .leash-head h1{font-size:29px}.leash-page .leash-stats{gap:9px}}

.leash-title #leash-restart{display:block;margin:12px auto 0;background:transparent;color:#263956;border:1px solid #263956;min-height:40px;font-size:12px}

#leash-score-form{max-width:260px;margin:14px auto 0}#leash-score-form label{font:11px system-ui}#leash-score-form input{font-size:14px;padding:8px;margin-bottom:8px}#leash-score-form button{min-height:42px;font-size:13px}#leash-save-status{font:12px/1.3 system-ui;margin:8px 0 0}.leash-title #leash-withdraw{display:block;background:transparent;color:#263956;margin:8px auto 0;font-size:11px;min-height:32px;border:0}#leash-board{max-width:620px;margin:25px auto 45px;border-top:1px solid #bbb6a6;padding-top:20px;color:#263956}#leash-board h2{font:24px Georgia,serif}#leash-board li{padding:9px;border-bottom:1px solid #d4cfbe}#leash-board li span{display:inline-block;width:75%}#leash-board p{font:13px system-ui}

.leash2-page .leash-title p:empty{display:none}

@media(max-width:600px){.leash3-page .leash-head{display:grid;grid-template-columns:1fr auto;gap:6px}.leash3-page .leash-stats{grid-row:2;grid-column:1/-1;justify-content:space-between}.leash3-page .leash-head>button{grid-row:1;grid-column:2}.leash3-page .leash-stage{max-width:min(100%,calc((100dvh - 270px)*.875));margin-inline:auto}.leash3-page .leash-title{max-width:90%;padding:15px}.leash3-page .leash-title h2{font-size:36px}}
.raid-page{--raid-ink:#182b38;--raid-paper:#fff5db;--raid-gold:#ffd45c;--raid-green:#137a62;--raid-red:#c84e3c}.raid-page .masthead{padding:10px 0}.raid-page .wordmark{font-size:1.5rem}.raid-page .nav a{font-size:.875rem}.raid-page .wrap{width:min(1100px,calc(100% - 28px))}.raid{max-width:1000px;margin:0 auto;color:var(--raid-ink);font-family:system-ui,sans-serif}.raid-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0}.raid-top h1{font:800 32px/1 system-ui;margin:0;letter-spacing:-1.5px}.raid-top-actions{display:flex;gap:8px}.raid button{border:2px solid var(--raid-ink);border-radius:10px;background:var(--raid-paper);color:var(--raid-ink);font:700 14px system-ui;min-height:44px;touch-action:manipulation;padding:8px 15px}.raid button:focus-visible{outline:3px solid var(--raid-green);outline-offset:3px}.raid button:disabled{opacity:.5}.raid-hud{display:grid;grid-template-columns:1fr 1.4fr 1fr .6fr;gap:8px;padding:5px 3px 10px;font-variant-numeric:tabular-nums}.raid-hud>div{display:flex;flex-direction:column;gap:2px}.raid-hud span{font-size:12px;font-weight:600}.raid-hud strong{font-size:23px;line-height:1.05}.raid-hud b{display:inline-block;padding:1px 5px;background:var(--raid-gold);border-radius:4px;font-size:12px}.raid-stage{height:clamp(310px,calc(100dvh - 195px),740px);position:relative;overflow:hidden;border:2px solid var(--raid-ink);border-radius:14px;background:#4f9167;isolation:isolate}.raid-stage canvas{width:100%;height:100%;display:block;touch-action:none;outline-offset:-4px;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.raid-controls{position:absolute;inset:0;pointer-events:none}.raid-move-hint{position:absolute;bottom:max(18px,env(safe-area-inset-bottom));left:max(24px,env(safe-area-inset-left));display:grid;place-items:center;gap:6px;color:#142e30;font:bold 13px system-ui}.raid-stick-rest{width:64px;height:64px;border:2px solid #fff9dc99;border-radius:50%;background:#18332624;box-shadow:inset 0 0 0 20px #fff6db33}.raid #raid-dash{pointer-events:auto;position:absolute;bottom:max(18px,env(safe-area-inset-bottom));right:max(24px,env(safe-area-inset-right));width:90px;height:90px;border-radius:50%;background:var(--raid-gold);border:3px solid var(--raid-ink);box-shadow:0 5px 0 #183039;display:grid;place-content:center;gap:2px;font-size:19px;touch-action:none;user-select:none;-webkit-user-select:none}.raid #raid-dash small{font-size:11px}.raid #raid-dash.pressed{transform:translateY(4px);box-shadow:0 1px 0 #183039}.raid #raid-dash.cooldown{background:#d0d7b2;box-shadow:0 3px 0 #183039}.raid-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#15302c50;z-index:3;padding:16px}.raid-panel{width:min(350px,100%);max-height:100%;overflow:auto;padding:25px;background:var(--raid-paper);border:3px solid var(--raid-ink);border-radius:18px;text-align:center;box-shadow:0 7px 0 #142d3299}.raid-panel h2{font:900 clamp(34px,7vw,58px)/1 system-ui;letter-spacing:-2px;margin:4px 0 16px}.raid-panel p{font-size:14px;line-height:1.4;margin:0 0 16px}.raid-panel #raid-kicker{font-size:12px;font-weight:700}.raid .raid-primary{background:var(--raid-gold);font-size:18px;min-width:150px;min-height:52px}.raid-panel #raid-restart,.raid-panel #raid-practice{display:block;margin:10px auto 0}.raid-panel #raid-message:empty{display:none}.raid-panel #raid-message{margin:12px 0 0}.raid-panel form{margin:16px auto 0;text-align:left}.raid-panel label{font-size:13px}.raid-panel input{padding:9px;font-size:16px}.raid-panel #raid-save-status{font-size:13px;margin:8px 0 0}.raid-help{display:flex;justify-content:space-between;gap:12px;padding:8px 0 14px;font-size:12px}.raid #raid-toast{pointer-events:none;position:absolute;top:12px;left:50%;transform:translateX(-50%);font-weight:800;font-size:16px;white-space:nowrap;color:var(--raid-ink);background:var(--raid-paper);border:2px solid var(--raid-ink);border-radius:8px;padding:7px 13px;opacity:0;transition:opacity .12s}.raid #raid-toast.show{opacity:1}.raid-board{max-width:1000px;margin:18px auto 30px;font-family:system-ui}.raid-board-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.raid-board-head h2{font:750 22px system-ui;margin-right:auto}.raid-board-head label{font-size:12px;margin:0}.raid-board select{display:block;font:14px system-ui;padding:8px;border:1px solid #183039;background:#fff5db;border-radius:6px}.raid-board li{padding:10px 5px;border-bottom:1px solid #bcc5b3;display:flex;justify-content:space-between;font-variant-numeric:tabular-nums}.raid-board ol{padding:0;list-style:none}.raid-board button{font-size:13px;min-height:44px}.raid-board p{font-size:14px}.raid-page footer{display:none}@media(pointer:fine) and (min-width:601px){.raid-move-hint{display:none}.raid #raid-dash{width:76px;height:76px;font-size:16px;opacity:.88}}@media(max-width:600px){.raid-page .wrap{width:calc(100% - 16px)}.raid-page .masthead{padding:8px 4px}.raid-page .nav{gap:12px}.raid-top{padding:5px 3px}.raid-top h1{font-size:27px}.raid-top-actions{gap:6px}.raid-top button{font-size:12px;padding:7px 10px}.raid-hud strong{font-size:22px}.raid-stage{height:max(310px,calc(100dvh - 185px - env(safe-area-inset-bottom)))}.raid-help{font-size:12px;padding-inline:3px}.raid-panel{padding:19px}.raid #raid-dash{right:max(19px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom))}}@media(max-height:500px) and (orientation:landscape){.raid-page .masthead{display:none}.raid-top{position:absolute;top:8px;right:12px;z-index:5}.raid-top h1{display:none}.raid-top-actions button{background:#fff5dbdd}.raid-hud{max-width:460px;padding:6px 3px}.raid-hud>div{flex-direction:row;align-items:center;gap:7px}.raid-hud strong{font-size:20px}.raid-stage{height:calc(100dvh - 58px);min-height:210px}.raid-help{display:none}.raid-panel{padding:12px;width:330px}.raid-panel h2{font-size:32px;margin-bottom:8px}.raid-panel p{margin-bottom:8px}.raid-panel #raid-kicker{display:none}.raid #raid-dash{width:76px;height:76px}}@media(prefers-reduced-motion:reduce){.raid *{transition:none!important}}
.raid-page .wrap{box-sizing:border-box;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
@media(max-width:600px){.raid-stage{height:max(310px,calc(100dvh - 213px - env(safe-area-inset-bottom)))}}
@media(max-height:500px) and (orientation:landscape){.raid-hud{height:54px;box-sizing:border-box;max-width:calc(100% - 205px);align-items:center}.raid-top{right:max(12px,env(safe-area-inset-right));top:max(5px,env(safe-area-inset-top))}.raid-stage{height:calc(100dvh - 64px - env(safe-area-inset-bottom));min-height:210px}}
@media(max-height:500px) and (orientation:landscape){.raid-top{padding:0}}

[hidden]{display:none!important}.page{padding:44px 0 60px;min-height:65vh}.page h1{font-family:Georgia,serif;font-size:clamp(2.5rem,7vw,4rem);font-weight:400;line-height:1.15;margin:0 0 24px;overflow-wrap:anywhere}.back{display:inline-block;margin-bottom:24px}.project-grid,.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-card{display:block;text-decoration:none}.project-card img,.cover-empty{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid var(--line)}.cover-empty{display:grid;place-items:center;color:var(--body);background:#eeeadf}.project-card h2{font-family:Georgia,serif;font-size:1.5rem;font-weight:400;margin:12px 0}.photo-card{margin:0;min-width:0}.photo-open{display:block;padding:0;border:0;background:transparent;width:100%;cursor:zoom-in}.photo-open img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photo-card figcaption{font-size:1rem;margin:10px 0;overflow-wrap:anywhere}.small-button{font-size:.875rem;padding:9px 12px}.owner-panel{border:1px solid var(--line);padding:24px;margin:0 0 32px}.owner-panel summary{cursor:pointer;font-weight:700;font-size:1rem}.owner-panel form{margin-top:20px}label{display:block;color:var(--body);margin:0 0 8px;font-size:1rem}input{display:block;max-width:100%;width:100%;padding:12px;border:1px solid #757575;border-radius:3px;background:#fff;font:inherit;color:var(--body);margin-bottom:16px}input[type=file]{padding:10px}button{font:inherit;color:var(--ink);background:var(--yellow);border:1px solid var(--ink);border-radius:3px;padding:12px 18px;cursor:pointer;min-height:44px}button:disabled{opacity:.65;cursor:default}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--ink);outline-offset:4px}form{max-width:560px}.help{color:var(--body);font-size:.9375rem;line-height:1.5}#status{color:var(--body);min-height:1.5em;margin:16px 0}#status.error{color:#a51d2c}#retry{background:none;margin-bottom:24px}.empty-gallery{padding:36px 0;color:var(--body)}dialog{border:0;padding:22px;width:min(100% - 24px,1000px);max-height:95vh;background:var(--paper);color:var(--body)}dialog::backdrop{background:#121527db}dialog img{width:100%;height:70vh;object-fit:contain;display:block}#close-viewer{display:block;margin:0 0 14px auto}#large-caption{margin:12px 0 0;text-align:center}#more{margin-top:28px}.nav a[aria-current=page]{text-decoration-thickness:3px}.title-row{display:flex;gap:20px;justify-content:space-between;align-items:center}@media(max-width:760px){.project-grid,.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.page{padding-top:30px}.owner-panel{padding:18px}.nav{gap:18px}.masthead{gap:20px}}@media(max-width:420px){.project-grid,.photo-grid{grid-template-columns:1fr}.project-card img,.cover-empty{aspect-ratio:3/2}.nav{column-gap:18px;row-gap:12px}.nav a{font-size:.875rem}dialog img{height:60vh}}
.chase-page{--raid-gold:#e9b354;--raid-paper:#f7ebcf;--raid-ink:#292a24}.chase-page .chase-bag-line{display:flex;justify-content:space-between;gap:8px;height:26px;box-sizing:border-box;font-size:12px;font-weight:700;padding:2px 8px}.chase-page .raid-stage{height:calc(100dvh - 232px);min-height:300px;border-radius:5px;background:#e9dcb8}.chase-page .raid-panel{border-radius:5px;box-shadow:5px 5px 0 #302d2699}.chase-page .raid button{border-radius:5px}.chase-page #raid-toast{font-size:14px;max-width:90%;white-space:normal;text-align:center;border-radius:4px}.chase-page #chase-move{position:absolute;left:0;bottom:0;width:58%;height:104px;pointer-events:auto;touch-action:none;user-select:none;display:flex;align-items:center;justify-content:flex-start;padding-left:30px;box-sizing:border-box;gap:12px;font:700 13px system-ui}.chase-stick-base{display:grid;place-items:center;width:64px;height:64px;border:2px solid #6e785d;border-radius:50%;background:#b9c19a}.chase-stick-base span{display:block;width:30px;height:30px;border:2px solid #374136;border-radius:50%;background:#f4e4ba}.chase-page #raid-dash{border-radius:50%}.chase-page .raid-help{padding-bottom:5px}
@media(pointer:fine) and (min-width:601px) and (min-height:501px){.chase-page #chase-move{display:none}.chase-page #raid-dash{width:70px;height:70px;right:18px;bottom:14px}}
@media(max-width:600px),(pointer:coarse){.chase-page .raid-stage{height:calc(100dvh - 216px - env(safe-area-inset-bottom));min-height:300px}.chase-page .raid-stage canvas{height:calc(100% - 104px)}.chase-page .raid-controls{top:auto;bottom:0;height:104px;background:#e8d9b3;border-top:2px solid #5f654e}.chase-page #raid-dash{width:76px;height:76px;bottom:13px;right:22px}.chase-page .raid-top h1{font-size:25px}.chase-page .raid-hud{padding-bottom:5px}.chase-page .raid-hud strong{font-size:20px}}
@media(orientation:landscape) and (max-height:500px){.chase-page .raid-stage{height:calc(100dvh - 93px - env(safe-area-inset-bottom));min-height:180px;padding:0 92px}.chase-page .raid-stage canvas{height:100%;width:100%}.chase-page .raid-controls{inset:0;height:auto;background:transparent;border:0}.chase-page #chase-move{height:100%;width:88px;left:0;padding:0;display:flex;flex-direction:column;justify-content:center;background:#e8d9b3;border-right:2px solid #6e785d}.chase-page #raid-dash{right:8px;bottom:calc(50% - 36px);width:74px;height:74px;font-size:16px}.chase-page .chase-bag-line{height:26px}.chase-page .raid-hud{height:60px}.chase-page .raid-overlay{left:92px;right:92px;padding:8px}.chase-page .raid-panel{max-height:100%;padding:10px}.chase-page .raid-panel h2{font-size:28px}.chase-page .raid-panel p{font-size:12px}.chase-page .raid-top-actions button{font-size:12px;padding:5px 8px}.chase-page .raid-hud{max-width:calc(100% - 180px)}.chase-page #raid-toast{left:50%;font-size:12px;top:5px;padding:4px 6px}}

.chase-page #chase-bag{display:flex;align-items:center;gap:4px;white-space:nowrap}.chase-page .chase-slot{display:grid;place-items:center;width:20px;height:20px;border:1px solid #aa9b77;border-radius:3px}.chase-page .chase-icon{display:block;width:20px;height:20px;background-image:url('/chase-assets/park-props.png');background-size:80px 40px}.chase-page .chase-kind-1{background-position:-20px 0}.chase-page .chase-kind-2{background-position:-40px 0}.chase-page .chase-kind-3{background-position:-60px 0}.chase-page #chase-fast{white-space:nowrap;font-size:11px;align-self:center}.chase-page .chase-fast-wrap{display:flex;align-items:center;gap:3px}.chase-page #chase-clock{width:20px;height:20px}
/* Keep transient feedback below the reserved edge-marker band. */
.chase-page #raid-toast{top:52px;max-width:55%}
