/* 2026-10-08 supplied core designs: torn paper, original photo cutouts and roll. */
.paper-today{padding:0 12px 90px;max-width:480px;margin:auto}
.paper-today .topbar{height:76px;padding:0 6px}
.paper-today .brand{width:265px;max-width:78%}
.paper-intro{height:88px;display:flex;position:relative;align-items:center;gap:16px;padding:0 1px}
.paper-avatar{position:relative;width:128px;height:83px;flex-shrink:0}
.paper-avatar>img{width:92px;height:82px;object-fit:contain;mix-blend-mode:multiply}
.paper-avatar>button{position:absolute;right:0;top:4px;width:38px;height:36px;padding:0}
.paper-avatar>button img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.paper-route{position:relative;z-index:2;min-width:0;align-self:center}
.paper-route small{font-size:13px;color:#131a16;white-space:nowrap}
.paper-route>button{font-weight:900;font-size:27px;white-space:nowrap;padding:3px 0 9px;position:relative;line-height:1.25}
.paper-route>button span{color:#758236;margin:0 3px}
.paper-route>button:after{content:'';position:absolute;left:0;right:0;bottom:2px;height:5px;background:#d4e885;border-radius:50%;transform:rotate(-2deg)}
.paper-accent{position:absolute;width:94px;height:70px;object-fit:contain;right:-4px;bottom:-9px;mix-blend-mode:multiply;z-index:1}
.paper-today .wish-title{margin:7px 0 5px;min-height:76px;padding:0 0 8px;width:100%;font-family:Hand;font-weight:400;-webkit-text-stroke:1.1px #10180c;line-height:1.1;transform:rotate(-2deg);position:relative;overflow:visible}
.paper-today .wish-title:after{content:'';position:absolute;width:44%;height:19px;left:9%;bottom:0;background:url('assets/design/today-title-brush.png') center/100% 100% no-repeat;transform:none;clip-path:none}
.paper-today .wish-title:before{content:'';position:absolute;right:1%;bottom:16px;width:25px;height:25px;background:url('assets/design/today-title-rays.png') center/contain no-repeat}
.paper-card{position:relative;padding:0 0 8px;isolation:isolate;border-radius:14px;background:#faf9ef url('assets/design/paper.png');box-shadow:0 2px 5px #776f5125;margin:0 -3px}
.paper-stage{position:relative;width:100%;height:280px;overflow:hidden}
.paper-green{position:absolute;inset:0 0 auto;width:100%;height:218px;object-fit:fill;z-index:0}
.paper-scene{position:absolute;width:57%;height:205px;right:0;top:37px;object-fit:cover;mix-blend-mode:multiply;z-index:1;border-radius:28%}
.paper-scene.japan-scene{object-fit:contain;top:47px;right:0;height:148px}
.paper-pet{position:absolute;width:65%;height:254px;left:3%;bottom:0;object-fit:contain;object-position:left bottom;z-index:2;filter:drop-shadow(1px 0 #fffef3) drop-shadow(-1px 0 #fffef3)}
.paper-name{position:absolute;top:91px;left:4%;transform:rotate(-12deg);padding:7px 9px;background:#fffef5 url('assets/design/paper.png');font:31px/1 Hand;color:#10180c;z-index:3;text-align:center;box-shadow:0 2px 3px #786b4220;max-width:45%;-webkit-text-stroke:.4px #10180c}
.paper-name small{font:17px/1.2 Hand;display:block;margin-top:3px;white-space:nowrap}
.paper-information{height:174px;position:relative;margin-top:-44px;z-index:4}
.paper-rong{position:absolute;width:43%;height:152px;bottom:8px;left:0;object-fit:contain;object-position:left bottom;z-index:5;mix-blend-mode:multiply}
.paper-roll{position:absolute;right:0;top:0;width:61%;height:190px;padding:12px 12px 20px 36px;background:url('assets/design/paper-today/roll-blank.png?v=2') center/100% 100% no-repeat;transform:rotate(-5deg)}
.paper-row{display:flex;gap:7px;align-items:center;min-height:43px}
.paper-row>img{width:39px;height:35px;object-fit:contain;mix-blend-mode:multiply;flex-shrink:0}
.paper-row>div{min-width:0;flex:1}
.paper-row small{font:14px/1.15 Hand;display:block}
.paper-row b{display:block;font:23px/1.12 Hand;-webkit-text-stroke:.3px #11180c;position:relative;padding-bottom:3px;overflow-wrap:anywhere}
.paper-row b:after{content:'';position:absolute;left:0;right:0;bottom:0;background:#d5e884;height:3px;border-radius:50%}
.paper-row b.long{font-size:13px;line-height:1.2}
.paper-clue{display:block;color:#65722e;font:17px Hand;padding:3px 0 0;margin-left:auto;text-decoration:underline;text-underline-offset:4px}
.paper-demo-note{display:block;font-size:8px;color:#737666;text-align:center;margin-top:5px}
.paper-actions{height:67px;display:flex;align-items:center;justify-content:center;gap:5px;margin-top:20px;padding:0 7px;position:relative;z-index:7}
.paper-prev,.paper-next{font:60px/1 Hand;width:29px;height:60px;flex-shrink:0;padding:0;color:#697534}
.paper-primary{height:62px;flex:1;min-width:0;color:#fffef1;background:url('assets/design/paper-today/button.png') center/100% 100% no-repeat;font:37px/1 Hand;padding:5px 10px 9px;white-space:nowrap;-webkit-text-stroke:.4px #fffef1}
.paper-clap{border:2px solid #6c7437;border-radius:25px;height:61px;width:116px;display:flex;align-items:center;justify-content:center;gap:3px;color:#60692e;font:27px Hand;flex-shrink:0;background:#faf9ef url('assets/design/paper.png');padding:3px}
.paper-clap .icon{width:29px;height:31px;fill:#697534;stroke:none}
.paper-clap.selected{background:#e4eaaa}
.paper-count{text-align:center;font-size:10px;padding:7px 0 0;color:#797969}
.paper-today+.nav{height:66px;padding-bottom:0}
.friend .paper-pet{width:52%;height:235px;left:0;bottom:20px}
.paper-partner{position:absolute;width:47%;height:269px;right:1%;bottom:0;object-fit:contain;object-position:right bottom;z-index:3}
.friend .paper-name{top:105px;left:3%;background:none;box-shadow:none;font-size:25px;padding:0;transform:rotate(-10deg)}
.paper-partner-name{position:absolute;top:22px;right:8%;font:25px/1 Hand;transform:rotate(-7deg);text-align:center;z-index:4}
.paper-partner-name small{display:block;font-size:20px;margin-top:5px}
.friend .paper-stage{height:295px}.friend .paper-information{height:152px;margin-top:-26px}.friend .paper-roll{height:172px}.friend .paper-row{min-height:45px}.friend .paper-actions{margin-top:10px}
.experience .paper-pet{left:auto;right:2%;width:63%;height:266px}
.experience .paper-scene{left:0;right:auto;width:51%;height:207px;top:28px;object-fit:contain}
.experience .paper-name{right:2%;left:auto;top:80px;background:none;box-shadow:none;max-width:30%;font-size:28px}
.experience .paper-name small{font-size:16px}
@media(max-width:360px){.paper-today .topbar{height:66px}.paper-today .brand{width:235px}.paper-intro{height:79px;gap:11px}.paper-avatar{width:110px;height:76px}.paper-avatar>img{width:81px;height:76px}.paper-route small{font-size:11px}.paper-route>button{font-size:23px}.paper-accent{width:76px;height:61px}.paper-stage{height:238px}.paper-pet{height:221px}.paper-green{height:190px}.paper-name{top:76px;font-size:26px}.paper-name small{font-size:14px}.paper-information{height:156px;margin-top:-34px}.paper-rong{height:137px}.paper-roll{height:167px;padding:9px 9px 16px 28px}.paper-row{min-height:38px;gap:4px}.paper-row>img{width:31px;height:31px}.paper-row small{font-size:12px}.paper-row b{font-size:20px}.paper-row b.long{font-size:12px}.paper-clue{font-size:14px}.paper-actions{margin-top:16px;height:60px}.paper-primary{height:56px;font-size:30px}.paper-clap{width:97px;height:54px;font-size:23px}.paper-clap .icon{width:24px}.paper-prev,.paper-next{width:22px;font-size:48px}.friend .paper-stage{height:255px}.friend .paper-pet{height:210px}.paper-partner{height:226px}.friend .paper-name{font-size:21px;top:94px}.paper-partner-name{font-size:21px}.friend .paper-roll{height:166px}.friend .paper-row{min-height:43px}.experience .paper-pet{height:230px}.experience .paper-name{font-size:23px}.experience .paper-name small{font-size:13px}}
@media(min-width:760px){.paper-today{max-width:440px;padding-bottom:90px}.paper-stage{height:310px}.paper-green{height:240px}.paper-pet{height:285px}.paper-information{height:187px}.paper-roll{height:205px}.paper-rong{height:174px}.paper-row{min-height:48px}.paper-actions{margin-top:20px}.friend .paper-stage{height:310px}.paper-partner{height:289px}.friend .paper-pet{height:258px}.experience .paper-pet{height:294px}}

.paper-clap{font-size:24px}.paper-clap span{white-space:nowrap}.paper-roll .paper-row b.long{font-size:14px}.paper-accent{right:-4px;bottom:-19px;width:85px}.paper-route{max-width:calc(100% - 132px)}
@media(min-width:361px) and (max-width:759px){.paper-today .topbar{height:66px}.paper-intro{height:80px}.paper-stage{height:295px}.paper-pet{bottom:20px}.paper-information{height:200px}.paper-roll{height:208px}.paper-rong{height:163px}.paper-row{min-height:48px}.paper-actions{margin-top:4px}.friend .paper-stage{height:305px}.friend .paper-information{height:190px;margin-top:-26px}.friend .paper-roll{height:194px}.friend .paper-actions{margin-top:0}.experience .paper-pet{bottom:20px}}
.paper-count{display:none}
.friend .paper-pet{width:58%;height:280px;bottom:10px}.friend .paper-partner{width:60%;height:290px}
@media(max-width:360px){.friend .paper-pet{width:58%;height:230px;bottom:10px}.friend .paper-partner{width:60%;height:242px}}

.paper-route>button{font-size:25px}.paper-accent{width:77px;right:-3px;bottom:-17px}
.experience .paper-scene{height:240px;width:51%;top:30px;object-fit:contain}
@media(max-width:360px){.paper-route>button{font-size:21px}.paper-accent{width:64px}.experience .paper-scene{height:208px}}
@media(min-width:760px){.screen.paper-today:not(.explore){max-width:440px}.paper-route small{display:block}}
@media(min-width:1000px){.screen.paper-today:not(.explore){max-width:850px;display:grid;grid-template-columns:310px 390px;grid-template-rows:76px 90px 110px auto;gap:0 30px;align-content:start;padding:0 30px 100px}.paper-today .topbar{grid-column:1;grid-row:1}.paper-today .paper-intro{grid-column:1;grid-row:2}.paper-today .wish-title{grid-column:1;grid-row:3;align-self:center}.paper-today .paper-card{grid-column:2;grid-row:1/5;margin:18px 0 0}.paper-today .paper-accent{display:none}.paper-today .paper-stage{height:280px}.paper-today .paper-pet{height:255px}.paper-today .paper-green{height:218px}.paper-today .paper-information{height:174px}.paper-today .paper-roll{height:190px}.paper-today .paper-rong{height:152px}.paper-today .paper-row{min-height:43px}.paper-today .paper-actions{margin-top:20px}.paper-today .friend .paper-stage{height:295px}.paper-today .friend .paper-pet{height:260px}.paper-today .friend .paper-information{height:152px}.paper-today .friend .paper-roll{height:172px}.paper-today .friend .paper-actions{margin-top:10px}}

.paper-avatar.generic-avatar>img{object-fit:cover;clip-path:ellipse(46% 48% at 50% 50%)}
.paper-pet.wide-pet{width:84%;left:0;bottom:10px}
.paper-pet.photo-fallback{clip-path:ellipse(47% 48% at 50% 50%);object-fit:cover}
@media(max-width:360px){.paper-roll .paper-row b.long{font-size:12px}}
/* Alignment audit against new reference: the roll starts above the pet's feet. */
.paper-roll{transform:none}
.paper-row{transform:rotate(-5deg);transform-origin:left center}
.paper-row small{font-size:16px;color:#11180c}
.paper-row b{font-size:27px;-webkit-text-stroke:.55px #11180c}
.paper-roll .paper-row b.long{font-size:16px;line-height:1.25}
.paper-clue{font-size:19px;transform:rotate(-5deg);margin-right:3px}
.paper-today .wish-title{-webkit-text-stroke:1.7px #10180c}
.paper-rong{content:url('assets/design/paper-today/rong-detailed.png?v=1');mix-blend-mode:normal}
@media(min-width:361px) and (max-width:759px){.paper-information{margin-top:-80px}.paper-actions{margin-top:40px}.friend .paper-information{margin-top:-56px}.friend .paper-actions{margin-top:30px}.experience .paper-information{margin-top:-66px}.experience .paper-actions{margin-top:26px}.experience .paper-rong{bottom:22px}}
@media(max-width:360px){.paper-information{margin-top:-60px}.paper-actions{margin-top:42px}.paper-row small{font-size:13px}.paper-row b{font-size:23px}.paper-roll .paper-row b.long{font-size:13px}.paper-clue{font-size:15px}.friend .paper-information{margin-top:-45px}.friend .paper-actions{margin-top:29px}.experience .paper-information{margin-top:-50px}.experience .paper-actions{margin-top:32px}}
.paper-prev,.paper-next{font-size:0;width:27px;background:url('assets/design/paper-today/arrow-left.png') center/20px 48px no-repeat;mix-blend-mode:multiply}
.paper-next{background-image:url('assets/design/paper-today/arrow-right.png')}
.paper-name{background:transparent url('assets/design/paper-today/name-paper.png') center/100% 100% no-repeat;box-shadow:none;padding:10px 12px}
.friend .paper-name,.experience .paper-name{background:none;padding:0}
.paper-clap,.paper-clap.selected{border:0;border-radius:0;background:transparent url('assets/design/paper-today/clap-blank.png') center/100% 100% no-repeat}
.paper-clap.selected{color:#384817}

.paper-name{background:none;padding:0;max-width:44%}
.paper-name>span,.paper-name>small{background:#fffef4 url('assets/design/paper.png');padding:4px 7px;display:block;box-shadow:1px 2px 2px #66573317}
.paper-name>small{margin-top:1px;transform:rotate(4deg);padding:5px 6px}
.friend .paper-name>span,.friend .paper-name>small,.experience .paper-name>span,.experience .paper-name>small{background:none;padding:0;box-shadow:none}
@font-face{font-family:Playful;src:url('assets/playful.ttf');font-display:swap}
.paper-today .wish-title{font-family:Playful,Hand,sans-serif;-webkit-text-stroke:.3px #10180c}
.paper-name,.paper-name small,.paper-partner-name,.paper-row small,.paper-row b,.paper-clue{font-family:Playful,Hand,sans-serif;-webkit-text-stroke:0}
.paper-primary{font-family:Playful,Hand,sans-serif;font-size:32px;-webkit-text-stroke:0}
.paper-clap{font-family:Playful,Hand,sans-serif;font-size:23px}
.paper-today .wish-title{-webkit-text-stroke:1px #10180c}
.paper-row b{-webkit-text-stroke:.45px #10180c}
.paper-name>span,.paper-partner-name{-webkit-text-stroke:.45px #10180c}
.paper-primary{font-size:35px;-webkit-text-stroke:.4px #fffef1}
@media(max-width:360px){.paper-primary{font-size:29px}.paper-clap{font-size:20px}.paper-roll .paper-row b.long{font-size:12px}}

.friend .paper-partner{width:53%;right:0;object-position:right bottom}.friend .paper-pet{width:57%;left:0}
.friend .paper-partner{width:47%}.friend .paper-pet{bottom:40px}.paper-partner-name{top:10px;font-size:22px}.paper-partner-name small{font-size:18px;margin-top:2px}.friend .paper-name{top:85px}
@media(max-width:360px){.friend .paper-pet{bottom:30px}.paper-partner-name{font-size:19px}.paper-partner-name small{font-size:16px}}
