*{box-sizing:border-box}html,body{margin:0;background:#fff;color:#252521}body{font-family:Arial,Helvetica,sans-serif}button,a,input{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #373c30;outline-offset:4px}button{cursor:pointer}a{color:inherit}.pg-shell{max-width:1240px;margin:auto;padding:28px 42px 22px}.pg-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid #deded8;gap:20px}.pg-brand{font:21px Georgia,serif;letter-spacing:.02em;text-decoration:none}.pg-top-right{display:flex;align-items:center;gap:22px;font-size:12px}.pg-tag{border:1px solid #d7d7d0;padding:5px 9px;letter-spacing:.12em;font-size:9px;text-transform:uppercase}.pg-title{margin:29px 0 8px;font:normal 38px Georgia,serif}.pg-intro{margin:0;font-size:13px;color:#77776e;line-height:1.6}.pg-game{display:grid;grid-template-columns:minmax(320px,1fr) 348px;gap:75px;align-items:start;margin-top:15px}.pg-stage-wrap{position:relative;padding-top:8px}.pg-stage{position:relative;aspect-ratio:1055/1491;width:min(100%,430px);margin:0 auto;touch-action:none;isolation:isolate}.pg-hand{position:absolute;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.pg-guides{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .18s}.pg-stage.awaiting-ring .pg-guides{opacity:1}.pg-guide{position:absolute;width:13%;height:7%;border:1px dashed #60634a;border-radius:50%;transform:translate(-50%,-50%);background:#ffffff40}.pg-guide:nth-child(1){left:20.322%;top:39.453%;width:10.254%;transform:translate(-50%,-50%) rotate(-15deg)}.pg-guide:nth-child(2){left:33.301%;top:34.303%;width:11.231%;transform:translate(-50%,-50%) rotate(-4deg)}.pg-guide:nth-child(3){left:46.875%;top:33.926%;width:12.012%;transform:translate(-50%,-50%) rotate(-3deg)}.pg-guide:nth-child(4){left:61.914%;top:35.938%;width:12.207%;transform:translate(-50%,-50%) rotate(5.5deg)}.pg-guide:nth-child(5){left:80.039%;top:53.848%;width:11.914%;transform:translate(-50%,-50%) rotate(33deg)}.pg-stage-caption{text-align:center;color:#8a8a7e;font:italic 12px Georgia,serif;margin:4px 0 0}.pg-inventory{padding-top:18px}.pg-section-title{font-weight:normal;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 12px;display:flex;justify-content:space-between}.pg-section-title span{color:#909086;letter-spacing:0;font-size:11px}.pg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:28px}.pg-tile{position:relative;aspect-ratio:1;border:1px solid #d9d9d2;border-radius:0;background:#fff;padding:11px;display:flex;align-items:center;justify-content:center;touch-action:none;transition:border-color .15s,background .15s;user-select:none}.pg-tile:hover{background:#fafaf7;border-color:#7e8073}.pg-tile[aria-pressed=true]{border-color:#303427;box-shadow:inset 0 0 0 1px #303427;background:#f7f7f3}.pg-tile img{width:86%;height:86%;object-fit:contain;pointer-events:none;user-select:none}.pg-tile-number{position:absolute;bottom:6px;right:8px;font-size:8px;color:#8b8b81}.pg-empty{border:1px dashed #e3e3de;background:#fff}.pg-empty::after{content:'+';font:20px Georgia,serif;color:#d1d1c8}.pg-tools{border-top:1px solid #deded8;padding-top:17px;min-height:38px}.pg-selected{font:16px Georgia,serif;margin:0 0 13px}.pg-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pg-control label{display:flex;justify-content:space-between;font-size:10px;color:#67695f;margin-bottom:7px}.pg-control input{width:100%;accent-color:#42483a;margin:0;height:15px}.pg-buttons{display:flex;gap:9px;margin-top:16px}.pg-button{background:#fff;border:1px solid #bcbeb3;padding:8px 12px;font-size:11px;min-height:32px}.pg-button:hover{background:#f3f4ef}.pg-button:disabled{opacity:.4;cursor:default}.pg-button.primary{background:#363c2f;border-color:#363c2f;color:#fff}.pg-actions{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #deded8;margin-top:19px;padding-top:16px}.pg-note{font-size:11px;color:#898a7f;line-height:1.65;margin:19px 0 0}.pg-status{font-size:11px;color:#73776b;min-height:30px;line-height:1.6;margin:16px 0 0}.pg-piece{position:absolute;transform:translate(-50%,-50%) rotate(var(--rotation,0deg));padding:0;border:0;background:none;cursor:grab;touch-action:none;user-select:none;outline:none;transform-origin:center;z-index:3}.pg-piece.tattoo{z-index:2;mix-blend-mode:multiply;opacity:.91}.pg-piece img{width:100%;display:block;pointer-events:none;user-select:none}.pg-piece[data-selected=true]::after{content:'';position:absolute;inset:-5px;border:1px dashed #555e49;border-radius:2px;pointer-events:none}.pg-ghost{position:fixed!important;pointer-events:none!important;z-index:100000!important;opacity:1!important;cursor:grabbing;filter:drop-shadow(2px 4px 3px #0003)}.pg-footer{border-top:1px solid #deded8;margin-top:25px;padding-top:14px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#98998e}.pg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1200px){.pg-stage{width:430px}.pg-game{gap:95px}}@media(max-width:900px){.pg-shell{padding:22px}.pg-game{grid-template-columns:minmax(280px,1fr) 290px;gap:24px}.pg-title{font-size:34px}.pg-stage{width:min(100%,390px)}}@media(max-width:650px){.pg-shell{padding:17px}.pg-brand{font-size:17px}.pg-top{padding-bottom:15px}.pg-top-right{gap:10px}.pg-title{margin-top:23px;font-size:31px}.pg-game{grid-template-columns:1fr;gap:16px;margin-top:12px}.pg-stage{width:min(100%,340px)}.pg-inventory{padding-top:4px}.pg-grid{grid-template-columns:repeat(3,1fr);gap:10px;max-width:360px}.pg-tile{padding:14px}.pg-game .pg-stage-wrap{grid-row:1}.pg-inventory{max-width:420px;width:100%;margin:0 auto}.pg-footer{margin-top:23px;line-height:1.6}.pg-tag{font-size:8px;padding:4px 5px}.pg-piece:focus-visible{outline:none}.pg-stage-caption{margin-top:2px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.pg-top,.pg-title,.pg-intro,.pg-stage-caption,.pg-section-title,.pg-tile-number,.pg-note,.pg-footer{display:none}
.pg-tile,.pg-tile:hover,.pg-tile[aria-pressed=true]{border:0;background:transparent;box-shadow:none}
.pg-tile:hover img,.pg-tile[aria-pressed=true] img{filter:drop-shadow(0 2px 3px #0003)}
.pg-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

@media(max-width:650px){
.pg-shell{padding:8px 12px 16px}
.pg-game{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;align-items:start;margin-top:0}
.pg-stage-wrap{padding-top:0}
.pg-stage{width:100%;max-width:calc((100svh - 140px)*1055/1491);margin:0 auto;touch-action:pan-y}
.pg-inventory{padding-top:0;min-width:0;margin:0}
.pg-grid{gap:3px;margin-bottom:12px;width:100%;max-width:none}
.pg-tile{padding:2px;min-width:0}
.pg-tile img{width:100%;height:100%}
.pg-tools{padding-top:10px;min-height:0}
.pg-selected{font-size:12px;line-height:1.35;margin-bottom:8px}
.pg-controls{grid-template-columns:1fr;gap:10px}
.pg-control label{font-size:10px}
.pg-buttons{gap:4px;margin-top:10px;flex-wrap:wrap}
.pg-button{font-size:10px;padding:6px 7px;min-height:32px}
.pg-actions{flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px}
.pg-actions>div{display:flex;gap:4px}
.pg-actions>.primary{width:100%}
}

.pg-game{display:block;max-width:1000px;margin:0 auto}
.pg-stage-wrap{padding-top:0}
.pg-stage{width:min(58%,430px);max-width:none;touch-action:pan-y}
.pg-scatter{position:absolute;inset:0;pointer-events:none}
.pg-scatter .pg-grid{display:contents}
.pg-scatter .pg-tile{position:absolute;left:var(--scatter-x);top:var(--scatter-y);width:clamp(60px,9vw,100px);height:auto;aspect-ratio:1;padding:5px;pointer-events:auto;transform:translate(-50%,-50%) rotate(var(--scatter-r));z-index:4}
.pg-scatter .pg-tile img{width:100%;height:100%;object-fit:contain}
.pg-scatter [data-item="ring-core"]{--scatter-x:15%;--scatter-y:10%;--scatter-r:-12deg}
.pg-scatter [data-item="ring-lily"]{--scatter-x:21%;--scatter-y:26%;--scatter-r:10deg}
.pg-scatter [data-item="ring-daisy"]{--scatter-x:12%;--scatter-y:43%;--scatter-r:-8deg}
.pg-scatter [data-item="ring-ant-signet"]{--scatter-x:19%;--scatter-y:60%;--scatter-r:-15deg}
.pg-scatter [data-item="ring-ant-band"]{--scatter-x:12%;--scatter-y:77%;--scatter-r:12deg}
.pg-scatter [data-item="ring-green-stone"]{--scatter-x:21%;--scatter-y:92%;--scatter-r:-9deg}
/* Tattoos on the right: five, spaced evenly from top to bottom (the shell has been removed). */
.pg-scatter [data-item="apple"]{--scatter-x:85%;--scatter-y:11%;--scatter-r:10deg}
.pg-scatter [data-item="bells"]{--scatter-x:90%;--scatter-y:31%;--scatter-r:8deg}
.pg-scatter [data-item="flourish-a"]{--scatter-x:84%;--scatter-y:51%;--scatter-r:-9deg}
.pg-scatter [data-item="flourish-b"]{--scatter-x:90%;--scatter-y:71%;--scatter-r:12deg}
.pg-scatter [data-item="dandelion"]{--scatter-x:85%;--scatter-y:91%;--scatter-r:-8deg}
.pg-inventory{width:min(100%,480px);max-width:480px;padding-top:16px;margin:0 auto}
.pg-tools{border-top:0;padding-top:0;min-height:0}
.pg-selected{text-align:center}
.pg-buttons,.pg-actions{justify-content:center}
.pg-actions{border-top:0;padding-top:0;margin-top:12px}
@media(max-width:650px){
.pg-stage{width:66%;max-width:calc((100svh - 340px)*1055/1491);min-width:160px}
.pg-scatter .pg-tile{width:clamp(42px,13vw,58px);padding:2px}
.pg-scatter [data-item^="ring-"]{left:calc(var(--scatter-x)*.55)}
.pg-scatter [data-item="apple"],.pg-scatter [data-item="bells"],.pg-scatter [data-item="flourish-a"],.pg-scatter [data-item="flourish-b"],.pg-scatter [data-item="dandelion"]{left:calc(100% - (100% - var(--scatter-x))*.55)}
.pg-inventory{padding-top:14px}
.pg-controls{grid-template-columns:1fr 1fr;gap:18px}
.pg-buttons{margin-top:8px}
.pg-actions{flex-wrap:nowrap;gap:8px}
.pg-actions>.primary{width:auto}
.pg-selected{margin-bottom:8px}
}

.pg-tattoo-layer{position:absolute;inset:0;z-index:2;pointer-events:none;visibility:hidden;mask-size:100% 100%;mask-position:center;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;mix-blend-mode:multiply;opacity:.91}
.pg-tattoo-layer .pg-piece.tattoo{pointer-events:auto;mix-blend-mode:normal;opacity:1}

