.paper-game{width:min(100%,510px);margin:auto;color:#253a4a}
.paper-hud{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.paper-hud>div{min-width:0;padding:6px 8px;background:#fff8e8;border:2px solid #d7c9ac;border-radius:16px;box-shadow:0 3px 0 #d7c9ac;text-align:center}
.paper-hud small{display:block;color:#5a6671;font-size:11px;font-weight:700;line-height:1.2}
.paper-hud strong{display:block;font-size:17px;font-weight:900;line-height:1.45;font-variant-numeric:tabular-nums;white-space:nowrap}
.paper-field{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border:3px solid #506c73;border-radius:20px;background:#e8c297 url("assets/games/paper-toss/office.png") center/100% 100% no-repeat;isolation:isolate}
.paper-bin{position:absolute;left:76%;top:52%;width:22%;height:38%;object-fit:contain;transform:translateX(-50%);filter:drop-shadow(0 5px 3px #283d4366);pointer-events:none;will-change:left}
.paper-ball{position:absolute;left:16%;top:79%;width:11%;height:auto;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 2px #263d4688);pointer-events:none;will-change:left,top,transform}
.paper-path{position:absolute;inset:0;pointer-events:none}
.paper-path span{position:absolute;width:6px;height:6px;border-radius:50%;background:#fff;border:1px solid #36546f;transform:translate(-50%,-50%);box-shadow:0 1px 2px #1e354180}
.paper-path[hidden]{display:none}
.paper-score{animation:paper-bounce .35s ease}
.paper-overlay{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:#1b374697;padding:15px;backdrop-filter:blur(2px)}
.paper-overlay[hidden]{display:none}
.paper-dialog{width:min(100%,340px);padding:20px 18px;border:3px solid #25495d;border-radius:21px;background:#fffaf0;box-shadow:0 8px 0 #17364880;text-align:center}
.paper-dialog h2{font-size:23px;line-height:1.2;margin:0 0 9px}
.paper-dialog p{font-size:15px;line-height:1.55;color:#405365;margin:0 0 17px}
.paper-dialog .button{min-width:145px}
.paper-aim{display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:7px;align-items:center;margin:13px 0 0}
.paper-aim label{display:flex;justify-content:space-between;gap:10px;min-width:95px;font-size:14px;font-weight:800}
.paper-aim output{color:#147969;font-variant-numeric:tabular-nums}
.paper-aim input[type=range]{width:100%;accent-color:#23a990;cursor:pointer}
.paper-aim label:nth-of-type(2) output{color:#da655b}
.paper-aim input[data-power]{accent-color:#e97867}
.paper-game .toy-status{text-align:center;min-height:2.6em;padding-top:9px}
.paper-game .toy-controls{display:grid;grid-template-columns:1.25fr .75fr .75fr 1fr;gap:8px;margin-top:4px}
.paper-game .toy-controls .button{padding:8px 9px;min-width:0}
@keyframes paper-bounce{50%{transform:translateX(-50%) scale(1.08)}}
@media(max-width:480px){.toy-page:has(.paper-game) .toy-card{padding:14px 12px}.toy-page:has(.paper-game) .toy-card h1{font-size:22px}.toy-page:has(.paper-game) .toy-instruction{margin:5px 0 10px;line-height:1.45}.paper-hud{gap:6px;margin-bottom:8px}.paper-hud>div{padding:4px}.paper-hud strong{font-size:15px}.paper-dialog{padding:16px}.paper-dialog h2{font-size:21px}.paper-dialog p{font-size:13px}.paper-aim{margin-top:9px;gap:5px}.paper-aim label{font-size:12px;min-width:82px}.paper-game .toy-controls{gap:5px}.paper-game .toy-controls .button{font-size:12px;padding:7px 4px;min-height:45px}}
@media(prefers-reduced-motion:reduce){.paper-score{animation:none}}
