*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:#333;background:#fff;line-height:1.6}
a{color:#145cc7;text-decoration:none}a:hover{text-decoration:underline}
.container{width:min(1100px,94%);margin:auto}

/* ヘッダー / ロゴ */
.site-header{background:#fff;border-bottom:1px solid #e2e2e2;box-shadow:0 1px 5px rgba(0,0,0,.035)}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-logo{display:inline-flex;align-items:center;color:#252525;text-decoration:none;line-height:1}
.site-logo:hover{text-decoration:none;opacity:.9}
.site-logo-image{display:block;width:auto;height:78px;max-width:min(600px,72vw);object-fit:contain}
.site-header nav{display:flex;gap:20px;align-items:center}.site-header nav a{font-weight:600;color:#444}
.site-footer{margin-top:50px;padding:25px 0;border-top:1px solid #ddd;text-align:center;color:#777}

.intro-block{padding:22px 0 6px}.intro-block h1{font-size:1.28rem;line-height:1.55;margin:0 0 8px}.intro-block p{margin:0;line-height:24px}
.home-section{margin:24px 0}.home-section h2,.detail-section h2{font-size:1rem;line-height:1.4;margin:0 0 10px;font-weight:700}
.notice-box{height:200px;overflow-y:auto;border:1px solid #ccc;background:#fff;padding:2px 8px}.notice-box p{line-height:1.45;margin:6px 0;font-size:.94rem}.notice-date{white-space:nowrap}
.search-box{display:flex;gap:6px;max-width:650px}.search-box input{flex:1;min-width:0;padding:9px 10px;border:1px solid #aaa;font-size:16px}.search-box button{padding:8px 20px;border:1px solid #5d86dd;background:#759ef4;color:#fff;font-weight:700;cursor:pointer}

/*::::::::::: JAPAN MAP 日本地図（旧サイトと同じ配置） :::::::::::*/
#jp_map { max-height:640px; position:relative; list-style-type:none; margin:0 auto; padding:0; box-sizing:border-box; overflow:hidden; }
#jp_map::before { content:''; display:block; padding:80% 0 0; }
#jp_map ul, #jp_map li { display:block; list-style:none; margin:0; padding:0; }
#jp_map a { display:block; font-weight:normal; text-decoration:none; color:#333; text-shadow:#fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; box-sizing:border-box; border:solid #fff 2px; float:none; font-size:14px; line-height:1; padding:6px 0; text-align:center; position:absolute; margin:0; }
#jp_map a:hover { opacity:.85; text-decoration:none; }
#jp_map a span { display:block; margin:0 auto; padding:0; line-height:1.1em; text-align:center; position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); }
#jp_map .hokkaido a, #jp_map .tohoku a { background-color:#759ef4; }
#jp_map .kanto a { background-color:#7ecfea; }
#jp_map .chubu a { background-color:#7cdc92; }
#jp_map .kansai a { background-color:#ffe966; }
#jp_map .chugoku a { background-color:#ffcc66; }
#jp_map .shikoku a { background-color:#ffbb9c; }
#jp_map .okinawa a, #jp_map .kyushu a { background-color:#ffbdbd; }
#jp_map li a { height:12%; width:7%; }
#jp_map li.hokkaido a { top:0; left:81%; height:20%; width:21%; }
#jp_map li.hokkaido a span { right:7.5%; }
#jp_map li.hokkaido a::before, #jp_map li.hokkaido a::after { display:block; z-index:1; content:''; background-color:inherit; width:10%; height:40%; right:100%; bottom:0; position:absolute; }
#jp_map li.hokkaido a::after { z-index:-1; }
#jp_map li.aomori a { top:21%; left:79%; height:8%; width:19%; }
#jp_map li.iwate a { top:29%; left:89.5%; height:8%; width:10.5%; }
#jp_map li.akita a { top:29%; left:79%; height:8%; width:10.5%; }
#jp_map li.miyagi a { top:37%; left:89.5%; height:8%; width:10.5%; }
#jp_map li.yamagata a { top:37%; left:79%; height:8%; width:10.5%; }
#jp_map li.fukushima a { top:45%; left:93%; height:18%; }
#jp_map li.ibaraki a { top:63%; left:93%; height:18%; }
#jp_map li.tochigi a { top:57%; left:86%; }
#jp_map li.gunma a { top:57%; left:79%; }
#jp_map li.saitama a { top:69%; left:86%; }
#jp_map li.chiba a { top:81%; left:93%; height:17%; }
#jp_map li.tokyo a { top:81%; left:86%; }
#jp_map li.kanagawa a { top:81%; left:79%; }
#jp_map li.niigata a { top:45%; left:79%; width:14%; }
#jp_map li.toyama a { top:45%; left:72%; }
#jp_map li.ishikawa a { top:45%; left:65%; height:17%; }
#jp_map li.fukui a { top:50%; left:58%; }
#jp_map li.yamanashi a { top:69%; left:79%; }
#jp_map li.nagano a { top:57%; left:72%; height:24%; }
#jp_map li.gifu a { top:62%; left:65%; height:19%; }
#jp_map li.shizuoka a { top:81%; left:72%; }
#jp_map li.aichi a { top:81%; left:65%; }
#jp_map li.mie a { top:86%; left:58%; }
#jp_map li.shiga a { top:62%; left:58%; }
#jp_map li.kyoto a { top:56%; left:51%; height:18%; }
#jp_map li.osaka a { top:74%; left:51%; }
#jp_map li.hyogo a { top:53%; left:44%; height:24%; }
#jp_map li.nara a { top:74%; left:58%; }
#jp_map li.wakayama a { top:86%; left:51%; }
#jp_map li.tottori a { top:53%; left:37%; }
#jp_map li.shimane a { top:53%; left:30%; }
#jp_map li.okayama a { top:65%; left:37%; }
#jp_map li.hiroshima a { top:65%; left:30%; }
#jp_map li.yamaguchi a { top:59%; left:23%; }
#jp_map li.tokushima a { top:89.5%; left:36.5%; height:8%; width:10.5%; }
#jp_map li.kagawa a { top:81.5%; left:36.5%; height:8%; width:10.5%; }
#jp_map li.ehime a { top:81.5%; left:26%; height:8%; width:10.5%; }
#jp_map li.kochi a { top:89.5%; left:26%; height:8%; width:10.5%; }
#jp_map li.fukuoka a { top:55%; left:15%; }
#jp_map li.saga a { top:55%; left:8%; }
#jp_map li.nagasaki a { top:55%; left:1%; height:16%; }
#jp_map li.kumamoto a { top:67%; left:8%; }
#jp_map li.oita a { top:67%; left:15%; }
#jp_map li.miyazaki a { top:79%; left:15%; }
#jp_map li.kagoshima a { top:79%; left:8%; }
#jp_map li.okinawa a { top:88%; left:0; }
@media screen and (max-width:782px) {
  #jp_map { margin:16px 0 0; }
  #jp_map::before { padding:100% 0 0; }
  #jp_map li a { font-size:12px; border-width:1px; }
  #jp_map a { text-shadow:#fff 1px 0px, #fff -1px 0px, #fff 0px -1px, #fff 1px -1px, #fff -1px -1px, #fff 0px 1px, #fff 1px 1px, #fff -1px 1px; border-width:1px; font-size:12px; }
  #jp_map li.tokushima a, #jp_map li.kochi a { top:88%; }
  #jp_map li.kagawa a, #jp_map li.ehime a { top:80%; }
}
@media screen and (max-width:620px) {
  #jp_map a span { width:1em; }
  #jp_map li.hokkaido a span, #jp_map li.aomori a span, #jp_map li.akita a span, #jp_map li.iwate a span, #jp_map li.yamagata a span, #jp_map li.miyagi a span, #jp_map li.niigata a span, #jp_map li.ehime a span, #jp_map li.kagawa a span, #jp_map li.kochi a span, #jp_map li.tokushima a span { width:auto; }
}
@media screen and (max-width:480px) {
  #jp_map li a { font-size:11px; }
}

.kana-links,.alphabet-links{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.kana-links a,.alphabet-links a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:5px 10px;border:1px solid #7db47d;border-radius:5px;background:#86c987;color:#fff;font-weight:700}.alphabet-links a{width:38px;padding:5px}
.region-table-wrap{overflow-x:auto}.region-table{width:100%;border-collapse:collapse}.region-table th,.region-table td{border:1px solid #ddd;padding:8px;vertical-align:top;line-height:1.45}.region-table th{min-width:90px;text-align:center}.region-table td a{display:inline-block;margin:0 8px 3px 0}.region-heading-0,.region-heading-1{background:#759ef4}.region-heading-2{background:#7ecfea}.region-heading-3{background:#7cdc92}.region-heading-4{background:#ffe966}.region-heading-5{background:#ffcc66}.region-heading-6{background:#ffbb9c}.region-heading-7,.region-heading-8{background:#ffbdbd}
.table-wrap{overflow-x:auto}.sacred-table,.detail-table{width:100%;border-collapse:collapse}.sacred-table th,.detail-table th{background:#759ef4;color:#111;padding:9px;border:1px solid #ddd}.sacred-table td,.detail-table td{padding:9px;border:1px solid #ddd;vertical-align:top}.sacred-table tbody tr:nth-child(even){background:#f7f7f7}.detail-table{margin:20px 0}.detail-table th{width:150px}.detail-section{margin:30px 0}.embed-wrap{overflow-x:auto;margin:10px 0}.rich-text{line-height:1.8}.affiliate{margin:15px 0}.page-head{margin:25px 0}.pagination{margin:25px 0}.pagination nav{display:flex;gap:8px}

@media(max-width:700px){
  .header-inner{min-height:66px;gap:12px}
  .site-logo-image{height:62px;max-width:72vw}
  .site-header nav{gap:10px;font-size:.88rem}
  .jp-map-list .pref{height:7.4%}
}
@media(max-width:480px){
  .container{width:96%}
  .header-inner{align-items:center}.site-header nav a:first-child{display:none}
  .site-logo-image{height:54px;max-width:78vw}
  .intro-block h1{font-size:1.05rem}.region-table{font-size:.88rem}.search-box button{padding:8px 14px}
  #jp_map{width:100%}.jp-map-list{border-radius:8px}.jp-map-list .pref a{border-width:1px;box-shadow:none}
  .detail-table th{width:100px}.sacred-table{font-size:.9rem}
}

/* login / registration / sacred submission */
.site-nav{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.site-nav a{white-space:nowrap}.nav-register{font-weight:700}.nav-user{font-size:.88rem;color:#555}.nav-logout{display:inline}.nav-logout button{border:0;background:transparent;padding:0;color:#2467a6;cursor:pointer;font:inherit}.alert{margin:18px 0;padding:12px 15px;border-radius:6px}.alert-success{background:#ecf8ee;border:1px solid #a9d9b0}.alert-error{background:#fff0f0;border:1px solid #e5aaaa;color:#8c2424}.alert ul{margin:0;padding-left:20px}.form-page{display:flex;justify-content:center;padding:28px 0 50px}.form-card{width:min(100%,520px);padding:26px;background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 3px 16px rgba(0,0,0,.05)}.wide-card{width:min(100%,860px)}.form-card h1,.page-head h1{margin-top:0}.form-lead{margin-top:-4px;color:#666}.auth-form{display:grid;gap:17px;margin-top:22px}.auth-form label{display:grid;gap:7px;font-weight:700}.auth-form input,.auth-form select,.auth-form textarea{width:100%;box-sizing:border-box;border:1px solid #bbb;border-radius:6px;padding:11px 12px;background:#fff;font:inherit}.auth-form textarea{resize:vertical;line-height:1.6}.auth-form input:focus,.auth-form select:focus,.auth-form textarea:focus{outline:2px solid rgba(57,125,195,.22);border-color:#397dc3}.check-row{display:flex!important;align-items:center;gap:8px!important;font-weight:400!important}.check-row input{width:auto}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;padding:11px 17px;text-decoration:none;font-weight:700;cursor:pointer;font:inherit}.primary-button{background:#397dc3;color:#fff}.secondary-button{background:#f3f3f3;color:#222;border:1px solid #ccc}.form-foot{text-align:center;margin:20px 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.required{font-size:.75rem;background:#d94848;color:#fff;border-radius:3px;padding:2px 5px;margin-left:4px}.form-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:.85rem;white-space:nowrap}.status-pending{background:#fff3bf}.status-approved{background:#d8f3dc}.status-rejected{background:#f1f1f1}.empty-state{padding:30px;text-align:center}.submission-table td:first-child{white-space:nowrap}
@media(max-width:760px){.header-inner{align-items:flex-start}.site-nav{justify-content:flex-end;gap:8px;font-size:.85rem}.nav-user{display:none}.form-grid{grid-template-columns:1fr}.form-card{padding:18px}.form-title-row{display:block}.form-title-row .primary-button,.form-title-row .secondary-button{margin-top:8px}.submission-table{min-width:650px}}

/* detail: Amazon associate / same work spots */
.amazon-associate-box{margin:20px 0 18px;padding:16px;border:1px solid #e0e0e0;border-radius:10px;background:#fffdf7;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.amazon-associate-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.amazon-associate-head strong{font-size:1rem}.amazon-associate-head span{font-size:.82rem;color:#666;white-space:nowrap}
.amazon-associate-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.amazon-associate-links a{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid #ddd;border-radius:8px;background:#fff;color:#222;text-decoration:none}.amazon-associate-links a:hover{border-color:#d69b2d;box-shadow:0 2px 8px rgba(0,0,0,.06)}.amazon-associate-links span{font-weight:700}.amazon-associate-links small{color:#9a5d00}
.amazon-associate-note{font-size:.75rem;color:#777;margin:10px 0 0;line-height:1.5}
.same-work-spots{margin:-4px 0 26px}.same-work-spots-title{display:flex;align-items:center;gap:9px;margin-bottom:8px}.same-work-spots-title span{font-size:.8rem;color:#666}.same-work-scroll{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.same-work-card{flex:0 0 245px;display:flex;flex-direction:column;gap:4px;min-height:110px;padding:12px;border:1px solid #ddd;border-radius:8px;background:#fff;color:#222;text-decoration:none;scroll-snap-align:start}.same-work-card:hover{border-color:#759ef4;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,.06)}.same-work-pref{align-self:flex-start;padding:2px 7px;border-radius:999px;background:#eef4ff;color:#3f69a8;font-size:.74rem}.same-work-card strong{line-height:1.45}.same-work-card small{color:#666;line-height:1.45}
@media(max-width:700px){.amazon-associate-links{grid-template-columns:1fr}.same-work-card{flex-basis:82vw}}

/* Amazon Creators API product cards */
.amazon-product-scroll{display:flex;gap:12px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.amazon-product-card{flex:0 0 190px;display:flex;flex-direction:column;gap:7px;padding:12px;border:1px solid #e1e1e1;border-radius:9px;background:#fff;color:#222;text-decoration:none;scroll-snap-align:start}
.amazon-product-card:hover{border-color:#d69b2d;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.amazon-product-image{height:170px;display:flex;align-items:center;justify-content:center;background:#fff}
.amazon-product-image img{display:block;max-width:100%;max-height:165px;width:auto;height:auto;object-fit:contain}
.amazon-product-card strong{font-size:.9rem;line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.amazon-product-price{font-weight:700;color:#a65a00}
.amazon-product-card small{margin-top:auto;color:#9a5d00;font-weight:700}
@media(max-width:700px){.amazon-product-card{flex-basis:46vw;min-width:155px}.amazon-product-image{height:145px}.amazon-product-image img{max-height:140px}}

/* v6: header vertical centering + anime cover */
.site-header .header-inner{height:116px;min-height:116px;align-items:center!important;padding-top:0;padding-bottom:0}
.site-logo,.site-nav{align-self:center}
.anime-cover-box{display:flex;justify-content:center;align-items:center;margin:0 auto 18px;padding:14px;background:#fff;border:1px solid #e6e6e6;border-radius:10px}
.anime-cover-box img{display:block;width:auto;max-width:100%;max-height:430px;object-fit:contain;border-radius:6px}
.amazon-search-links{display:flex;flex-wrap:wrap;gap:10px;padding:14px 0}
.amazon-search-links a{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #d7a100;border-radius:6px;background:#fff7d6;color:#222;font-weight:700;text-decoration:none}
@media(max-width:760px){.site-header .header-inner{height:82px;min-height:82px;align-items:center!important}.anime-cover-box img{max-height:340px}.amazon-search-links{display:grid;grid-template-columns:1fr}}

/* v7: compact cover beside detail table, related goods below */
.detail-hero-grid{display:grid;grid-template-columns:minmax(170px,240px) minmax(0,1fr);gap:18px;align-items:stretch;margin:18px 0 18px}
.detail-hero-grid-no-image{grid-template-columns:1fr}
.detail-hero-grid .anime-cover-box{margin:0;padding:10px;min-height:100%;box-sizing:border-box}
.detail-hero-grid .anime-cover-box img{width:100%;height:100%;max-height:310px;object-fit:contain}
.detail-hero-table{margin:0!important;width:100%;height:100%}
.detail-hero-table th{width:125px}
@media(max-width:760px){
  .detail-hero-grid{grid-template-columns:110px minmax(0,1fr);gap:10px;align-items:start}
  .detail-hero-grid .anime-cover-box{padding:6px}
  .detail-hero-grid .anime-cover-box img{max-height:190px;height:auto}
  .detail-hero-table th{width:88px}
}
@media(max-width:520px){
  .detail-hero-grid{grid-template-columns:1fr}
  .detail-hero-grid .anime-cover-box{max-width:190px;justify-self:center}
  .detail-hero-grid .anime-cover-box img{max-height:240px}
}

/* v9: featured anime works on home */
.featured-works-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.featured-works-heading h2{margin-bottom:0}
.featured-works-heading span{font-size:.84rem;color:#777}
.featured-works-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.featured-work-card{display:block;overflow:hidden;border:1px solid #e2e2e2;border-radius:10px;background:#fff;color:#222;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,.04);transition:transform .15s ease,box-shadow .15s ease}
.featured-work-card:hover{transform:translateY(-2px);box-shadow:0 5px 16px rgba(0,0,0,.09);text-decoration:none}
.featured-work-image{aspect-ratio:3/4;overflow:hidden;background:#f3f3f3}
.featured-work-image img{display:block;width:100%;height:100%;object-fit:cover}
.featured-work-body{display:flex;flex-direction:column;gap:5px;padding:10px 11px 12px}
.featured-work-body strong{line-height:1.4;font-size:.96rem}
.featured-work-body span{font-size:.78rem;color:#68707a}
@media(max-width:820px){.featured-works-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.featured-works-heading{align-items:flex-start;flex-direction:column;gap:2px}.featured-works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.featured-work-body{padding:8px 9px 10px}.featured-work-body strong{font-size:.9rem}}

/* v11: compact featured works + detail spacing without cover */
.featured-works-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}
.featured-work-card{border-radius:7px}
.featured-work-body{padding:5px 5px 6px}
.featured-work-body strong{font-size:.72rem;line-height:1.25;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:900px){.featured-works-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.featured-work-body{padding:4px 3px 5px}.featured-work-body strong{font-size:.66rem;line-height:1.2}}
@media(max-width:600px){.featured-works-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.featured-work-body{padding:4px 2px}.featured-work-body strong{font-size:.62rem;line-height:1.18}.featured-works-heading{margin-bottom:8px}}
.detail-hero-grid-no-image{margin-top:18px}

/* Compact Amazon related-products area */
.amazon-associate-box{margin:14px 0 16px;padding:10px 12px;border-radius:8px}
.amazon-associate-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px;font-size:.9rem}
.amazon-associate-head strong{font-size:.9rem}
.amazon-associate-head span{font-size:.72rem;color:#777}
.amazon-search-links{display:flex!important;flex-wrap:wrap!important;gap:6px!important;padding:5px 0!important}
.amazon-search-links a{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;padding:6px 10px!important;border-radius:5px!important;font-size:.78rem!important;line-height:1.2!important;white-space:nowrap}
.amazon-associate-note{margin:5px 0 0;font-size:.66rem;line-height:1.35;color:#777}
.amazon-product-scroll{gap:8px;padding:2px 1px 6px}
.amazon-product-card{flex-basis:145px;padding:8px;gap:5px}
.amazon-product-image{height:115px}
.amazon-product-image img{max-height:110px}
.amazon-product-card strong{font-size:.76rem;line-height:1.35;-webkit-line-clamp:2}
.amazon-product-price{font-size:.78rem}
.amazon-product-card small{font-size:.7rem}
@media(max-width:760px){
  .amazon-associate-box{padding:9px 10px}
  .amazon-search-links{display:flex!important;grid-template-columns:none!important;flex-wrap:wrap!important;gap:5px!important}
  .amazon-search-links a{padding:6px 8px!important;font-size:.72rem!important}
  .amazon-product-card{flex-basis:125px;min-width:125px}
  .amazon-product-image{height:100px}
  .amazon-product-image img{max-height:95px}
}

/* v15: Laravel pagination without Tailwind CSS */
.pagination{margin:24px 0;display:flex;justify-content:center}
.pagination nav{width:100%}
.pagination nav > div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pagination nav > div:first-child{display:none}
.pagination nav > div:last-child{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pagination nav > div:last-child > div:last-child{display:flex;align-items:center}
.pagination nav span[aria-current="page"] span,
.pagination nav a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;box-sizing:border-box;padding:0 9px;border:1px solid #d7d7d7;background:#fff;color:#2467a6;text-decoration:none;font-size:.88rem;line-height:1}
.pagination nav span[aria-current="page"] span{background:#759ef4;border-color:#759ef4;color:#fff;font-weight:700}
.pagination nav a:hover{background:#f2f6ff;text-decoration:none}
.pagination nav svg{width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important;display:block}
.pagination nav .relative.inline-flex{display:inline-flex;align-items:center}
@media(max-width:600px){
  .pagination{margin:18px 0}
  .pagination nav > div:last-child{justify-content:center}
  .pagination nav > div:last-child > div:first-child{display:none}
  .pagination nav span[aria-current="page"] span,.pagination nav a{min-width:30px;height:30px;padding:0 7px;font-size:.8rem}
  .pagination nav svg{width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important}
}


/* v18: TOP search buttons show registration counts on a second line */
.search-count{display:block;font-size:.68rem;line-height:1.05;font-weight:600;opacity:.88;margin-top:2px;white-space:nowrap}
.kana-links a,.alphabet-links a{flex-direction:column;line-height:1.15;min-height:44px}
.kana-links a .search-count,.alphabet-links a .search-count{color:rgba(255,255,255,.92)}
.region-table td a{min-width:46px;text-align:center;line-height:1.2;padding:3px 5px}
.region-table td a .search-count{color:#666}
#jp_map .pref_name{line-height:1.05}
#jp_map .pref_name .search-count{font-size:9px;line-height:1;margin-top:1px}
@media(max-width:600px){
  .kana-links,.alphabet-links{gap:5px}
  .kana-links a{padding:5px 7px;min-height:42px}
  .alphabet-links a{width:38px;min-height:42px}
  .search-count{font-size:.62rem}
  .region-table td a{margin-right:4px;padding:3px}
}

/* v23: TOP visual redesign - anime collage + sparkle hero, responsive */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.home-hero{position:relative;isolation:isolate;min-height:570px;margin:22px 0 34px;overflow:hidden;border-radius:28px;background:linear-gradient(125deg,#111735 0%,#292058 43%,#762e70 72%,#dc5c86 100%);box-shadow:0 22px 60px rgba(28,23,68,.22);color:#fff;padding:56px 52px 50px}
.home-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 75% 18%,rgba(255,255,255,.20),transparent 24%),radial-gradient(circle at 22% 82%,rgba(97,213,255,.16),transparent 30%),linear-gradient(110deg,rgba(14,20,57,.12),rgba(255,99,168,.08))}
.home-hero::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to right,rgba(0,0,0,.7),transparent 75%)}
.hero-glow{position:absolute;border-radius:999px;filter:blur(18px);opacity:.65;z-index:-1;pointer-events:none}.hero-glow-a{width:260px;height:260px;right:16%;top:-100px;background:rgba(93,210,255,.25)}.hero-glow-b{width:280px;height:280px;right:-80px;bottom:-120px;background:rgba(255,155,94,.26)}
.hero-copy{position:relative;z-index:5;width:52%;max-width:570px}.hero-logo{display:block;width:min(390px,92%);height:auto;max-height:78px;object-fit:contain;object-position:left center;filter:drop-shadow(0 5px 18px rgba(0,0,0,.2));margin-bottom:18px}.hero-kicker{margin:0 0 10px;letter-spacing:.19em;font-size:.69rem;font-weight:800;color:#ffd4ef}.home-hero h1{margin:0;font-size:clamp(2.2rem,4.3vw,4.55rem);line-height:1.03;letter-spacing:-.045em;color:#fff;text-shadow:0 5px 28px rgba(0,0,0,.22)}.home-hero h1 span{background:linear-gradient(90deg,#fff 0%,#ffe6a8 45%,#ffb7ef 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lead{margin:20px 0 23px;font-size:1rem;line-height:1.85;color:rgba(255,255,255,.9);font-weight:500}.hero-search{display:flex;align-items:center;width:100%;max-width:560px;padding:6px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.9);border-radius:16px;box-shadow:0 14px 30px rgba(13,12,42,.25)}.hero-search-icon{display:grid;place-items:center;width:44px;color:#7d5b9a;font-size:1.65rem;line-height:1;transform:rotate(-18deg)}.hero-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:10px 4px;font:inherit;font-size:.96rem;color:#282238}.hero-search input::placeholder{color:#8c8795}.hero-search button{border:0;border-radius:12px;padding:12px 18px;background:linear-gradient(135deg,#ff5b93,#9a57dd);color:#fff;font-weight:800;white-space:nowrap;cursor:pointer;box-shadow:0 8px 18px rgba(178,59,142,.28)}.hero-search button:hover{filter:brightness(1.05)}
.hero-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.hero-actions a{display:inline-flex;align-items:center;padding:7px 11px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:rgba(255,255,255,.09);backdrop-filter:blur(8px);color:#fff;font-size:.76rem;font-weight:700;text-decoration:none}.hero-actions a:hover{background:rgba(255,255,255,.17);text-decoration:none}.hero-actions .hero-action-accent{background:rgba(255,222,119,.16);border-color:rgba(255,222,119,.52);color:#fff3ba}
.hero-collage{position:absolute;z-index:3;right:3.4%;top:50%;width:43%;height:78%;transform:translateY(-50%);pointer-events:none}.hero-cover{position:absolute;display:block;overflow:hidden;border:3px solid rgba(255,255,255,.92);border-radius:15px;background:#191329;box-shadow:0 18px 40px rgba(0,0,0,.32);pointer-events:auto;text-decoration:none;transition:transform .25s ease,filter .25s ease}.hero-cover img{display:block;width:100%;height:100%;object-fit:cover}.hero-cover span{position:absolute;left:0;right:0;bottom:0;padding:28px 8px 7px;background:linear-gradient(transparent,rgba(9,8,21,.88));color:#fff;font-size:.65rem;font-weight:800;line-height:1.2;text-shadow:0 1px 3px #000;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hero-cover:hover{z-index:10;filter:brightness(1.07);text-decoration:none}.hero-cover-1{width:39%;height:59%;left:28%;top:16%;transform:rotate(-2deg) scale(1.05);z-index:5}.hero-cover-2{width:32%;height:49%;left:3%;top:5%;transform:rotate(-9deg);z-index:3}.hero-cover-3{width:32%;height:49%;right:2%;top:2%;transform:rotate(8deg);z-index:2}.hero-cover-4{width:31%;height:47%;left:5%;bottom:1%;transform:rotate(7deg);z-index:1}.hero-cover-5{width:31%;height:47%;right:3%;bottom:3%;transform:rotate(-8deg);z-index:4}.hero-cover-1:hover{transform:rotate(-2deg) scale(1.09)}.hero-cover-2:hover{transform:rotate(-9deg) translateY(-5px)}.hero-cover-3:hover{transform:rotate(8deg) translateY(-5px)}.hero-cover-4:hover{transform:rotate(7deg) translateY(-5px)}.hero-cover-5:hover{transform:rotate(-8deg) translateY(-5px)}
.hero-sparkles{position:absolute;inset:0;z-index:4;pointer-events:none}.spark{position:absolute;font-style:normal;color:#fff6bd;text-shadow:0 0 12px #fff,0 0 22px #ff86d7;animation:heroTwinkle 2.8s ease-in-out infinite}.spark-1{right:44%;top:11%;font-size:28px}.spark-2{right:7%;top:20%;font-size:24px;animation-delay:.5s}.spark-3{right:47%;bottom:14%;font-size:18px;animation-delay:1.1s}.spark-4{right:15%;bottom:10%;font-size:30px;animation-delay:1.7s}.spark-5{left:47%;top:37%;font-size:16px;animation-delay:.9s}.spark-6{left:42%;bottom:9%;font-size:20px;animation-delay:2s}@keyframes heroTwinkle{0%,100%{opacity:.45;transform:scale(.75) rotate(0deg)}50%{opacity:1;transform:scale(1.18) rotate(12deg)}}
.hero-scroll{position:absolute;left:52px;bottom:15px;display:flex;align-items:center;gap:7px;font-size:.56rem;letter-spacing:.18em;color:rgba(255,255,255,.56)}.hero-scroll span{width:28px;height:1px;background:rgba(255,255,255,.5)}
.home-intro-note{margin:-7px auto 28px;padding:14px 18px;border-radius:14px;background:linear-gradient(90deg,#fff8fc,#f6f7ff);border:1px solid #eee6f2;color:#57505d;font-size:.88rem;line-height:1.75}.home-intro-note strong{color:#463d62}.home-intro-note a{font-weight:800;color:#9d3c8f}
.modern-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:14px}.modern-section-heading h2{margin:1px 0 0!important;font-size:1.25rem!important;color:#28233a}.section-eyebrow{display:block;font-size:.63rem!important;letter-spacing:.16em;color:#a74d98!important;font-weight:900}.map-heading p{margin:4px 0 0;color:#777;font-size:.82rem}.home-panel{padding:21px;border:1px solid #ece7f0;border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(34,26,57,.045)}
.featured-works-section{padding:4px 0 2px}.featured-works-grid{gap:10px}.featured-work-card{border:0;border-radius:13px;box-shadow:0 6px 18px rgba(34,26,57,.10);background:#fff}.featured-work-image{position:relative}.featured-work-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(34,26,57,.16)}.featured-card-arrow{position:absolute;right:7px;bottom:7px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:rgba(255,255,255,.9);color:#7c3b8e;font-weight:900;box-shadow:0 3px 10px rgba(0,0,0,.16)}.featured-work-body{background:linear-gradient(180deg,#fff,#fbf7fc)}
.notice-section .notice-box{height:150px;border:0;border-radius:12px;background:#faf8fb;padding:7px 12px}.notice-section .notice-box a{color:#8a3f8a;font-weight:700}.modern-search-box{max-width:none}.modern-search-box input{border:1px solid #ddd3e2;border-radius:10px 0 0 10px;padding:11px 13px}.modern-search-box button{border:0;border-radius:0 10px 10px 0;background:linear-gradient(135deg,#8359c9,#e65f9c);padding:10px 25px}
.map-section{position:relative;padding:26px 26px 18px;border-radius:24px;background:linear-gradient(180deg,#fbfaff 0%,#fff 100%);border:1px solid #ece8f3;overflow:hidden}.map-section::before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;top:-100px;background:radial-gradient(circle,#ffd8ed,transparent 68%);opacity:.65;pointer-events:none}.map-stage{position:relative;padding:8px 9px 5px;border-radius:18px;background:rgba(255,255,255,.78)}
.work-search-section .kana-links a,.work-search-section .alphabet-links a{border:0;background:linear-gradient(135deg,#6858c8,#b44ba0);box-shadow:0 4px 10px rgba(101,66,162,.12)}.work-search-section .kana-links a:hover,.work-search-section .alphabet-links a:hover{filter:brightness(1.08);text-decoration:none}.region-section .region-table{border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:12px}.region-section .region-table th,.region-section .region-table td{border-color:#eee8f0}

@media(max-width:900px){
  .home-hero{min-height:545px;padding:46px 34px 44px}.hero-copy{width:55%}.hero-collage{right:2%;width:44%}.hero-logo{max-height:68px}.hero-lead{font-size:.92rem}.hero-scroll{left:34px}
}
@media(max-width:700px){
  .home-hero{min-height:auto;margin:12px 0 25px;border-radius:22px;padding:25px 16px 24px;text-align:center}.home-hero::after{background-size:34px 34px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 85%)}
  .hero-copy{width:100%;max-width:none;display:flex;flex-direction:column;align-items:center}.hero-logo{width:min(330px,82vw);max-height:64px;object-position:center;margin:0 auto 8px}.hero-kicker{font-size:.58rem;margin-bottom:7px}.home-hero h1{font-size:clamp(2.1rem,10vw,3.15rem);line-height:1.04}.hero-lead{font-size:.84rem;line-height:1.7;margin:12px 6px 15px}.hero-pc-break{display:none}
  .hero-collage{position:relative;right:auto;top:auto;width:100%;height:255px;transform:none;margin:6px auto 16px;order:0}.hero-copy{position:relative}.home-hero .hero-collage{margin-top:15px}
  .hero-cover{border-width:2px;border-radius:11px}.hero-cover span{display:none}.hero-cover-1{width:29%;height:74%;left:35.5%;top:9%;transform:rotate(-1deg) scale(1.04)}.hero-cover-2{width:25%;height:64%;left:12%;top:3%;transform:rotate(-8deg)}.hero-cover-3{width:25%;height:64%;right:11%;top:2%;transform:rotate(8deg)}.hero-cover-4{width:23%;height:58%;left:9%;bottom:1%;transform:rotate(8deg)}.hero-cover-5{width:23%;height:58%;right:9%;bottom:2%;transform:rotate(-8deg)}
  .spark-1{right:78%;top:17%;font-size:20px}.spark-2{right:7%;top:25%;font-size:20px}.spark-3{right:83%;bottom:29%;font-size:15px}.spark-4{right:9%;bottom:33%;font-size:23px}.spark-5{left:49%;top:35%;font-size:13px}.spark-6{left:12%;bottom:9%;font-size:15px}
  .hero-search{max-width:520px;border-radius:14px}.hero-search-icon{display:none}.hero-search input{padding:10px 8px;font-size:.88rem}.hero-search button{padding:11px 13px;border-radius:10px;font-size:.82rem}.hero-actions{justify-content:center;margin-top:11px}.hero-actions a{font-size:.69rem;padding:6px 9px}.hero-scroll{display:none}
  .home-intro-note{font-size:.8rem;margin-bottom:22px}.modern-section-heading{align-items:flex-start}.modern-section-heading>span{display:none}.modern-section-heading h2{font-size:1.1rem!important}.home-panel{padding:16px;border-radius:15px}.map-section{padding:18px 10px 10px;border-radius:18px}.map-stage{padding:0;background:transparent}
}
@media(max-width:480px){
  .home-hero{margin-left:-1%;margin-right:-1%;padding:22px 12px 20px}.hero-logo{width:min(290px,84vw);max-height:56px}.home-hero h1{font-size:2.45rem}.hero-collage{height:218px;margin-top:11px;margin-bottom:11px}.hero-lead{font-size:.78rem}.hero-search{padding:5px}.hero-search input{font-size:.78rem;padding-left:7px}.hero-search button{font-size:.75rem;padding:10px 10px}.hero-actions a{font-size:.64rem}.home-intro-note{padding:12px 13px}.featured-works-grid{gap:6px}.featured-work-card{border-radius:9px}.featured-card-arrow{width:20px;height:20px;font-size:.7rem;right:4px;bottom:4px}.notice-section .notice-box{height:130px}.work-search-section .kana-links a{font-size:.78rem}.region-section{padding:12px}.region-table{font-size:.8rem}
}
@media(prefers-reduced-motion:reduce){.spark{animation:none}.hero-cover,.featured-work-card{transition:none}}


/* v24: compact bottom hero logo + seamless free-word search */
.hero-search{gap:0!important}
.hero-search input{margin:0!important}
.hero-search button{margin:0!important}
.modern-search-box{gap:0!important}
.modern-search-box input{margin:0!important;border-right:0!important}
.modern-search-box button{margin:0!important}
.hero-logo-bottom{position:absolute;z-index:6;right:28px;bottom:16px;width:145px;height:auto;max-height:32px;object-fit:contain;object-position:right center;opacity:.72;filter:drop-shadow(0 2px 7px rgba(0,0,0,.25));margin:0}
@media(max-width:760px){.hero-logo-bottom{right:14px;bottom:10px;width:105px;max-height:24px;opacity:.68}.hero-copy>.hero-logo{display:none}}
@media(max-width:420px){.hero-logo-bottom{right:10px;bottom:8px;width:90px;max-height:21px}}
\n\n/* v27: header/nav, hero actions and rounded detail UI */
.hero-actions .hero-action-accent{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.32)!important;color:#fff!important}

/* Detail page: match TOP rounded visual language */
.sacred-detail .detail-hero-grid{grid-template-areas:"cover info" "amazon amazon"}
.sacred-detail .anime-cover-box{grid-area:cover;border-radius:18px;border-color:#eee7f2;box-shadow:0 8px 24px rgba(47,30,73,.08);overflow:hidden}
.sacred-detail .detail-hero-table{grid-area:info;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #eee7f2;border-radius:18px;box-shadow:0 8px 24px rgba(47,30,73,.07);background:#fff}
.sacred-detail .detail-hero-table th,.sacred-detail .detail-hero-table td{border:0;border-bottom:1px solid #eee7f2}
.sacred-detail .detail-hero-table tr:last-child th,.sacred-detail .detail-hero-table tr:last-child td{border-bottom:0}
.sacred-detail .detail-hero-table th{background:linear-gradient(135deg,#7669d7,#a85db7);color:#fff}
.sacred-detail .amazon-associate-box{grid-area:amazon;border-radius:18px;border-color:#f0e6cf;box-shadow:0 8px 24px rgba(47,30,73,.07);margin:0 0 18px}
.sacred-detail .amazon-product-card,.sacred-detail .amazon-search-links a{border-radius:14px}
.sacred-detail .same-work-card{border-radius:16px;border-color:#eee7f2;box-shadow:0 5px 16px rgba(47,30,73,.05)}
.sacred-detail .detail-section{padding:20px;border:1px solid #eee7f2;border-radius:18px;background:#fff;box-shadow:0 7px 22px rgba(47,30,73,.055)}
.sacred-detail .detail-section h2{margin-top:0}
.sacred-detail .embed-wrap,.sacred-detail .embed-wrap iframe{border-radius:14px}

@media(max-width:520px){
  /* Mobile: cover + Amazon side by side, information table underneath */
  .sacred-detail .detail-hero-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);grid-template-areas:"cover amazon" "info info";gap:10px;align-items:start}
  .sacred-detail .detail-hero-grid .anime-cover-box{max-width:none;width:100%;padding:6px;justify-self:stretch;min-height:0}
  .sacred-detail .detail-hero-grid .anime-cover-box img{width:100%;height:auto;max-height:260px;object-fit:contain}
  .sacred-detail .amazon-associate-box{margin:0;padding:10px;min-width:0;border-radius:14px}
  .sacred-detail .amazon-associate-head{display:block;margin-bottom:7px}
  .sacred-detail .amazon-associate-head strong{display:block;font-size:.76rem;line-height:1.35}
  .sacred-detail .amazon-associate-head span{display:none}
  .sacred-detail .amazon-product-scroll{gap:7px;padding-bottom:5px}
  .sacred-detail .amazon-product-card{flex:0 0 112px;padding:7px;gap:4px;border-radius:10px}
  .sacred-detail .amazon-product-image{height:92px}
  .sacred-detail .amazon-product-image img{max-height:88px}
  .sacred-detail .amazon-product-card strong{font-size:.68rem;-webkit-line-clamp:2}
  .sacred-detail .amazon-product-price,.sacred-detail .amazon-product-card small{font-size:.65rem}
  .sacred-detail .amazon-associate-note{font-size:.55rem;line-height:1.35;margin-top:6px}
  .sacred-detail .amazon-search-links{display:grid;grid-template-columns:1fr;gap:5px;padding:0}
  .sacred-detail .amazon-search-links a{padding:7px 5px;font-size:.65rem;text-align:center}
  .sacred-detail .detail-hero-table{margin-top:2px!important;border-radius:14px}
  .sacred-detail .detail-section{padding:15px;border-radius:15px}
}


/* v28: consistent hero actions, compact related cards on mobile, modern result lists */
.hero-actions a,
.hero-actions .hero-action-accent{
  background:rgba(255,255,255,.09)!important;
  border-color:rgba(255,255,255,.32)!important;
  color:#fff!important;
}
.hero-actions a:hover,
.hero-actions .hero-action-accent:hover{
  background:rgba(255,255,255,.17)!important;
  border-color:rgba(255,255,255,.46)!important;
  color:#fff!important;
}

.sacred-list-panel{
  overflow:hidden;
  border:1px solid #ece7f0;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 30px rgba(34,26,57,.06);
}
.sacred-list-head{
  display:grid;
  grid-template-columns:minmax(180px,1.05fr) minmax(110px,.55fr) minmax(280px,1.8fr);
  gap:18px;
  padding:12px 20px;
  background:linear-gradient(135deg,#5f55ba 0%,#9d55ac 58%,#d85d92 100%);
  color:#fff;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.04em;
}
.sacred-list-body{padding:8px}
.sacred-list-row{
  position:relative;
  display:grid;
  grid-template-columns:minmax(180px,1.05fr) minmax(110px,.55fr) minmax(280px,1.8fr);
  gap:18px;
  align-items:center;
  min-height:78px;
  margin:0;
  padding:15px 48px 15px 14px;
  border-radius:14px;
  color:#2d2937;
  text-decoration:none;
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.sacred-list-row + .sacred-list-row{border-top:1px solid #f0edf3}
.sacred-list-row:hover{
  z-index:1;
  background:linear-gradient(90deg,#fbf8ff,#fff7fb);
  box-shadow:0 6px 18px rgba(71,47,103,.07);
  transform:translateY(-1px);
  text-decoration:none;
}
.sacred-list-title,.sacred-list-genre,.sacred-list-place{min-width:0}
.sacred-list-title strong,.sacred-list-place strong{display:block;color:#383044;line-height:1.45}
.sacred-list-title strong{font-size:1rem;color:#6a3f8e}
.sacred-list-title small,.sacred-list-genre small,.sacred-list-place small{display:block;margin-top:3px;color:#8a8490;font-size:.75rem;line-height:1.35}
.sacred-list-genre span{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#f0ebff;color:#6651a8;font-size:.78rem;font-weight:800}
.sacred-list-place p{margin:5px 0 0;color:#686270;font-size:.82rem;line-height:1.5}
.sacred-list-arrow{position:absolute;right:17px;top:50%;display:grid;place-items:center;width:28px;height:28px;transform:translateY(-50%);border-radius:50%;background:#f5effa;color:#8b4a99;font-weight:900}
.sacred-list-empty{padding:34px 20px;text-align:center;color:#777}
.search-result-list{margin-top:15px}

@media(max-width:700px){
  .same-work-card{flex-basis:49vw;min-width:155px;max-width:190px;min-height:96px;padding:10px}
  .same-work-card strong{font-size:.9rem;line-height:1.35}
  .same-work-card small{font-size:.72rem;line-height:1.35}
  .same-work-pref{font-size:.68rem;padding:2px 6px}

  .sacred-list-panel{border-radius:16px;border:0;background:transparent;box-shadow:none;overflow:visible}
  .sacred-list-head{display:none}
  .sacred-list-body{display:grid;gap:10px;padding:0}
  .sacred-list-row{
    display:block;
    min-height:0;
    padding:14px 42px 13px 14px;
    border:1px solid #ece7f0!important;
    border-radius:16px;
    background:#fff;
    box-shadow:0 5px 16px rgba(47,30,73,.055);
  }
  .sacred-list-row:hover{transform:none}
  .sacred-list-title{padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid #f0edf3}
  .sacred-list-title strong{font-size:1rem}
  .sacred-list-genre{margin-bottom:8px}
  .sacred-list-place strong{font-size:.92rem}
  .sacred-list-place p{font-size:.79rem;margin-top:5px}
  .sacred-list-arrow{right:12px;width:26px;height:26px}
}

/* v29: mobile search/result lists stay horizontal; compact each card */
@media(max-width:700px){
  .sacred-list-panel{
    overflow:visible;
  }
  .sacred-list-body{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding:2px 2px 12px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  .sacred-list-row{
    flex:0 0 62vw;
    width:62vw;
    min-width:210px;
    max-width:260px;
    scroll-snap-align:start;
    padding:12px 36px 12px 12px;
  }
  .sacred-list-title{padding-bottom:7px;margin-bottom:7px}
  .sacred-list-title strong{font-size:.92rem}
  .sacred-list-title small,
  .sacred-list-genre small,
  .sacred-list-place small{font-size:.68rem}
  .sacred-list-genre{margin-bottom:7px}
  .sacred-list-genre span{padding:3px 7px;font-size:.7rem}
  .sacred-list-place strong{font-size:.84rem;line-height:1.35}
  .sacred-list-place p{font-size:.74rem;line-height:1.4;margin-top:4px}
  .sacred-list-arrow{right:9px;width:24px;height:24px;font-size:.8rem}
}


/* v29: list page title + TOP-style pagination */
.list-page-head{margin:24px 0 10px}
.list-page-head .section-eyebrow{margin-bottom:3px}
.list-page-head h1{
  margin:0!important;
  font-size:1.25rem!important;
  line-height:1.4!important;
  letter-spacing:0!important;
  color:#28233a!important;
  font-weight:800!important;
}
.list-meta{
  margin:9px 0 6px;
  color:#777080;
  font-size:.8rem;
  text-align:right;
}
.list-meta-bottom{margin-top:12px}
.pagination.pagination-top{margin:8px 0 16px}
.pagination.pagination-bottom{margin:10px 0 24px}
.pagination nav > div:last-child > div:last-child{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}
.pagination nav span[aria-current="page"] span,
.pagination nav a{
  min-width:38px;
  height:38px;
  padding:0 11px;
  border:1px solid #e7deef!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#714c93!important;
  font-size:.84rem;
  font-weight:800;
  box-shadow:0 4px 12px rgba(61,38,91,.05);
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
.pagination nav a:hover{
  background:linear-gradient(135deg,#fbf8ff,#fff5fb)!important;
  box-shadow:0 6px 15px rgba(79,46,108,.10);
  transform:translateY(-1px);
}
.pagination nav span[aria-current="page"] span{
  border-color:transparent!important;
  background:linear-gradient(135deg,#6558bd 0%,#a055ad 58%,#db6295 100%)!important;
  color:#fff!important;
  box-shadow:0 7px 17px rgba(126,69,153,.20);
}
@media(max-width:700px){
  .list-page-head{margin:18px 0 8px}
  .list-page-head h1{font-size:1.1rem!important}
  .list-meta{font-size:.75rem;margin:7px 2px 5px}
  .pagination.pagination-top{margin:6px 0 12px}
  .pagination.pagination-bottom{margin:8px 0 20px}
  .pagination nav span[aria-current="page"] span,
  .pagination nav a{min-width:34px;height:34px;padding:0 9px;border-radius:10px!important;font-size:.78rem}
}

/* v30: mobile list keeps the same 3-column table layout as desktop (no horizontal scroll) */
@media(max-width:700px){
  .sacred-list-panel{
    overflow:hidden;
    border:1px solid #ece7f0;
    border-radius:14px;
    background:#fff;
    box-shadow:0 7px 20px rgba(34,26,57,.055);
  }
  .sacred-list-head{
    display:grid;
    grid-template-columns:32% 20% 48%;
    gap:0;
    padding:9px 8px;
    font-size:.66rem;
    text-align:left;
  }
  .sacred-list-head > span{padding:0 5px;min-width:0}
  .sacred-list-body{
    display:block;
    overflow:visible;
    padding:4px;
    scroll-snap-type:none;
  }
  .sacred-list-row{
    width:auto;
    max-width:none;
    min-width:0;
    min-height:64px;
    display:grid;
    grid-template-columns:32% 20% 48%;
    gap:0;
    align-items:center;
    padding:9px 4px;
    border:0!important;
    border-radius:9px;
    box-shadow:none;
    background:#fff;
  }
  .sacred-list-row + .sacred-list-row{border-top:1px solid #f0edf3!important}
  .sacred-list-title,.sacred-list-genre,.sacred-list-place{
    min-width:0;
    margin:0;
    padding:0 5px;
    border:0;
    overflow-wrap:anywhere;
  }
  .sacred-list-title strong{font-size:.78rem;line-height:1.35}
  .sacred-list-title small,.sacred-list-genre small,.sacred-list-place small{font-size:.6rem;line-height:1.25;margin-top:2px}
  .sacred-list-genre span{padding:3px 5px;font-size:.62rem;line-height:1.2;white-space:normal;text-align:center}
  .sacred-list-place strong{font-size:.72rem;line-height:1.3}
  .sacred-list-place p{font-size:.64rem;line-height:1.35;margin:3px 0 0}
  .sacred-list-arrow{display:none}
}


/* v32: calmer twinkle + correctly trailing shooting stars */
.home-hero .hero-sparkles{overflow:hidden}
.home-hero .spark{
  color:rgba(255,255,255,.92);
  text-shadow:0 0 3px rgba(255,255,255,.72),0 0 9px rgba(176,218,255,.48),0 0 17px rgba(234,174,255,.28);
  animation:heroTwinkleV32 5.6s ease-in-out infinite;
  filter:drop-shadow(0 0 3px rgba(255,255,255,.42));
}
.home-hero .spark-2,.home-hero .spark-5{animation-duration:6.8s}
.home-hero .spark-3,.home-hero .spark-6{animation-duration:7.6s}
.home-hero .spark-2{animation-delay:1.3s}.home-hero .spark-3{animation-delay:2.7s}.home-hero .spark-4{animation-delay:.8s}.home-hero .spark-5{animation-delay:3.4s}.home-hero .spark-6{animation-delay:2s}
@keyframes heroTwinkleV32{
  0%,100%{opacity:.28;transform:scale(.82) rotate(0deg)}
  38%{opacity:.42;transform:scale(.92) rotate(5deg)}
  55%{opacity:.68;transform:scale(1.06) rotate(9deg)}
  72%{opacity:.4;transform:scale(.9) rotate(12deg)}
}
.home-hero .shooting-star{
  position:absolute;
  width:5px;height:5px;border-radius:50%;
  background:rgba(255,255,255,.94);
  opacity:0;
  box-shadow:0 0 5px 1px rgba(255,255,255,.75),0 0 11px 3px rgba(145,204,255,.38);
  transform:rotate(-34deg);
  animation:heroShootingStarV32 10.8s linear infinite;
}
.home-hero .shooting-star::after{
  content:"";position:absolute;left:4px;top:50%;width:105px;height:1.5px;
  transform:translateY(-50%);
  transform-origin:left center;
  background:linear-gradient(90deg,rgba(255,255,255,.78),rgba(172,218,255,.25),transparent);
  filter:drop-shadow(0 0 2px rgba(180,225,255,.42));
}
.home-hero .shooting-star-1{top:13%;left:72%;animation-delay:1.2s}
.home-hero .shooting-star-2{top:38%;left:93%;animation-delay:5.8s;animation-duration:13.2s}
.home-hero .shooting-star-3{top:7%;left:48%;animation-delay:9.1s;animation-duration:15.4s}
@keyframes heroShootingStarV32{
  0%,79%{opacity:0;translate:0 0}
  80%{opacity:0;translate:0 0}
  81%{opacity:.82}
  88%{opacity:.68}
  94%,100%{opacity:0;translate:-420px 285px}
}
@media(max-width:760px){
  .home-hero .shooting-star::after{width:68px}
  .home-hero .shooting-star-1{top:9%;left:94%}
  .home-hero .shooting-star-2{top:31%;left:102%}
  .home-hero .shooting-star-3{top:3%;left:70%}
  @keyframes heroShootingStarV32{
    0%,79%{opacity:0;translate:0 0}
    80%{opacity:0;translate:0 0}
    81%{opacity:.78}
    88%{opacity:.62}
    94%,100%{opacity:0;translate:-260px 175px}
  }
}
@media(prefers-reduced-motion:reduce){.home-hero .shooting-star{display:none}.home-hero .spark{animation:none}}


/* v33: more stars and shooting stars; keep v32 calm brightness/speed */
.home-hero .spark-7{left:8%;top:20%;font-size:13px;animation-delay:4.1s;animation-duration:7.1s}
.home-hero .spark-8{left:24%;top:9%;font-size:10px;animation-delay:1.9s;animation-duration:8.2s}
.home-hero .spark-9{left:35%;bottom:18%;font-size:12px;animation-delay:5.2s;animation-duration:6.9s}
.home-hero .spark-10{right:31%;top:25%;font-size:11px;animation-delay:3.1s;animation-duration:8.6s}
.home-hero .spark-11{right:23%;bottom:19%;font-size:14px;animation-delay:6.1s;animation-duration:7.8s}
.home-hero .spark-12{right:4%;bottom:25%;font-size:10px;animation-delay:4.8s;animation-duration:9.1s}
.home-hero .shooting-star-4{top:23%;left:84%;animation-delay:3.9s;animation-duration:14.6s}
.home-hero .shooting-star-5{top:5%;left:61%;animation-delay:7.4s;animation-duration:12.7s}
@media(max-width:700px){
  .home-hero .spark-7{left:5%;top:28%;font-size:10px}.home-hero .spark-8{left:30%;top:6%;font-size:9px}
  .home-hero .spark-9{left:25%;bottom:24%;font-size:10px}.home-hero .spark-10{right:34%;top:18%;font-size:9px}
  .home-hero .spark-11{right:20%;bottom:19%;font-size:11px}.home-hero .spark-12{right:4%;bottom:12%;font-size:9px}
  .home-hero .shooting-star-4{top:20%;left:106%}.home-hero .shooting-star-5{top:2%;left:84%}
}

/* v34: shooting-star frequency x2 (appearance about twice as often) */
.home-hero .shooting-star{animation-duration:5.4s}
.home-hero .shooting-star-1{animation-delay:.6s}
.home-hero .shooting-star-2{animation-delay:2.9s;animation-duration:6.6s}
.home-hero .shooting-star-3{animation-delay:4.55s;animation-duration:7.7s}
.home-hero .shooting-star-4{animation-delay:1.95s;animation-duration:7.3s}
.home-hero .shooting-star-5{animation-delay:3.7s;animation-duration:6.35s}

/* v35: compact desktop header */
@media(min-width:761px){
  .site-header .header-inner{
    height:88px;
    min-height:88px;
    padding-top:0;
    padding-bottom:0;
  }
  .site-logo-image{
    height:72px;
  }
}


/* v36: AdSense unit at the bottom of TOP */
.home-bottom-ad{
  margin:28px auto 18px;
  padding:16px 12px 10px;
  min-height:120px;
  border-top:1px solid rgba(105,82,132,.10);
  text-align:center;
  overflow:hidden;
}
.home-bottom-ad-label{
  margin-bottom:8px;
  color:#aaa3b1;
  font-size:.62rem;
  letter-spacing:.14em;
}
@media(max-width:700px){
  .home-bottom-ad{margin:20px auto 10px;padding:12px 4px 6px;min-height:100px}
}


/* v38: bottom AdSense on every page */
.site-bottom-ad{margin:36px 0 18px;padding:0 12px;text-align:center;overflow:hidden}
.site-bottom-ad .container{max-width:1100px;margin:0 auto}
.site-bottom-ad .home-bottom-ad-label{font-size:10px;letter-spacing:.12em;color:#999;margin-bottom:8px}
@media(max-width:760px){.site-bottom-ad{margin:24px 0 12px;padding:0 8px}}
