/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   brewery-detail.css — 酒蔵詳細ページ専用スタイル
   #49 酒蔵詳細ページ v5
   モックアップ: dev_memo/mockups/brewery-detail-v5-mock.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* ヒーローエリア */
.hero{position:relative;width:100%;height:16rem;overflow:hidden;background:var(--sq-text);cursor:pointer;}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#2d1f1a,#0d0000);}
.hero-placeholder-pattern{position:absolute;inset:0;opacity:.08;background-image:repeating-linear-gradient(45deg,#fff 0,#fff 1px,transparent 1px,transparent 8px),repeating-linear-gradient(-45deg,#fff 0,#fff 1px,transparent 1px,transparent 8px);}
.hero-placeholder-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:5rem;opacity:.15;}
.hero-gradient{position:absolute;inset:0;z-index:2;background:linear-gradient(to bottom,transparent 0%,transparent 55%,rgba(0,0,0,.35) 85%,rgba(0,0,0,.5) 100%);}
.hero-thumb-label{position:absolute;top:3rem;right:.75rem;z-index:5;display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .5rem;background:rgba(248,189,42,.25);backdrop-filter:blur(4px);border:1px solid rgba(248,189,42,.5);border-radius:var(--r-pill);font-size:.4375rem;font-weight:700;color:var(--gold-lt);}
.hero-photo-cta{position:absolute;top:3rem;right:.75rem;z-index:5;display:inline-flex;align-items:center;gap:.2rem;padding:.25rem .625rem;background:rgba(255,255,255,.15);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.3);border-radius:var(--r-pill);font-size:.5rem;font-weight:700;color:rgba(255,255,255,.9);cursor:pointer;}
.page-header{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;}
.hdr-btn{display:flex;align-items:center;justify-content:center;width:2.125rem;height:2.125rem;border-radius:50%;background:rgba(0,0,0,.3);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;}
.hero-content{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:.875rem 1.25rem 1rem;}
.hero-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;margin-bottom:.375rem;background:rgba(0,0,0,.35);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.15);border-radius:var(--r-pill);font-size:.5rem;font-weight:700;color:rgba(255,255,255,.95);}
.hero-row{display:flex;align-items:flex-end;justify-content:space-between;}
.hero-name-wrap{display:inline-block;background:rgba(0,0,0,.35);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.12);border-radius:.75rem;padding:.25rem .625rem .2rem;}
.hero-name{font-family:'Yuji Syuku',serif;font-size:1.75rem;font-weight:400;color:#fff;line-height:1.2;}
.hero-kana{font-size:.5625rem;color:rgba(255,255,255,.7);margin-top:.1rem;}
.hero-actions{display:flex;gap:.375rem;align-items:center;}

/* いいね♥・推す🔥ボタン */
.hero-like-btn{display:flex;align-items:center;gap:.2rem;padding:.375rem .75rem;background:linear-gradient(135deg,rgba(236,72,153,.12),rgba(236,72,153,.06));border:1.5px solid rgba(236,72,153,.3);border-radius:1rem;font-size:.6875rem;font-weight:700;color:var(--pink);cursor:pointer;position:relative;overflow:hidden;transition:all .15s;user-select:none;}
.hero-like-btn:active{transform:scale(.97);}
.hero-like-btn.liked{background:linear-gradient(135deg,rgba(236,72,153,.2),rgba(236,72,153,.1));border-color:rgba(236,72,153,.6);}
.hero-oshi-btn{display:flex;align-items:center;gap:.2rem;padding:.375rem .75rem;background:linear-gradient(135deg,var(--gold-lt),var(--gold));border:none;border-radius:1rem;font-size:.6875rem;font-weight:700;color:var(--gold-d);cursor:pointer;position:relative;transition:all .15s;user-select:none;}
.hero-oshi-btn:active{transform:scale(.97);}
.hero-oshi-btn.done{background:linear-gradient(135deg,rgba(248,189,42,.15),rgba(248,189,42,.08));border:1.5px solid rgba(248,189,42,.5);color:#7c5a00;cursor:default;}

/* 推しバロメータ */
.oshi-meter-wrap{overflow:hidden;max-height:0;transition:max-height .4s cubic-bezier(.32,.72,0,1),opacity .3s;opacity:0;margin:.75rem 1rem 0;}
.oshi-meter-wrap.visible{max-height:5rem;opacity:1;}
.oshi-m-card{background:linear-gradient(135deg,rgba(248,189,42,.09),rgba(248,189,42,.03));border:1.5px solid rgba(248,189,42,.3);border-radius:1rem;padding:.6rem .875rem;}
.oshi-m-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:.45rem;}
.oshi-m-lbl{font-size:.5625rem;font-weight:900;color:#7c5a00;}
.oshi-m-cnt{font-family:'Spline Sans',sans-serif;font-size:.6875rem;font-weight:700;color:#7c5a00;}
.oshi-bar-bg{height:.875rem;background:rgba(248,189,42,.12);border-radius:9999px;overflow:hidden;}
.oshi-bar-fill{height:100%;width:0%;border-radius:9999px;background:linear-gradient(90deg,var(--gold),#ffd700);transition:width .2s cubic-bezier(.22,.6,.36,1);}
.oshi-bar-fill.full{background:linear-gradient(90deg,var(--gold),#fff176,var(--gold));animation:oshiBarFull .4s ease-out;}
@keyframes oshiBarFull{0%{filter:brightness(1)}40%{filter:brightness(2.2)}100%{filter:brightness(1.3)}}

/* 推し確定オーバーレイ */
#oshiOvl{position:fixed;inset:0;z-index:4500;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,.65);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .35s;cursor:pointer;}
#oshiOvl.show{opacity:1;pointer-events:all;}
.oshi-oc{background:linear-gradient(135deg,#fff,#fffbea);border-radius:2rem;padding:2rem 2.5rem;text-align:center;box-shadow:0 8px 40px rgba(248,189,42,.5);animation:ocPop .45s cubic-bezier(.32,.72,0,1);}
@keyframes ocPop{0%{transform:scale(.3);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
.oshi-oc-em{font-size:3.5rem;display:block;margin-bottom:.5rem;animation:ocSpin .8s ease-out;}
@keyframes ocSpin{0%{transform:rotate(-20deg) scale(.5)}60%{transform:rotate(8deg) scale(1.1)}100%{transform:rotate(0)}}
.oshi-oc-t{font-size:1.375rem;font-weight:900;color:#7c5a00;margin-bottom:.375rem;}
.oshi-oc-s{font-size:.6875rem;color:var(--tm);}
.oshi-oc-tap{font-size:.5rem;color:var(--tm);margin-top:1.25rem;animation:blink 1.2s ease-in-out infinite;}
@keyframes blink{0%,100%{opacity:.6}50%{opacity:1}}

/* エフェクトアニメーション */
.rising-heart{position:fixed;pointer-events:none;z-index:2500;font-size:var(--sz,1.5rem);animation:heartRise var(--dur,4.1s) ease-out forwards;filter:drop-shadow(0 0 4px rgba(236,72,153,.5));}
@keyframes heartRise{0%{transform:translate(0,0) scale(.3) rotate(var(--rot,-10deg));opacity:0}12%{transform:translate(calc(var(--dx)*.1),calc(var(--dy)*.1)) scale(1.3) rotate(calc(var(--rot)*-.5));opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(.4);opacity:0}}
.oshi-star{position:fixed;pointer-events:none;z-index:2500;font-size:var(--sz,1.5rem);animation:starRise var(--dur,4.1s) ease-out forwards;filter:drop-shadow(0 0 6px rgba(248,189,42,.7));}
@keyframes starRise{0%{transform:translate(0,0) scale(.3) rotate(var(--rot,0deg));opacity:0}12%{transform:translate(calc(var(--dx)*.1),calc(var(--dy)*.1)) scale(1.3) rotate(calc(var(--rot)*-.5));opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(.4);opacity:0}}
.push-burst{position:fixed;pointer-events:none;z-index:9998;width:0;height:0;}
.push-particle{position:absolute;width:6px;height:6px;border-radius:50%;transform-origin:0 0;animation:particleFly var(--pd,1.2s) ease-out forwards;}
@keyframes particleFly{0%{transform:translate(0,0) scale(1);opacity:1}60%{opacity:.8}100%{transform:translate(var(--px,0px),var(--py,0px)) scale(.1);opacity:0}}
.push-star-burst{position:fixed;pointer-events:none;z-index:9997;font-size:2.5rem;font-weight:900;color:#f8bd2a;text-shadow:0 0 20px rgba(248,189,42,.8);animation:starBurstAnim 1.5s cubic-bezier(.22,1,.36,1) forwards;white-space:nowrap;}
@keyframes starBurstAnim{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}25%{opacity:1;transform:translate(-50%,-55%) scale(1.3)}70%{opacity:1;transform:translate(-50%,-65%) scale(1.0)}100%{opacity:0;transform:translate(-50%,-80%) scale(.85)}}
.push-label{position:fixed;pointer-events:none;z-index:9999;font-family:'Spline Sans',sans-serif;font-size:1.1rem;font-weight:900;color:#f8bd2a;text-shadow:0 2px 8px rgba(0,0,0,.4);animation:pushLabelAnim 2.6s cubic-bezier(.34,1.56,.64,1) forwards;}
@keyframes pushLabelAnim{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}20%{opacity:1;transform:translate(-50%,-70%) scale(1.2)}60%{opacity:1;transform:translate(-50%,-90%) scale(1.05)}100%{opacity:0;transform:translate(-50%,-120%) scale(.9)}}
@keyframes cellFlash{0%,100%{filter:brightness(1)}25%{filter:brightness(1.5) saturate(1.8)}50%{filter:brightness(1.2)}}
.photo-cell.is-flashing{animation:cellFlash .5s ease;}

/* チェックインストリップ */
.checkin-strip{margin:.75rem 1rem 0;background:var(--bg-card);border-radius:var(--r-card);border:1px solid var(--bd-soft);box-shadow:var(--sh-card);padding:.75rem 1rem;}
.cs-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;}
.cs-head h3{display:flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:700;}
.cs-count-badge{font-size:.5625rem;font-weight:700;color:var(--green);background:rgba(5,150,105,.08);border:1px solid rgba(5,150,105,.2);border-radius:var(--r-pill);padding:.1rem .4rem;}
.cs-note{display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .4rem;margin-bottom:.5rem;background:rgba(5,150,105,.06);border:1px solid rgba(5,150,105,.2);border-radius:var(--r-pill);font-size:.4375rem;font-weight:700;color:var(--green);}
.cs-row{display:flex;align-items:center;flex-wrap:nowrap;overflow:hidden;}
.cs-av{width:2rem;height:2rem;border-radius:50%;border:2.5px solid var(--bg-card);margin-left:-.5rem;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:900;color:#fff;flex-shrink:0;box-shadow:0 1px 4px rgba(0,0,0,.12);cursor:pointer;transition:transform .15s;}
.cs-av:first-child{margin-left:0;}
@media (hover: hover){
        .cs-av:hover{transform:scale(1.12) translateY(-2px);z-index:10;position:relative;}
    }
.cs-more{flex-shrink:0;margin-left:-.25rem;height:2rem;border-radius:1rem;min-width:2rem;padding:0 .5rem;background:rgba(5,150,105,.12);border:2px solid var(--bg-card);display:flex;align-items:center;justify-content:center;font-size:.375rem;font-weight:900;color:var(--green);white-space:nowrap;}

/* フォトギャラリー */
.takeover-header{display:flex;align-items:center;justify-content:center;gap:.3rem;padding:.4rem .875rem .375rem;background:linear-gradient(135deg,rgba(248,189,42,.1),rgba(248,189,42,.04));border-bottom:1px solid rgba(248,189,42,.2);font-size:.5rem;font-weight:700;color:#7c5a00;transition:all .35s;}
.takeover-header .th-icon{font-size:.8125rem;flex-shrink:0;}
.takeover-header .th-text{line-height:1.4;white-space:nowrap;}
.photo-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}
.photo-cell{position:relative;aspect-ratio:1/1;overflow:hidden;cursor:pointer;background:var(--sq-text);}
.photo-cell img{width:100%;height:100%;object-fit:cover;transition:transform .25s;display:block;}
@media (hover: hover){
        .photo-cell:hover img{transform:scale(1.06);}
    }
.photo-cell.is-thumb{outline:2.5px solid var(--gold);outline-offset:-2.5px;z-index:1;}
.thumb-badge{position:absolute;top:.25rem;left:.25rem;z-index:3;background:linear-gradient(135deg,#f8bd2a,#e8a010);border-radius:var(--r-pill);padding:.1rem .325rem;font-size:.4rem;font-weight:700;color:#7c4900;box-shadow:0 1px 4px rgba(0,0,0,.25);}
.photo-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,transparent 55%);}
.photo-footer{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:.25rem .375rem;display:flex;align-items:center;justify-content:space-between;}
.photo-user{font-size:.375rem;font-weight:700;color:rgba(255,255,255,.85);}
.photo-push-btn{display:inline-flex;align-items:center;gap:.1rem;background:rgba(255,255,255,.18);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.3);border-radius:var(--r-pill);padding:.15rem .3rem;font-size:.4375rem;font-weight:700;color:rgba(255,255,255,.95);cursor:pointer;transition:all .2s;}
.photo-upload-cta{padding:1.5rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:linear-gradient(135deg,rgba(178,4,17,.03),var(--bg-field));}
.puc-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.5rem 1rem;background:var(--red);color:#fff;border:none;border-radius:var(--r-pill);font-size:.625rem;font-weight:700;cursor:pointer;font-family:inherit;}

/* ライトボックス */
#photoLightbox{position:fixed;inset:0;z-index:5000;background:rgba(0,0,0,.92);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s;cursor:pointer;}
#photoLightbox.is-open{opacity:1;pointer-events:all;}
#lbImg{max-width:min(92vw,430px);max-height:72vh;object-fit:contain;border-radius:1rem;box-shadow:0 8px 40px rgba(0,0,0,.6);animation:lbPop .25s cubic-bezier(.32,.72,0,1);}
@keyframes lbPop{0%{transform:scale(.88);opacity:0}100%{transform:scale(1);opacity:1}}
#lbMeta{display:flex;align-items:center;justify-content:space-between;width:min(92vw,430px);margin-top:.75rem;}
.lb-user{font-size:.6875rem;font-weight:700;color:rgba(255,255,255,.85);}
.lb-push-btn{display:inline-flex;align-items:center;gap:.25rem;background:rgba(255,255,255,.15);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.3);border-radius:var(--r-pill);padding:.35rem .75rem;font-size:.6875rem;font-weight:700;color:rgba(255,255,255,.95);cursor:pointer;}
.lb-close{position:fixed;top:1rem;right:1rem;z-index:5001;width:2.5rem;height:2.5rem;border-radius:50%;border:none;background:rgba(255,255,255,.15);backdrop-filter:blur(4px);color:#fff;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;}

/* 銘柄リスト */
.sake-list{padding:0 1rem .75rem;display:flex;flex-direction:column;gap:.625rem;}
.sake-card{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:var(--bg-field);border:1px solid var(--bd-soft);border-radius:1.125rem;cursor:pointer;transition:all .15s;text-decoration:none;color:inherit;}
.sake-card:active{transform:scale(.99);}
.sake-thumb{width:3.5rem;height:3.5rem;border-radius:.875rem;overflow:hidden;flex-shrink:0;background:var(--bg-card);border:1px solid var(--bd-soft);}
.sake-thumb img{width:100%;height:100%;object-fit:cover;}
.sake-info{flex:1;min-width:0;}
.sake-name{font-family:'Yuji Syuku',serif;font-size:.9375rem;font-weight:400;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sake-sub{font-size:.5rem;color:var(--tm);margin-top:.1rem;display:flex;align-items:center;gap:.375rem;}
.sake-chip{padding:.1rem .375rem;background:rgba(178,4,17,.06);border:1px solid rgba(178,4,17,.12);border-radius:var(--r-pill);font-size:.4375rem;font-weight:700;color:var(--red);}
.sake-stats{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;flex-shrink:0;}
.inline-heart-btn{display:inline-flex;align-items:center;gap:.15rem;padding:.1rem .3rem;background:rgba(236,72,153,.06);border:1px solid rgba(236,72,153,.15);border-radius:var(--r-pill);cursor:pointer;transition:all .15s;user-select:none;font-family:'Spline Sans',sans-serif;font-size:.45rem;font-weight:700;color:var(--pink);white-space:nowrap;}
.inline-heart-btn:active{transform:scale(.93);}
.inline-heart-btn .ihb-plus{font-size:.375rem;opacity:.5;}

/* のみログ Masonry */
.feed-tabs{display:flex;border-bottom:2px solid var(--bd-soft);padding:0 1rem;}
.feed-tab{padding:.625rem .25rem;margin-right:1.25rem;font-size:.6875rem;font-weight:700;color:var(--tm);cursor:pointer;border:none;background:none;position:relative;font-family:inherit;transition:color .15s;}
.feed-tab::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--red);transform:scaleX(0);transition:transform .2s;}
.feed-tab.is-active{color:var(--red);}
.feed-tab.is-active::after{transform:scaleX(1);}
.masonry-grid{padding:.75rem .75rem;columns:2;column-gap:.5rem;}
.masonry-card{break-inside:avoid;background:var(--bg-field);border:1px solid var(--bd-soft);border-radius:1rem;overflow:hidden;cursor:pointer;margin-bottom:.5rem;text-decoration:none;color:inherit;display:block;transition:transform .15s;}
.masonry-card:active{transform:scale(.98);}
.mc-photo{width:100%;overflow:hidden;}
.mc-photo img{width:100%;display:block;object-fit:cover;}
.mc-body{padding:.4rem .5rem .5rem;}
.mc-header{display:flex;align-items:center;gap:.25rem;margin-bottom:.15rem;}
.mc-av{width:1.25rem;height:1.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.4375rem;font-weight:900;color:#fff;flex-shrink:0;}
.mc-name{font-size:.5625rem;font-weight:700;color:var(--t1);}
.mc-sake-tag{font-size:.375rem;font-weight:700;color:var(--red);background:var(--red-lt);border:1px solid rgba(178,4,17,.12);border-radius:var(--r-pill);padding:.075rem .3rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block;margin-bottom:.15rem;}
.mc-text{font-size:.5625rem;line-height:1.6;color:var(--t2);}
.mc-footer{display:flex;align-items:center;justify-content:space-between;margin-top:.3rem;}
.mc-ochoko{font-size:.45rem;}
.mc-meta{font-size:.375rem;color:var(--tm);margin-top:.2rem;}
.load-more-btn{display:flex;align-items:center;justify-content:center;gap:.375rem;width:calc(100% - 2rem);margin:0 1rem .75rem;padding:.625rem;background:var(--bg-field);border:1.5px solid var(--bd-mid);border-radius:var(--r-pill);font-size:.6875rem;font-weight:700;color:var(--t2);cursor:pointer;font-family:inherit;transition:all .15s;}
@media (hover: hover){
        .load-more-btn:hover{background:var(--bg-card);border-color:var(--red);color:var(--red);}
    }

/* 酒蔵情報 */
.info-grid{padding:.25rem 1rem .875rem;}
.ig-row{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--bd-soft);}
.ig-row.full{grid-template-columns:1fr;}
.ig-row:last-child{border-bottom:none;}
.ig-cell{padding:.5rem .5rem .5rem 0;border-right:1px solid var(--bd-soft);}
.ig-cell:last-child{border-right:none;padding-left:.75rem;}
.ig-cell.full{border-right:none;padding-left:0;}
.ig-label{font-size:.4375rem;font-weight:700;color:var(--tm);letter-spacing:.04em;margin-bottom:.1875rem;}
.ig-val{font-size:.6875rem;font-weight:600;color:var(--t1);line-height:1.5;}
.ig-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;border-radius:var(--r-pill);font-size:.5rem;font-weight:700;}
.ig-badge.ok{background:rgba(5,150,105,.08);border:1px solid rgba(5,150,105,.2);color:var(--green);}

/* CTA */
.write-cta{margin:.75rem 1rem 0;background:linear-gradient(135deg,var(--red),#d4263a);border-radius:var(--r-card);padding:.875rem 1rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 16px var(--red-sh);cursor:pointer;text-decoration:none;}
.write-cta p{font-size:.6875rem;font-weight:700;color:rgba(255,255,255,.8);}
.write-cta strong{font-size:.9375rem;font-weight:900;color:#fff;display:block;margin-top:.125rem;}
.write-cta .cta-btn{background:rgba(255,255,255,.2);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.3);border-radius:var(--r-pill);padding:.5rem .875rem;color:#fff;font-size:.6875rem;font-weight:700;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:.25rem;}

.bottom-spacer{height:2rem;}
[data-tab-content]{display:none;}
[data-tab-content].is-active{display:block;}

/* セクション共通 */
.sec{margin:.75rem 1rem 0;background:var(--bg-card);border-radius:var(--r-card);border:1px solid var(--bd-soft);box-shadow:var(--sh-card);overflow:hidden;}
.sec-head{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem .5rem;}
.sec-head h3{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:700;}
.sec-head a{font-size:.5625rem;color:var(--red);text-decoration:none;font-weight:700;}

/* 統計バー */
.stats-bar{display:flex;margin:.75rem 1rem 0;background:var(--bg-card);border-radius:var(--r-card);border:1px solid var(--bd-soft);box-shadow:var(--sh-card);overflow:hidden;}
.stat-item{flex:1;padding:.625rem .25rem;text-align:center;border-right:1px solid var(--bd-soft);}
.stat-item:last-child{border-right:none;}
.stat-num{font-family:'Spline Sans',sans-serif;font-size:1.125rem;font-weight:700;color:var(--red);line-height:1;}
.stat-num.gold{color:var(--gold);}
.stat-num.ind{color:var(--indigo);}
.stat-label{font-size:.4375rem;font-weight:700;color:var(--tm);margin-top:.1875rem;}

/* ページネーション */
.photo-pager{padding:.375rem 1rem .625rem;display:flex;align-items:center;justify-content:center;gap:.375rem;}
.photo-pager-info{padding:.375rem 1rem .125rem;font-size:.4375rem;color:var(--tm);font-weight:700;text-align:center;}
.pager-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;border:1.5px solid var(--bd-mid);background:var(--bg-card);cursor:pointer;color:var(--t2);font-size:.75rem;transition:all .15s;}
.pager-btn:disabled{opacity:.3;cursor:default;}
.pager-dot{width:1.5rem;height:1.5rem;border-radius:50%;border:none;cursor:pointer;font-size:.5rem;font-weight:500;background:var(--bg-field);color:var(--t2);transition:all .15s;font-family:inherit;}
.pager-dot.is-active{font-weight:900;background:var(--red);color:#fff;}

/* cs-label (checkin strip) */
.cs-label{font-size:.5rem;color:var(--t2);padding-left:.5rem;}
.cs-label strong{font-weight:700;color:var(--green);}
