/* あそびポケット：同じスマホを囲む時間に合わせた、紙とカードのデザイン。 */
:root{--primary:#bd3826;--primary-hover:#9d2a1a;--primary-light:#ffede5;--bg:#f8f6ef;--card-bg:#fffef9;--bg-card:var(--card-bg);--text-main:#22261f;--text-muted:#555a50;--text-sub:#62675d;--border:#dedfd1;--input-bg:#f1f2e9;--header-bg:#f8f6ef;--radius-md:18px;--radius-lg:24px;--shadow-sm:0 2px 0 #22261f08;--shadow-md:0 8px 24px #22261f0a;--font-base:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;--pocket-blue:#2856cc;--pocket-lime:#d9ed83;--pocket-coral:#f97759}
html{scroll-padding-top:96px}body{font-family:var(--font-base)}button,input,select{font:inherit}a{color:var(--primary)}button,a{touch-action:manipulation}:focus-visible{outline:3px solid var(--pocket-blue)!important;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default}.hidden{display:none!important}
.skip-link{position:fixed;top:8px;left:12px;z-index:10000;background:var(--card-bg);padding:14px;transform:translateY(-150%);border:2px solid var(--text-main)}.skip-link:focus{transform:none}.site-header{background:var(--header-bg);backdrop-filter:none;border-bottom:1px solid var(--border);box-shadow:none}.header-inner{max-width:1240px;min-height:80px;padding:14px 28px;gap:20px}.brand-name{font-weight:900;letter-spacing:-.07em;font-size:1.37rem;color:var(--text-main);white-space:nowrap}.brand-dot{color:var(--primary);padding-left:3px}.logo-text .tagline{font-size:.65rem;color:var(--text-muted);margin-top:2px}.pocket-logo{width:38px;height:41px;display:grid!important;grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);justify-content:center;align-content:center;gap:6px;background:var(--pocket-coral);border:2px solid var(--text-main);border-radius:8px 8px 16px 16px;transform:rotate(-8deg);font-size:0;box-shadow:3px 3px 0 var(--text-main)}.pocket-logo i{display:block;background:var(--text-main);border-radius:50%}.header-actions{gap:7px}.btn-header-action,.btn-icon-toggle{background:transparent;border-color:var(--border);color:var(--text-main);box-shadow:none;min-width:44px;min-height:44px}.btn-header-action:hover,.btn-icon-toggle:hover{background:var(--input-bg);border-color:var(--text-muted)}.header-guide{color:var(--text-main);font-size:.77rem;font-weight:700;text-decoration:none;margin-right:14px}.main-container{max-width:1240px;padding:0 28px 60px}
#view-home .main-container{display:flex;flex-direction:column;gap:0}.pocket-hero.quality-home-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;min-height:470px;padding:48px 0 40px;margin:0;order:0;gap:35px}.hero-eyebrow,.section-kicker{font-size:.65rem;font-weight:800;letter-spacing:.18em;color:var(--text-muted);display:flex;align-items:center;gap:8px}.live-dot{height:7px;width:7px;border-radius:50%;background:var(--primary)}.pocket-hero h1{font-size:clamp(1.65rem,3.1vw,2.6rem);line-height:1.6;font-weight:900;letter-spacing:-.065em;margin:19px 0 15px}.hero-word{position:relative;white-space:nowrap;z-index:0}.hero-word:after{content:"";position:absolute;bottom:0;left:6px;right:4px;height:16px;background:var(--pocket-lime);z-index:-1;transform:rotate(-1deg)}.hero-description{font-size:.9rem;line-height:1.95;color:var(--text-muted)}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:22px}.hero-primary{border:1.5px solid var(--text-main);background:var(--text-main);color:#fffef9;border-radius:9px;padding:15px 19px;font-weight:700;font-size:.83rem;min-height:48px;box-shadow:3px 3px 0 var(--pocket-coral);transition:transform .18s,box-shadow .18s}.hero-primary span{margin-left:18px}.hero-primary:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--pocket-coral)}.hero-secondary{font-size:.79rem;font-weight:700;color:var(--text-main);text-underline-offset:6px}.hero-proof{display:flex;gap:0;margin-top:24px!important;font-size:.68rem!important;color:var(--text-muted)!important}.hero-proof span+span:before{content:"/";padding:0 12px;color:var(--text-sub)}
.hero-art{height:360px;position:relative;max-width:450px;width:100%;justify-self:end}.art-orbit{position:absolute;border:1px solid #aeb09c;border-radius:50%;width:280px;height:280px;top:35px;left:80px}.orbit-two{width:340px;height:340px;left:49px;top:5px;border-style:dashed;opacity:.55}.play-ticket{position:absolute;top:28px;width:154px;height:231px;padding:14px 15px;border:1.8px solid var(--text-main);border-radius:16px;display:flex;flex-direction:column;align-items:center;box-shadow:5px 7px 0 #22261f15}.ticket-blue{left:16px;transform:rotate(-16deg);background:var(--pocket-blue);color:#fffef9}.ticket-lime{left:146px;top:8px;transform:rotate(8deg);background:var(--pocket-lime);color:#22261f}.ticket-coral{left:267px;top:45px;transform:rotate(24deg);background:var(--pocket-coral);color:#22261f}.ticket-type{align-self:flex-start;font-size:.57rem;letter-spacing:.19em;font-weight:800}.play-ticket strong{font-weight:900;font-size:1.03rem;margin-top:8px}.play-ticket>span:last-child{font-size:.63rem;margin-top:5px}.ticket-eye{display:flex;align-items:center;justify-content:center;width:100%;height:90px;margin-top:14px}.ticket-eye i{display:block;width:35px;height:48px;background:#fffef9;border:1.5px solid #22261f;border-radius:50%;position:relative;transform:rotate(-10deg);margin-right:-4px}.ticket-eye i:after{content:"";position:absolute;width:11px;height:17px;background:#22261f;border-radius:50%;left:17px;top:19px}.ticket-flower{font-size:6.5rem;line-height:1;height:110px;padding-top:7px;color:#22261f}.ticket-dice{font-size:6rem;line-height:1;height:110px;padding-top:10px}.pocket-sleeve{position:absolute;top:199px;left:64px;width:335px;height:133px;border:2px solid #22261f;border-radius:9px 9px 44px 44px;background:#fffef9;display:flex;align-items:center;justify-content:space-between;padding:24px 32px;transform:rotate(-4deg);box-shadow:7px 8px 0 #22261f12}.pocket-sleeve:before{content:"";position:absolute;inset:10px;border:1px dashed #868c7b;border-top:none;border-radius:0 0 33px 33px;pointer-events:none}.pocket-sleeve>span:first-child{font-size:.88rem;font-weight:900;line-height:1.65;letter-spacing:-.02em}.sleeve-star{font-size:3.2rem;color:var(--primary)}.art-note{position:absolute;top:341px;left:142px;font-size:.56rem;letter-spacing:.13em;font-weight:800;transform:rotate(-4deg);color:var(--text-muted)}
.discovery-heading{order:1;display:flex;align-items:end;justify-content:space-between;gap:20px;border-top:1px solid var(--text-main);padding-top:26px;margin:6px 0 18px;scroll-margin-top:95px}.discovery-heading h2{font-size:1.45rem;font-weight:900;letter-spacing:-.05em;line-height:1.55;margin-top:5px}.discovery-heading>p{font-size:.77rem;color:var(--text-muted)}#view-home .controls-wrapper{order:2;padding:20px 22px;border:1px solid var(--border);box-shadow:none;border-radius:18px;background:var(--card-bg);margin-bottom:24px}.pocket-fit-filters{display:flex;align-items:end;gap:12px;margin-bottom:17px}.pocket-fit-filters label{display:flex;flex-direction:column;gap:7px;font-size:.72rem;color:var(--text-muted);font-weight:700;flex:1;max-width:230px}.pocket-fit-filters select{width:100%;background:var(--input-bg);color:var(--text-main);border:1px solid var(--border);padding:11px 10px;border-radius:8px;font-size:.8rem;min-height:44px}.fit-reset{background:none;border:none;color:var(--text-muted);min-height:44px;font-size:.72rem;text-decoration:underline;text-underline-offset:4px;padding:5px}.search-box-row{border-radius:9px;box-shadow:none;border:1px solid var(--border);background:var(--input-bg)}.search-input-field{font-size:.83rem;border:none;min-width:0;height:46px;background:transparent}.smart-tags-bar{gap:7px;padding:12px 0 10px;margin:0;flex-wrap:wrap;overflow:visible}.smart-tag-chip{font-size:.73rem;min-height:42px;padding:9px 14px;border-radius:8px;box-shadow:none;background:var(--card-bg);color:var(--text-main);border:1px solid var(--border);white-space:nowrap}.smart-tag-chip.active{background:var(--text-main);border-color:var(--text-main);color:var(--card-bg);box-shadow:none}.controls-sub-row{border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}.controls-sub-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0}.filter-count-label{font-size:.7rem;white-space:nowrap;color:var(--text-muted)}.sort-select{border:1px solid var(--border);background:var(--input-bg);border-radius:8px;font-size:.71rem;max-width:190px;min-height:44px;padding:9px}.btn-roulette-inline,.btn-concierge-inline{border:1px solid var(--border)!important;border-radius:8px;background:var(--input-bg)!important;color:var(--text-main)!important;font-size:.72rem;box-shadow:none!important;padding:10px 13px;min-height:44px;white-space:nowrap;line-height:1.4}.btn-concierge-inline{background:var(--pocket-lime)!important;border-color:#b3cb59!important}.grid-heading{order:3;font-size:.93rem;font-weight:800;margin:0 0 16px}.grid-heading span{font-size:.66rem;color:var(--text-muted);font-weight:400;margin-left:12px}#view-home .games-grid{order:4;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.game-card{border:1px solid var(--border);border-radius:18px;padding:0;box-shadow:none;position:relative;background:var(--card-bg);overflow:hidden;min-width:0;transition:transform .18s,box-shadow .18s}.game-card:hover,.game-card:focus-within{transform:translateY(-4px);box-shadow:0 10px 0 #22261f08;border-color:var(--text-main)}.game-card.hero-card{background:var(--card-bg);border:1px solid var(--border);box-shadow:none}.card-top{padding:16px 18px;min-height:80px;background:#e8eddd;border-bottom:1px solid var(--border)}.game-card:nth-of-type(4n+2) .card-top{background:#e8edfb}.game-card:nth-of-type(4n+3) .card-top{background:#fde8df}.game-card:nth-of-type(4n+4) .card-top{background:#f5eed0}.card-icon{font-size:2.05rem!important;line-height:1.3;filter:none}.card-badge{font-size:.6rem;color:var(--text-main)!important;background:#fffef9b8!important;border:1px solid #22261f16;box-shadow:none;max-width:130px;text-align:center}.btn-card-fav{width:44px;height:44px;color:var(--text-muted);z-index:2;border:1px solid #22261f18;background:#fffef9b8;border-radius:50%;font-size:1.3rem;display:grid;place-items:center;flex-shrink:0}.btn-card-fav.active{color:var(--primary);background:#fffef9}.card-body{padding:17px 18px 12px}.card-title{font-size:.95rem;letter-spacing:-.025em;font-weight:900;line-height:1.65}.card-title-link{color:var(--text-main);text-decoration:none}.card-title-link:after{content:"";position:absolute;inset:0;z-index:1}.card-title-link:focus-visible{outline:0!important}.game-card:has(.card-title-link:focus-visible){outline:3px solid var(--pocket-blue);outline-offset:3px}.card-catchphrase{font-size:.74rem;line-height:1.8;color:var(--text-muted);margin-top:8px;min-height:2.7em}.card-meta{gap:5px;padding-top:12px;border:none;flex-wrap:wrap}.meta-pill{background:var(--input-bg)!important;border:1px solid var(--border)!important;color:var(--text-muted)!important;border-radius:5px;font-size:.64rem;padding:5px 7px;white-space:nowrap}.card-footer{padding:0 18px 17px;justify-content:flex-start}.card-play-btn{background:transparent!important;box-shadow:none!important;border-radius:0;padding:8px 0 0;color:var(--text-main)!important;font-size:.75rem;font-weight:800}.quality-grid-separator{margin:7px 0;padding:17px 0;border-color:var(--border)}.quality-grid-separator strong{font-size:.9rem}#view-home .empty-state{order:4;padding:45px 20px;border:1px dashed var(--border);border-radius:18px}.classic-rules-section{order:5;margin:28px 0 0}.classic-rules-toggle-btn{background:var(--card-bg);border:1px solid var(--border);box-shadow:none;border-radius:15px}.classic-toggle-title{font-size:.91rem}.classic-toggle-subtitle{font-size:.71rem}#view-home .stamp-rally-section{order:6;margin-top:24px}
.pocket-guides{order:7;margin-top:55px;border-top:1px solid var(--text-main);padding-top:30px}.pocket-guides h2,.pocket-how h2,.pocket-share h2,.pocket-faq h2{font-size:1.42rem;font-weight:900;letter-spacing:-.04em;line-height:1.6;margin:8px 0}.guide-intro>p:last-child,.pocket-share p:last-child{font-size:.79rem;color:var(--text-muted);line-height:1.8}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}.guide-grid>a{position:relative;display:block;text-decoration:none;color:var(--text-main);padding:23px 25px 34px;border:1px solid var(--border);border-radius:18px;background:#e8eddd;transition:transform .18s}.guide-grid>a:nth-child(2){background:#e8edfb}.guide-grid>a:nth-child(3){background:#fde8df}.guide-grid>a:hover{transform:translateY(-3px);border-color:var(--text-main)}.guide-number{font-size:.62rem;letter-spacing:.1em;font-weight:700}.guide-grid h3{margin:20px 0 9px;font-size:1.05rem;line-height:1.65;font-weight:900}.guide-grid p{font-size:.76rem;line-height:1.9}.guide-arrow{font-size:1.4rem;position:absolute;right:20px;bottom:14px}.pocket-how{order:8;display:grid;grid-template-columns:1fr 1.2fr;gap:45px;margin-top:52px;padding:34px 0;border-top:1px solid var(--border)}.pocket-how ol{list-style:none;display:grid;gap:20px}.pocket-how li{display:flex;gap:18px;align-items:center;font-size:.76rem;color:var(--text-muted);line-height:1.8}.pocket-how li>b{font-size:1.6rem;color:var(--primary);letter-spacing:-.07em;font-weight:900}.pocket-how li strong{display:block;font-size:.84rem;color:var(--text-main)}.pocket-share{order:9;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;border:1px solid #b3cb59;background:var(--pocket-lime);border-radius:21px}.pocket-share button{background:var(--text-main);color:#fffef9;white-space:nowrap;border:1px solid var(--text-main);padding:14px 22px;border-radius:9px;font-size:.8rem;font-weight:700;min-height:48px}.pocket-faq{order:10;margin-top:38px}.pocket-faq details{border-bottom:1px solid var(--border);padding:16px 0}.pocket-faq summary{font-size:.87rem;font-weight:700;cursor:pointer;min-height:30px}.pocket-faq details p{font-size:.8rem;line-height:1.9;max-width:740px;margin-top:12px;color:var(--text-muted)}.site-footer{background:var(--input-bg);border-top:1px solid var(--border);padding:35px 28px 90px;color:var(--text-muted)}.footer-inner{max-width:1184px}.footer-link{color:var(--text-muted);text-underline-offset:4px}.footer-copy{color:var(--text-sub)}.site-footer .footer-seo-links-row{line-height:2.2}
.modal-card{background:var(--card-bg);border:1px solid var(--border);box-shadow:0 22px 60px #22261f25;border-radius:22px;max-height:calc(100dvh - 32px);overflow-y:auto}.modal-close-btn{min-width:44px;min-height:44px;color:var(--text-main);z-index:3;background:var(--input-bg);border-radius:50%}.modal-title{font-size:1.3rem;letter-spacing:-.035em}.modal-desc{font-size:.84rem;color:var(--text-muted)}.btn-primary,.btn-success{background:var(--text-main)!important;color:#fffef9!important;box-shadow:none!important;border-color:var(--text-main)!important}.btn-outline{border-color:var(--border);color:var(--text-main);background:var(--card-bg)}.btn-concierge-opt{border-radius:9px;background:var(--input-bg);color:var(--text-main);min-height:48px;padding:10px;font-size:.79rem}.btn-concierge-opt.active{background:var(--pocket-lime);color:#22261f;border-color:#8d9e59}.btn-concierge-inline:hover,.btn-roulette-inline:hover{transform:none}.detail-container{border-radius:21px}.detail-tabs-nav{background:var(--card-bg);border-color:var(--border)}.detail-tab-btn{color:var(--text-muted);min-height:48px}.detail-tab-btn.active{color:var(--primary);border-color:var(--primary)}.detail-compact-header{border-color:var(--border);background:var(--card-bg)}.tool-card{box-shadow:none;background:var(--card-bg);border:1px solid var(--border);border-radius:16px}.tool-title{font-size:1.15rem;letter-spacing:-.025em}.btn-floating-score{background:var(--card-bg);border:1px solid var(--border);color:var(--text-main);box-shadow:none}.mobile-bottom-nav{background:var(--card-bg);border-top:1px solid var(--border);box-shadow:none;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom-nav button,.mobile-bottom-nav a{min-height:52px;color:var(--text-muted)}.btm-nav-item.active{color:var(--primary)}.btm-nav-icon{font-size:1.2rem}.btm-nav-label{font-size:.62rem}.scoreboard-drawer{background:var(--card-bg)}.seo-hero,.seo-panel,.seo-note,.seo-faq,.seo-card,.seo-answer-box,.seo-verdict{box-shadow:none;border-color:var(--border);background:var(--card-bg)}.seo-hero{background:var(--card-bg)}.seo-cta-banner{background:var(--text-main);box-shadow:none;text-align:left}.seo-cta-btn{background:var(--pocket-lime);color:#22261f;border-radius:9px}.seo-lead,.seo-meta,.seo-byline,.seo-faq p{color:var(--text-muted)}.seo-table th{background:var(--input-bg)}
html.dark-mode{--bg:#171c22;--card-bg:#212830;--bg-card:var(--card-bg);--text-main:#f7f6ec;--text-muted:#c5cec8;--text-sub:#b7c0b9;--border:#45514f;--input-bg:#2c353d;--header-bg:#171c22;--primary:#ff9d83;--primary-hover:#ffb69d;--primary-light:#45312d}.dark-mode .card-top,.dark-mode .game-card:nth-of-type(4n+2) .card-top,.dark-mode .game-card:nth-of-type(4n+3) .card-top,.dark-mode .game-card:nth-of-type(4n+4) .card-top{background:#303e43}.dark-mode .card-badge,.dark-mode .btn-card-fav{color:#22261f!important}.dark-mode .guide-grid>a{background:#293a3a;color:var(--text-main)}.dark-mode .guide-grid>a:nth-child(2){background:#2d3650}.dark-mode .guide-grid>a:nth-child(3){background:#46352e}.dark-mode .hero-primary,.dark-mode .pocket-share button,.dark-mode .btn-primary,.dark-mode .btn-success{background:var(--pocket-lime)!important;color:#22261f!important;border-color:var(--pocket-lime)!important}.dark-mode .hero-word:after{background:#526938}.dark-mode .pocket-share{color:#22261f}.dark-mode .pocket-share p{color:#3b4332}.dark-mode .pocket-share button{background:#22261f!important;color:#fffef9!important}.dark-mode .pocket-sleeve,.dark-mode .pocket-logo{border-color:#22261f;color:#22261f}.dark-mode .smart-tag-chip.active{background:var(--pocket-lime);color:#22261f;border-color:var(--pocket-lime)}.dark-mode .card-title-link{color:var(--text-main)}.dark-mode .seo-cta-banner{background:#2856cc}.dark-mode .ticket-type,.dark-mode .play-ticket strong,.dark-mode .play-ticket>span:last-child{color:inherit}
@media(max-width:1020px){.header-guide{display:none}.hero-art{transform:scale(.84);transform-origin:right center}.pocket-hero.quality-home-intro{gap:0;min-height:440px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.header-inner{gap:10px}.btn-header-pwa{display:none}.main-container{padding-left:24px;padding-right:24px}.controls-sub-actions{gap:6px}.btn-quick-finger,.btn-quick-batsu{display:none!important}}
@media(max-width:900px){.main-container{padding:0 18px 42px}.header-inner{padding:12px 18px;min-height:66px}.brand-name{font-size:1.1rem}.pocket-logo{width:30px;height:33px;gap:4px;grid-template-columns:repeat(2,5px);grid-template-rows:repeat(2,5px);box-shadow:2px 2px 0 var(--text-main)}.header-actions{gap:5px}.btn-header-action,.btn-icon-toggle{min-width:40px;min-height:40px;width:40px;height:40px;padding:0}.logo-text .tagline,.header-actions .btn-header-action>span:not([aria-hidden]),#btn-header-finger,#btn-header-batsu,#btn-header-mute{display:none!important}.header-actions .badge-counter{display:none!important}.pocket-hero.quality-home-intro{grid-template-columns:1fr;min-height:0;padding:29px 0 26px;gap:0}.pocket-hero h1{font-size:clamp(1.4rem,5.8vw,2.25rem);line-height:1.6;margin:13px 0 10px}.hero-eyebrow{font-size:.56rem}.hero-description{font-size:.79rem;line-height:1.85}.hero-actions{margin-top:18px;gap:18px}.hero-primary{font-size:.76rem;padding:13px 14px}.hero-primary span{margin-left:7px}.hero-secondary{font-size:.73rem}.hero-proof{font-size:.63rem!important;margin-top:19px!important}.hero-art{height:255px;width:340px;justify-self:center;transform:scale(.7);transform-origin:top center;margin-top:22px;margin-bottom:-75px}.hero-art .ticket-coral{left:230px}.hero-art .ticket-lime{left:120px}.hero-art .ticket-blue{left:0}.hero-art .pocket-sleeve{left:17px;width:310px}.hero-art .orbit-one{left:20px}.hero-art .orbit-two{left:-8px}.hero-art .art-note{left:67px}.discovery-heading{padding-top:20px;margin:8px 0 16px;scroll-margin-top:82px;display:block}.discovery-heading h2{font-size:1.23rem}.discovery-heading>p{font-size:.72rem;margin-top:6px}.section-kicker{font-size:.58rem}#view-home .controls-wrapper{padding:15px 14px;border-radius:16px;margin-bottom:22px}.pocket-fit-filters{gap:8px;flex-wrap:wrap;margin-bottom:13px}.pocket-fit-filters label{font-size:.66rem;max-width:none;flex:1;min-width:90px}.pocket-fit-filters select{font-size:.73rem;padding:10px 7px}.fit-reset{font-size:.63rem;padding:5px 0;flex-basis:100%;min-height:30px;text-align:left}.smart-tags-bar{display:flex;flex-wrap:wrap;overflow:visible;gap:6px;padding-top:10px}.smart-tag-chip{padding:8px 10px;font-size:.65rem;min-height:40px}.search-input-field{font-size:.75rem;min-width:0;width:100%;height:44px}.controls-sub-row{display:flex;flex-direction:column;align-items:stretch;gap:8px}.filter-count-label{font-size:.65rem}.controls-sub-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:stretch}.sort-select{grid-column:1/-1;width:100%;max-width:none;font-size:.7rem;min-height:44px}.btn-roulette-inline,.btn-concierge-inline{font-size:.67rem;padding:10px 6px;min-width:0;white-space:nowrap;display:block;word-break:normal}.grid-heading{font-size:.87rem;margin-bottom:12px}.grid-heading span{font-size:.62rem;margin-left:8px}#view-home .games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card-top{padding:12px 10px;min-height:65px;gap:4px}.card-icon{font-size:1.7rem!important}.card-badges-row{display:none}.btn-card-fav{width:40px;height:40px;font-size:1.1rem}.card-body{padding:12px 11px 8px}.card-title{font-size:.81rem;line-height:1.65}.card-catchphrase{font-size:.66rem;line-height:1.8;margin-top:6px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:0}.card-meta{gap:4px;padding-top:9px}.meta-pill{font-size:.58rem;padding:4px 5px}.pill-props{display:none}.card-footer{padding:0 11px 14px}.card-play-btn{font-size:.64rem;padding-top:4px}.game-card{border-radius:14px}.quality-grid-separator{padding-top:12px}.quality-grid-separator span{font-size:.69rem}.classic-toggle-title{font-size:.85rem;line-height:1.65}.classic-toggle-subtitle{font-size:.63rem;line-height:1.8}.classic-toggle-icon{font-size:1.5rem}.classic-rules-toggle-btn{padding:16px 13px}.pocket-guides{margin-top:36px;padding-top:24px}.pocket-guides h2,.pocket-how h2,.pocket-share h2,.pocket-faq h2{font-size:1.17rem}.guide-grid{grid-template-columns:1fr;gap:11px;margin-top:17px}.guide-grid>a{padding:19px 21px 22px}.guide-grid h3{margin:9px 0 6px;font-size:1rem}.guide-grid p{font-size:.73rem}.pocket-how{grid-template-columns:1fr;gap:18px;margin-top:32px;padding:24px 0}.pocket-how ol{gap:16px}.pocket-share{display:block;margin-top:16px;padding:23px 21px}.pocket-share button{margin-top:18px;font-size:.76rem}.pocket-faq{margin-top:30px}.pocket-faq summary{font-size:.79rem}.pocket-faq details p{font-size:.75rem}.site-footer{padding:28px 18px 90px;font-size:.75rem}.modal-card{padding:24px 18px}.concierge-options-grid{grid-template-columns:1fr!important}.btn-concierge-opt{font-size:.76rem;min-height:44px}.detail-compact-title{font-size:1rem}.detail-compact-actions button{min-width:40px;min-height:40px}.detail-tab-btn{font-size:.78rem}.tool-card{padding:18px 13px}.btn-floating-score{bottom:calc(70px + env(safe-area-inset-bottom))}.hero-word:after{height:11px}.seo-page-container{padding:22px 16px 70px}.seo-h1{font-size:1.55rem}}
@media(max-width:359px){.header-inner{padding-left:13px;padding-right:13px}.brand-name{font-size:1rem}.header-actions{gap:3px}.logo-area{gap:9px}.main-container{padding-left:13px;padding-right:13px}.pocket-hero h1{font-size:1.35rem}.hero-art{transform:scale(.61);margin-bottom:-101px}.hero-primary{font-size:.7rem}.hero-secondary{font-size:.67rem}.smart-tag-chip{font-size:.63rem;padding:8px}#view-home .games-grid{grid-template-columns:1fr}.card-badges-row{display:flex}.card-title{font-size:.92rem}.card-catchphrase{font-size:.75rem}.pill-props{display:inline-block}.card-body{padding:15px}.card-footer{padding:0 15px 15px}.card-top{padding:13px 15px}.card-play-btn{font-size:.72rem}}
@media(max-width:900px){.pocket-hero.quality-home-intro{grid-template-columns:minmax(0,1fr)}.hero-copy{min-width:0}.hero-art{margin-bottom:0;max-width:100%}.brand-name+.tagline{display:none}.logo-text{display:flex;flex-direction:column}.header-inner{min-height:66px}.hero-art .art-note{top:351px}.pocket-guides .section-kicker,.pocket-how .section-kicker{margin-bottom:5px}.card-catchphrase{font-size:.77rem}.card-title{font-size:.88rem}.meta-pill{font-size:.7rem}.card-play-btn{font-size:.72rem}}
@media(max-width:359px){.hero-art{width:294px}.hero-art .ticket-coral{left:206px}.hero-art .ticket-lime{left:104px}.hero-art .pocket-sleeve{left:0;width:294px}}
@media(min-width:360px) and (max-width:900px){.hero-art .ticket-coral{left:214px}}
.logo-text{display:flex;flex-direction:column}.ticket-coral{left:245px}
@media(min-width:901px) and (max-width:1200px){.header-guide,.btn-header-pwa{display:none}.logo-text .tagline{font-size:.6rem}.hero-art{transform:scale(.83);transform-origin:right center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.game-card:hover,.guide-grid>a:hover,.hero-primary:hover{transform:none!important}}@media(forced-colors:active){.card-title-link:after{border:1px solid CanvasText}.hero-word:after{display:none}.pocket-logo i{background:CanvasText}}

/* ゲーム中も得点記録に直接アクセスできる。 */
body.is-tool-active .btn-floating-score{display:flex!important}.custom-topic-card{padding:14px}

/* 画面外の一覧は、スクロール位置に近づくまで描画を遅らせる。 */
@supports(content-visibility:auto){.game-card{content-visibility:auto;contain-intrinsic-size:auto 360px}.pocket-guides,.pocket-how,.pocket-share,.pocket-faq{content-visibility:auto;contain-intrinsic-size:auto 300px}}

.play-ticket{text-align:center;transition:transform .2s,box-shadow .2s}.play-ticket:hover,.play-ticket:focus-visible{box-shadow:8px 12px 0 #22261f25;translate:0 -12px}.pocket-sleeve{pointer-events:none}.hero-art .art-note{letter-spacing:.04em}@media(prefers-reduced-motion:reduce){.play-ticket:hover,.play-ticket:focus-visible{translate:none}}

/* 遊びを先に見せ、補助機能は必要なときに開く。 */
#view-home .discovery-heading{order:0;border-top:0;padding-top:0;margin:25px 0 18px;align-items:center}
.discovery-heading .section-kicker{display:none}
.discovery-heading h1{font-size:1.85rem;line-height:1.5;font-weight:900;letter-spacing:-.05em;margin:0;text-wrap:balance}
.discovery-heading>p{max-width:360px;line-height:1.8}
.filter-disclosure{order:1;border:1px solid var(--border);border-radius:16px;background:var(--card-bg);overflow:hidden}
.filter-disclosure>summary,.pocket-about>summary,.pocket-how-fold>summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;min-height:58px;padding:12px 18px;font-size:.85rem;font-weight:800}
.filter-disclosure>summary::-webkit-details-marker,.pocket-about>summary::-webkit-details-marker,.pocket-how-fold>summary::-webkit-details-marker{display:none}
.disclosure-arrow{margin-left:auto;transition:rotate .18s;font-size:1.25rem}
.details[open]>.disclosure-arrow,details[open]>summary>.disclosure-arrow{rotate:180deg}
.filter-hint{font-size:.73rem;font-weight:400;color:var(--text-muted)}
#view-home .filter-disclosure .controls-wrapper{padding:0 18px 18px;border:0;border-radius:0;margin:0;background:transparent}
.controls-sub-actions .sort-select{max-width:100%;width:100%}
.filter-overview{order:2;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 18px;min-width:0}
.active-filter-summary{display:flex;gap:6px;flex-wrap:wrap;min-width:0;flex:1}
.condition-chip{border:1px solid var(--border);background:var(--input-bg);color:var(--text-main);border-radius:7px;padding:8px 10px;font-size:.72rem;min-height:40px;overflow-wrap:anywhere;text-align:left;max-width:100%}
.filter-overview .filter-count-label{margin-left:auto;font-size:.74rem}
.filter-overview .fit-reset{flex-basis:auto;font-size:.72rem;min-height:40px}
.recent-games{order:3;margin:0 0 20px;min-width:0}
.recent-games h2{font-size:.78rem;margin:0 0 8px;color:var(--text-muted)}
#recent-games-list{display:flex;gap:8px;overflow:auto;padding:2px 1px 7px;scrollbar-width:thin}
.recent-game-link{display:flex;align-items:center;gap:7px;flex-shrink:0;background:var(--card-bg);color:var(--text-main);padding:10px 12px;border:1px solid var(--border);border-radius:9px;text-decoration:none;font-size:.77rem;min-height:44px;max-width:100%;white-space:nowrap}
#view-home .grid-heading{order:4}
#view-home .games-grid,#view-home .empty-state{order:5}
#games-grid{align-items:stretch}
#games-grid>.game-card{display:flex;flex-direction:column;width:100%;min-width:0;content-visibility:visible;contain-intrinsic-size:none}
#games-grid .card-top{flex:0 0 auto;min-height:74px}
#games-grid .card-body{display:flex;flex-direction:column;flex:1;min-width:0}
#games-grid .card-title{line-height:1.6;min-height:3.2em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-break:strict;overflow-wrap:anywhere}
#games-grid .card-catchphrase{line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.6em;margin-bottom:12px}
#games-grid .card-meta{margin-top:auto}
#games-grid .card-footer{margin-top:auto}
.pocket-decisions{order:6;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0 0}
.pocket-decisions button{white-space:normal;min-height:48px;font-size:.82rem!important}
.pocket-about{order:7;margin-top:24px;border:1px solid var(--border);border-radius:16px;background:var(--card-bg)}
.pocket-about .pocket-hero.quality-home-intro{padding:24px;min-height:0;margin:0;overflow:hidden}
.pocket-hero h2{font-size:clamp(1.6rem,2.8vw,2.2rem);line-height:1.6;font-weight:900;letter-spacing:-.055em;margin:18px 0 14px}
#view-home .classic-rules-section{order:8}
#view-home .stamp-rally-section{order:9}
#view-home .pocket-guides{order:10}
.pocket-how-fold{order:11;margin-top:26px;border:1px solid var(--border);border-radius:16px;background:var(--card-bg)}
.pocket-how-fold .pocket-how{border-top:1px solid var(--border);margin:0;padding:24px}
#view-home .pocket-share{order:12}
#view-home .pocket-faq{order:13}
#view-home .pocket-guides,#view-home .pocket-how,#view-home .pocket-share,#view-home .pocket-faq{content-visibility:visible;contain-intrinsic-size:none}
#btn-header-mute,.btn-mute-toggle{display:flex!important;align-items:center;justify-content:center;gap:5px;width:auto!important;min-width:76px;min-height:44px;padding:8px!important;white-space:nowrap}
.sound-state-label{font-size:.69rem;font-weight:700;line-height:1;white-space:nowrap}
.btn-detail-scoreboard{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);color:var(--text-main);font-size:.72rem;font-weight:700;white-space:nowrap}
body.pocket-in-game .btn-floating-score{display:none!important}
.detail-nav-right{display:flex;align-items:center;gap:6px;flex-shrink:0}
.detail-nav-title{flex:1;min-width:0}
.detail-nav-title .nav-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detail-tabs-bar{display:flex;align-items:stretch;gap:4px}
.detail-tab-btn{flex:1;min-width:0;font-size:.82rem;line-height:1.5;text-wrap:balance}
.detail-compact-title{line-break:strict;overflow-wrap:anywhere;text-wrap:balance}
.detail-hero-actions .btn-compact-share{width:auto;min-width:44px;font-size:.72rem;padding:6px}
@media(max-width:900px){
  #view-home .discovery-heading{margin:20px 0 14px}
  .discovery-heading h1{font-size:1.35rem}
  .discovery-heading>p{font-size:.76rem;margin-top:6px}
  .filter-disclosure>summary,.pocket-about>summary,.pocket-how-fold>summary{padding:11px 13px;min-height:54px;font-size:.8rem}
  .filter-hint{font-size:.66rem}
  #view-home .filter-disclosure .controls-wrapper{padding:0 13px 13px}
  .filter-overview{margin:8px 0 15px;gap:7px}
  #games-grid .card-top{min-height:66px}
  #games-grid .card-body{padding:12px 11px 10px}
  #games-grid .card-title{font-size:.86rem}
  #games-grid .card-catchphrase{font-size:.75rem;margin-bottom:10px}
  #games-grid .meta-pill{font-size:.67rem;padding:4px 5px}
  #games-grid .card-play-btn{font-size:.76rem}
  .pocket-decisions{gap:8px;margin-top:20px}
  .pocket-decisions button{font-size:.76rem!important}
  .pocket-about .pocket-hero.quality-home-intro{padding:18px 14px}
  .pocket-about .hero-art{margin-top:20px;margin-bottom:0;height:255px;justify-self:center}
  .pocket-about .hero-actions{flex-wrap:wrap}
  .pocket-about .pocket-hero h2{font-size:1.5rem}
  .pocket-how-fold .pocket-how{padding:18px 14px}
  .detail-nav-right .nav-pill{display:none}
  .detail-tab-btn{font-size:.78rem;min-height:46px;padding:10px 5px}
  .header-inner{gap:8px}
}
@media(max-width:767px){#btn-toggle-fav-filter{display:none}.logo-text{min-width:0}.brand-name{font-size:1.03rem}#btn-header-mute{min-width:70px}.header-actions{gap:6px}.header-actions .btn-icon-toggle{min-height:44px}.recent-game-link{font-size:.72rem}}
@media(max-width:359px){.brand-name{font-size:.95rem}.pocket-logo{width:27px;height:30px}.header-inner{padding-left:13px;padding-right:13px}.logo-area{gap:7px}.filter-hint{font-size:.63rem}.discovery-heading h1{font-size:1.25rem}.detail-nav-title{display:none}#games-grid .card-title{font-size:.94rem}#games-grid .card-catchphrase{font-size:.78rem}.pocket-about .hero-art{transform:scale(.57);transform-origin:top center;margin-bottom:-65px}.pocket-decisions{grid-template-columns:1fr}.detail-tab-btn{font-size:.75rem}}
#games-grid .card-meta{min-height:40px;align-content:flex-start}
@media(min-width:360px) and (max-width:900px){#games-grid .card-meta{min-height:56px}}
@media(min-width:360px) and (max-width:900px){#games-grid>.game-card{min-height:335px}}
#games-grid .card-catchphrase{flex:0 0 auto;height:3.6em;max-height:3.6em}
.tool-optional-settings{border:1px solid var(--border);border-radius:9px;margin:10px 0;background:var(--input-bg)}
.tool-optional-settings>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;min-height:44px;font-size:.78rem;font-weight:700;cursor:pointer;list-style:none}
.tool-optional-settings>summary::-webkit-details-marker{display:none}
.tool-optional-settings>.setting-group{padding:0 12px 12px;margin:0}
.detail-nav-right .btn-compact-share{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;height:44px;font-size:.72rem;font-weight:700;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);color:var(--text-main)}
@media(max-width:900px){.detail-nav-title{display:none}}
.detail-nav-right .btn-compact-share{white-space:nowrap;word-break:keep-all;padding:6px!important}
#btn-header-mute.is-muted,#btn-detail-mute.is-muted{opacity:1;color:var(--text-main)}
/* 後から読み込まれる共通品質スタイルより、ホームの情報順を優先する。 */
#view-home .main-container>.games-grid,#view-home .main-container>.empty-state{order:5}
#view-home .main-container>.stamp-rally-section{order:9}
