/*
Theme Name: Oishiku Original
Theme URI: https://oishiku.net/
Author: artemis
Description: 美味しくどうぞ☆ のオリジナルテーマ（チェキ・トップページ版）
Version: 0.8.51
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: oishiku-original
*/
:root{--ink:#30271f;--cream:#f8f3e9;--gold:#c59b51}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.85}a{color:inherit}a:hover{opacity:.8}.site-header{background:#1b1c1a;color:white;padding:18px max(22px,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.site-title{font-size:clamp(1.3rem,3vw,2rem);font-weight:700;text-decoration:none}.site-header small{color:#d6c5a3}.site-shell{max-width:1100px;margin:auto;padding:42px 22px;display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:48px}.site-main{min-width:0}.post-card{border-bottom:1px solid #d6cabc;padding:0 0 32px;margin-bottom:32px}.post-card h2,.entry-title{line-height:1.4}.post-card h2 a{text-decoration:none}.post-meta{color:#806f5c;font-size:.85rem}.post-thumbnail img,.entry-content img{max-width:100%;height:auto}.sidebar-box{border-top:3px solid #b39a75;padding:18px 0;margin-bottom:24px}.sidebar-box h2{font-size:1rem;margin:0 0 12px}.site-footer{text-align:center;background:#1b1c1a;color:#e2d7c6;padding:24px}.page-links{display:flex;gap:16px}.entry-content{overflow-wrap:anywhere}.entry-content p{margin:0 0 1.35em}.entry-content figure{margin:1.5em 0}@media(max-width:760px){.site-shell{display:block;padding:28px 18px}.site-sidebar{margin-top:48px}.site-header{padding:14px 18px}}

/* v0.2.0 — homepage and brand */
.site-header{position:relative;justify-content:flex-start;min-height:124px}
.brand-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.site-title{font-family:"Yu Kyokasho","Hiragino Maru Gothic ProN","Yu Mincho",serif;letter-spacing:.045em}
.brand-tagline{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;color:#e2d5bb;font-size:.85rem;letter-spacing:.06em;display:flex;align-items:center;gap:10px;margin-top:-2px;margin-left:12px}
.brand-tagline:before,.brand-tagline:after{content:"";height:1px;width:22px;background:#eee5d6;display:block}
.menu-toggle{display:none;background:transparent;border:0;padding:10px;cursor:pointer}
.menu-toggle span{display:block;width:24px;height:2px;background:white;margin:5px 0}
.mobile-menu{display:none;position:absolute;right:18px;top:calc(100% - 1px);background:#262623;color:white;padding:20px;min-width:260px;z-index:20;box-shadow:0 12px 25px #0007}
.mobile-menu.is-open{display:block}.mobile-menu a{display:block;margin-bottom:8px;text-decoration:none}.mobile-menu ul{list-style:none;padding:0}.mobile-menu input{max-width:100%}
.tabletop{position:relative;min-height:80vh;overflow:hidden;background:radial-gradient(ellipse at 10% 20%,#3c3c35 0%,transparent 43%),radial-gradient(ellipse at 85% 70%,#2d332d 0%,transparent 42%),linear-gradient(135deg,#222623,#101412 70%,#1c1c18);color:#f7f2e8}
.tabletop-grain{position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:repeating-linear-gradient(12deg,transparent 0px,transparent 29px,#ffffff08 30px,transparent 32px),repeating-linear-gradient(95deg,transparent 0px,transparent 109px,#00000022 110px,transparent 112px)}
.tabletop-inner{position:relative;max-width:1180px;margin:0 auto;padding:62px 28px 90px}
.tabletop-heading{text-align:center;margin-bottom:52px}.tabletop-kicker{color:#c4ab7e;letter-spacing:.23em;font-size:.7rem}.tabletop-heading h1{font-family:"Yu Kyokasho","Yu Mincho",serif;font-weight:500;font-size:clamp(1.5rem,3vw,2.3rem);margin:8px 0}.tabletop-heading p{color:#d4c8b3;margin:0;font-size:.9rem}
.cheki-section{margin:0 0 72px}.cheki-section-title{font-family:"Yu Kyokasho","Yu Mincho",serif;font-size:1.4rem;font-weight:500;margin:0 0 30px;border-bottom:1px solid #ffffff35;padding-bottom:12px}.cheki-section-title span{color:#d6b579}
.cheki-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:30px;row-gap:40px;align-items:start;padding:8px 10px}
.cheki{display:block;min-width:0;padding:12px 12px 17px;background:#f6f3e9;color:#30291f;text-decoration:none;box-shadow:4px 8px 15px #0009;transform:rotate(var(--tilt, -2deg));transition:transform .2s ease,box-shadow .2s ease}
.cheki:nth-child(4n+2){--tilt:3deg}.cheki:nth-child(4n+3){--tilt:-3deg}.cheki:nth-child(4n+4){--tilt:2deg}
.cheki:hover{transform:rotate(0) translateY(-5px);box-shadow:6px 12px 22px #000b;opacity:1}
.cheki-photo{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1.12;overflow:hidden;background:#5d4a38}
.cheki-photo img{width:100%;height:100%;object-fit:cover;display:block}
.cheki-photo-fallback{font-size:clamp(2.5rem,7vw,5rem);filter:saturate(.7);text-shadow:0 5px 10px #0005}
.cheki-label{display:flex;flex-direction:column;gap:2px;text-align:center;padding-top:11px;font-family:"Segoe Print","Yu Kyokasho","Yu Gothic",sans-serif}
.cheki-label strong{font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cheki-label time,.cheki-label>span{font-size:.72rem;color:#7e7366}
.archive-action{text-align:center}.archive-action a{color:#f7ebd5;text-decoration:none;border:1px solid #c3aa78;padding:10px 24px;display:inline-block}
@media(max-width:850px){.cheki-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.site-header{min-height:105px}}
@media(max-width:760px){.site-header{min-height:92px;justify-content:space-between}.menu-toggle{display:block}.brand-tagline{font-size:.65rem;margin-left:2px;gap:6px}.brand-tagline:before,.brand-tagline:after{width:12px}.tabletop-inner{padding:42px 18px 70px}.cheki-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;padding:4px 2px}.cheki{padding:8px 8px 13px}.cheki-label strong{font-size:.76rem}.cheki-label time{font-size:.66rem}.tabletop-heading{margin-bottom:42px}}
@media(max-width:360px){.cheki-grid{gap:18px 12px}.brand-tagline{font-size:.58rem}.site-title{font-size:1.2rem}}

/* v0.3.0: chronological article archive and stable cheki hover */
.cheki-grid{column-gap:36px;row-gap:44px}
.cheki{position:relative;isolation:isolate;transform-origin:center center}
.cheki:hover,.cheki:focus-visible{z-index:3;transform:rotate(var(--tilt,-2deg)) translateY(-6px) scale(1.025)}
.cheki:focus-visible{outline:3px solid #e2c28b;outline-offset:5px}
.article-list-heading{margin-bottom:30px;border-bottom:1px solid #d7c9b7;padding-bottom:16px}
.article-list-heading h1{font-size:1.5rem;margin:0;color:#4a3526}
.article-list-heading h1 span{color:#b28a4b}
.article-list-heading p{margin:4px 0 0;color:#786856;font-size:.92rem}
.article-list-item{display:grid;grid-template-columns:180px minmax(0,1fr);gap:22px;padding:22px 0;border-bottom:1px solid #ded2c1}
.article-list-thumb{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:#d4c6b0;overflow:hidden;text-decoration:none}
.article-list-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.article-list-no-image{font-size:2.8rem}
.article-list-body time{font-size:.8rem;color:#88735c}
.article-list-body h2{font-size:1.25rem;line-height:1.45;margin:6px 0 8px}
.article-list-body h2 a{text-decoration:none}
.article-list-body p{font-size:.9rem;margin:0 0 8px;overflow-wrap:anywhere}
.article-read-more{font-size:.85rem;color:#84613a;text-decoration:none}
.article-pagination ul{list-style:none;display:flex;gap:8px;flex-wrap:wrap;padding:20px 0}
.article-pagination a,.article-pagination span{display:inline-block;border:1px solid #cbbca8;padding:4px 12px;text-decoration:none}
.article-pagination .current{background:#4d3a2b;color:white}
.no-articles{padding:40px 0}
@media(max-width:760px){.cheki-grid{column-gap:20px;row-gap:28px}.article-list-item{grid-template-columns:120px minmax(0,1fr);gap:14px}.article-list-body h2{font-size:1.02rem}.article-list-body p{font-size:.83rem}}
@media(prefers-reduced-motion:reduce){.cheki{transition:none}}

/* v0.3.1 — keep the custom /articles/ route in the standard two-column shell */
body{min-height:100vh;display:flex;flex-direction:column}
.site-header,.site-footer{flex-shrink:0}
.site-shell{width:100%;flex:1;align-items:start}
.site-footer{margin-top:auto}
.site-sidebar{min-width:0}
.site-sidebar .search-form{display:flex;gap:6px}
.site-sidebar .search-field{min-width:0;width:100%;padding:8px;border:1px solid #cdbfae;background:#fffdf8}
.site-sidebar .search-submit{padding:8px 12px;border:1px solid #b89a6a;background:#f1e4ce;cursor:pointer}
.site-sidebar ul{padding-left:1.2em;margin:0}
.site-sidebar li{margin-bottom:7px}
@media(max-width:760px){.site-shell{display:block}.site-sidebar{margin-top:42px}}

/* v0.4.0 — understated tabletop decoration and white sitting-cat brand mark */
.brand-wrap{position:relative;padding-right:98px}
.brand-cat{position:absolute;right:6px;bottom:2px;width:53px;height:63px;color:#f7f5ef;transform:scaleX(-1);opacity:.97}
.brand-beer{position:absolute;right:64px;top:0;font-size:1.4rem;filter:saturate(.8)}
.tabletop-decor{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.tabletop-leaf{position:absolute;width:155px;height:200px;opacity:.46;filter:drop-shadow(7px 12px 8px #0008)}
.leaf-one{top:15px;left:-28px;transform:rotate(-18deg)}
.leaf-two{top:370px;right:-34px;transform:rotate(154deg);opacity:.35}
.tabletop-beer{position:absolute;top:26px;right:5%;width:100px;transform:rotate(14deg);opacity:.75;filter:drop-shadow(8px 13px 7px #0008)}
.tabletop-inner{z-index:1}
.tabletop-heading{margin-bottom:43px}
.tabletop-heading h1{font-size:clamp(1.35rem,2.5vw,1.85rem)}
.tabletop-kicker{font-size:.62rem}
@media(max-width:760px){.brand-wrap{padding-right:46px}.brand-cat{right:0;width:34px;height:43px}.brand-beer{right:36px;top:0;font-size:.85rem}.tabletop-leaf{width:85px;height:115px}.leaf-one{left:-30px}.leaf-two{right:-40px;top:310px}.tabletop-beer{width:60px;top:16px;right:2%;opacity:.5}.tabletop-heading{margin-bottom:36px}}

/* v0.4.1: separate photoreal tabletop props from interactive cheki cards */
.tabletop{background:#191a18 url("assets/tabletop-texture.jpg") repeat;background-size:512px 512px}
.tabletop::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 32%,transparent 5%,#0006 95%);pointer-events:none}
.tabletop-decor{z-index:0}.photo-decor{position:absolute;display:block;background-repeat:no-repeat;background-size:contain;pointer-events:none}
.photo-leaves{top:0;left:0;width:min(32vw,360px);aspect-ratio:360/224;background-image:url("assets/photo-leaves.png")}
.photo-beer{top:0;right:0;width:min(23vw,256px);aspect-ratio:256/288;background-image:url("assets/photo-beer.png")}
.photo-notebook{bottom:0;left:0;width:min(28vw,370px);aspect-ratio:370/284;background-image:url("assets/photo-notebook.png")}
.brand-wrap{padding-right:126px;min-height:80px;justify-content:center}.brand-mascot{position:absolute;right:0;top:50%;transform:translateY(-50%);width:120px;height:auto;object-fit:contain}
.tabletop-inner{z-index:1}.cheki{z-index:1}.cheki:hover,.cheki:focus-visible{z-index:5}
@media(max-width:760px){.brand-wrap{padding-right:66px;min-height:56px}.brand-mascot{width:65px}.photo-leaves{width:38vw;opacity:.72}.photo-beer{width:27vw;opacity:.8}.photo-notebook{width:34vw;opacity:.55}.tabletop-heading{position:relative;z-index:2;padding:25px 0 0}}

/* v0.4.2: a single full-width photographic tabletop scene, behind live cards */
.tabletop{background:#151514 url('assets/tabletop-full.jpg') center top / 100% auto repeat-y}
.tabletop::before{background:linear-gradient(90deg,rgba(0,0,0,.09),transparent 25%,transparent 75%,rgba(0,0,0,.08))}
.tabletop-decor{display:none}
.tabletop-inner{position:relative;z-index:1}
@media(max-width:760px){.tabletop{background-size:auto 820px;background-position:center top}.tabletop::before{background:rgba(0,0,0,.18)}}

/* v0.4.3: one continuous photographic surface beneath homepage branding and cards */
body.oishiku-landing{background:#10100f url('assets/tabletop-scene.jpg') center top / cover fixed no-repeat;color:#fff}
body.oishiku-landing .site-header{background:transparent;max-width:none;min-height:270px;padding:38px max(24px,calc((100vw - 900px)/2)) 22px;align-items:flex-start;position:relative;z-index:2}
body.oishiku-landing .brand-wrap{min-height:160px;padding-right:180px;justify-content:center;position:relative;flex-shrink:0}
body.oishiku-landing .site-title{font-family:'Yu Kyokasho','Hiragino Maru Gothic ProN','Yu Mincho',serif;font-size:clamp(2.4rem,4.8vw,4.6rem);font-weight:400;line-height:1.32;white-space:nowrap;letter-spacing:.07em;text-shadow:0 3px 9px #0008}
body.oishiku-landing .brand-tagline{font-family:Arial,sans-serif;font-size:clamp(.72rem,1.2vw,1.03rem);font-weight:500;letter-spacing:.29em;color:#f4f0e8;margin:1px 0 0 24px;gap:16px;white-space:nowrap}
body.oishiku-landing .brand-tagline:before,body.oishiku-landing .brand-tagline:after{width:30px;background:#f2eee6}
body.oishiku-landing .brand-mascot{width:170px;right:0;top:50%;transform:translateY(-48%);height:auto}
body.oishiku-landing .tabletop{background:transparent!important;min-height:70vh;overflow:hidden}
body.oishiku-landing .tabletop:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,#0001 70%,#0004 100%);pointer-events:none}
body.oishiku-landing .tabletop-inner{padding-top:10px}
body.oishiku-landing .tabletop-heading{margin-bottom:38px}
body.oishiku-landing .site-footer{background:rgba(15,15,14,.75)}
@media(max-width:900px){body.oishiku-landing .site-header{min-height:220px;padding:28px 24px 20px}body.oishiku-landing .site-title{font-size:clamp(2rem,5vw,3.4rem)}body.oishiku-landing .brand-wrap{min-height:120px;padding-right:115px}body.oishiku-landing .brand-mascot{width:110px}}
@media(max-width:760px){body.oishiku-landing{background-attachment:scroll;background-size:auto 1000px;background-position:center top}body.oishiku-landing .site-header{min-height:135px;padding:18px 18px 10px;align-items:center}body.oishiku-landing .brand-wrap{padding-right:72px;min-height:76px}body.oishiku-landing .site-title{font-size:clamp(1.35rem,5.1vw,2.1rem);white-space:nowrap}body.oishiku-landing .brand-tagline{font-size:.58rem;letter-spacing:.13em;margin-left:2px;gap:6px}body.oishiku-landing .brand-tagline:before,body.oishiku-landing .brand-tagline:after{width:11px}body.oishiku-landing .brand-mascot{width:67px}body.oishiku-landing .menu-toggle{z-index:4;margin-left:auto}body.oishiku-landing .tabletop-inner{padding-top:20px}body.oishiku-landing .tabletop{background:rgba(15,15,14,.32)!important}body.oishiku-landing .tabletop-heading{padding-top:0}}

/* v0.4.4: explicitly restore the cream reading layout on every non-landing page */
body:not(.oishiku-landing){
  background:#f8f3e9;
  color:#30271f;
}
body:not(.oishiku-landing) .site-header{
  background:#1b1c1a;
  color:#fff;
}
body:not(.oishiku-landing) .site-shell{
  background:#f8f3e9;
  color:#30271f;
}


/* v0.4.5 — logo typography: balanced width without stretched English word spaces.
   The Japanese title determines the width; only the decorative rules expand. */
.brand-wrap{
  display:inline-flex;
  flex-direction:column;
  align-items:stretch;
  width:max-content;
  max-width:100%;
}
.site-title{
  display:block;
  width:max-content;
  max-width:100%;
  font-family:"Yu Kyokasho","Hiragino Maru Gothic ProN","Yu Mincho",serif;
  font-weight:400;
  font-size:clamp(1.35rem,2.2vw,1.82rem);
  letter-spacing:.025em;
  line-height:1.4;
}
.brand-tagline{
  width:100%;
  max-width:100%;
  margin:3px 0 0;
  display:flex;
  align-items:center;
  gap:8px;
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-size:clamp(.67rem,.83vw,.82rem);
  letter-spacing:.025em;
  white-space:nowrap;
}
.brand-tagline span{flex:0 0 auto;white-space:nowrap;word-spacing:normal}
.brand-tagline:before,.brand-tagline:after{
  content:"";display:block;flex:1 1 0;min-width:0;width:auto;height:1px;
}
body.oishiku-landing .site-title{
  font-size:clamp(2.2rem,3.7vw,3.55rem);
  letter-spacing:.035em;
}
body.oishiku-landing .brand-tagline{
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-size:clamp(.83rem,1.1vw,1rem);
  letter-spacing:.06em;
  margin:4px 0 0;
  gap:12px;
}
body.oishiku-landing .brand-tagline:before,
body.oishiku-landing .brand-tagline:after{width:auto;flex:1 1 0}
@media(max-width:760px){
  .site-title{font-size:clamp(1.25rem,4.2vw,1.7rem)}
  .brand-tagline{font-size:clamp(.58rem,1.8vw,.73rem);gap:5px;margin-top:3px;letter-spacing:0}
  .brand-wrap{max-width:calc(100% - 48px)}
  body.oishiku-landing .site-title{font-size:clamp(1.25rem,4.4vw,1.85rem)}
  body.oishiku-landing .brand-tagline{font-size:clamp(.57rem,1.8vw,.72rem);letter-spacing:0;gap:5px}
}

/* v0.4.6: bring the subtitle closer without stretching words or changing the mascot */
.brand-wrap .site-title{line-height:1.18}
.brand-wrap .brand-tagline{margin-top:-4px}
body.oishiku-landing .brand-wrap .site-title{line-height:1.16}
body.oishiku-landing .brand-wrap .brand-tagline{margin-top:-5px}
@media(max-width:760px){
 .brand-wrap .site-title{line-height:1.2}
 .brand-wrap .brand-tagline{margin-top:-2px}
 body.oishiku-landing .brand-wrap .brand-tagline{margin-top:-3px}
}

/* v0.4.7: center the complete logo group on desktop; retain mobile menu layout. */
@media (min-width: 761px) {
  .site-header,
  body.oishiku-landing .site-header { justify-content: center; }
}

/* v0.5.0: article design only; homepage/archive unaffected */
body.single-post .entry-title{font-size:24px;color:#483526;line-height:1.5;margin:.4em 0 1.2em}
body.single-post .entry-content{font-size:1rem;line-height:2.05;color:#352c24}
body.single-post .entry-content h2{font-size:1.35rem;color:#5d4531;margin:2em 0 .8em;border-bottom:1px solid #d7c6af;padding-bottom:.35em}
body.single-post .entry-content img{max-width:100%;height:auto;border-radius:3px}
body.single-post .entry-content figcaption{font-size:.8rem;color:#857767;text-align:center}
body.single-post .entry-content iframe{max-width:100%}
.oishiku-info-card,.oishiku-rating-card{background:#fffaf2;border:1px solid #d7c5ac;border-radius:5px;overflow:hidden;margin:2em 0}
.oishiku-info-card__heading,.oishiku-rating-card__heading{background:#795d43;color:white;padding:9px 15px;font-weight:700}
.oishiku-info-card__body,.oishiku-rating-card__body{padding:15px 18px}
.oishiku-info-card__body dl{margin:0;display:grid;grid-template-columns:6em minmax(0,1fr);gap:8px 12px;font-size:.91rem}
.oishiku-info-card__body dt{font-weight:700;color:#775d42}
.oishiku-info-card__body dd{margin:0;overflow-wrap:anywhere}
.oishiku-info-card__note{font-size:.76rem;line-height:1.7;color:#806f5b}
.oishiku-rating-card{max-width:350px}
.oishiku-rating-card__stars{font-size:1.4rem;color:#d0a046;letter-spacing:1px}
.oishiku-rating-card__number{font-size:1.65rem;font-weight:700;color:#614b35}
.oishiku-article-back{margin:2.5em 0 0;padding-top:16px;border-top:1px solid #ded2c3}
.oishiku-article-back a{color:#7a5935;text-decoration:none;font-size:.92rem}
@media(max-width:760px){body.single-post .entry-title{font-size:24px}body.single-post .entry-content{font-size:.97rem}.oishiku-info-card__body dl{grid-template-columns:5.5em minmax(0,1fr)}.oishiku-rating-card{max-width:100%}}

/* v0.5.1: previously agreed pale beige headings, brighter stars,
   rating row centered and kept on a single line. Card widths unchanged. */
body.single-post .oishiku-info-card__heading,
body.single-post .oishiku-rating-card__heading{
  background:#efe3d1;
  color:#735b3d;
}
body.single-post .oishiku-rating-card__body{
  text-align:center;
  white-space:nowrap;
}
body.single-post .oishiku-rating-card__stars{
  color:#ffc000;
}
@media(max-width:360px){
  body.single-post .oishiku-rating-card__body{padding-left:8px;padding-right:8px}
  body.single-post .oishiku-rating-card__stars{font-size:1.15rem}
  body.single-post .oishiku-rating-card__number{font-size:1.35rem}
}

/* v0.5.2: Seto Font on the Japanese homepage site title only.
   All other layout and typography rules remain as in v0.5.1.
   Seto Font v6.20 is licensed under SIL Open Font License 1.1. */
@font-face {
  font-family: "Oishiku Seto";
  src: url("assets/fonts/setofont.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
body.home.oishiku-landing .brand-wrap .site-title {
  font-family: "Oishiku Seto", "Yu Kyokasho", "Yu Mincho", serif;
}

/* v0.5.3: reduce only the vertical whitespace around the homepage catchphrase.
   Preserve the logo, mascot, typography and article cards. */
@media (min-width: 901px) {
  body.oishiku-landing .site-header { min-height: 220px; }
}
@media (min-width: 761px) and (max-width: 900px) {
  body.oishiku-landing .site-header { min-height: 185px; }
}
@media (min-width: 761px) {
  body.oishiku-landing .tabletop-inner { padding-top: 5px; }
}
body.oishiku-landing .tabletop-heading { margin-bottom: 19px; }
@media (max-width: 760px) {
  body.oishiku-landing .tabletop-inner { padding-top: 10px; }
}

/* v0.5.4: Seto font for homepage catchphrase only. */
body.home.oishiku-landing .tabletop-heading h1 { font-family: "Oishiku Seto", "Yu Kyokasho", "Yu Mincho", serif; }

/* Editor guides must never appear in published posts, even if rendered outside Gutenberg. */
.entry-content .oishiku-editor-guide{display:none!important}

/* v0.6.8: unified cropped list images; original files are untouched. */
.post-thumbnail{display:block;overflow:hidden;text-decoration:none}
.post-thumbnail .oishiku-list-photo{display:block;width:100%;height:var(--oishiku-list-height,260px);overflow:hidden;background:#e8dfd0}
.oishiku-list-photo img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transform-origin:center center}
.article-list-thumb .oishiku-list-photo{display:block;width:100%;height:100%;overflow:hidden}
.article-list-thumb .oishiku-list-photo img{width:100%;height:100%;object-fit:cover;max-width:none}

/* v0.7.1 — author profile illustration */
.author-profile-image{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;border-radius:6px;margin:0 0 14px;}
.author-profile p{margin-top:0;}

/* v0.7.5 — previous blog link with house icon */
.previous-blog-link{display:inline-flex;align-items:center;gap:.25em;color:inherit;text-decoration:underline;text-underline-offset:3px}.previous-blog-house{width:1em;height:1em;flex:none;color:#4b2b1b;vertical-align:middle}

/* v0.7.6 — article-end cheki recommendations */
.oishiku-related{margin:46px 0 34px;padding:24px 20px;background:#fbf8f1;border:1px solid #e7d9c6;border-radius:12px}
.oishiku-related-section+.oishiku-related-section{margin-top:34px}
.oishiku-related-section h2{background:#efe2cd;color:#68462c;border:0;border-radius:4px;margin:0 0 10px;padding:9px 13px;font-size:1.08rem;line-height:1.5}
.oishiku-related-intro{color:#786650;font-size:.82rem;margin:0 0 16px}
.oishiku-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start;padding:10px 6px}
.oishiku-related-grid-pair{grid-template-columns:repeat(2,minmax(0,1fr));max-width:440px}
.oishiku-related-grid-one{grid-template-columns:minmax(0,190px)}
.oishiku-related .cheki{padding:8px 8px 12px;box-shadow:2px 4px 9px #0003}
.oishiku-related .cheki-label{padding-top:7px}
.oishiku-related .cheki-label strong{font-size:.76rem;white-space:normal;overflow-wrap:anywhere;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.oishiku-related .cheki-label time{font-size:.66rem}
.oishiku-related-more{text-align:center;margin:14px 0 0;font-size:.85rem}
.oishiku-related-more a{color:#805b3b;text-underline-offset:3px}
@media(max-width:600px){.oishiku-related{padding:18px 12px}.oishiku-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.oishiku-related-grid-one{grid-template-columns:minmax(0,160px)}.oishiku-related .cheki{padding:7px 7px 10px}}

/* v0.8.0: location/genre browsing, full feed and diary */
.oishiku-breadcrumbs{display:grid;gap:7px;margin:0 0 20px;font-size:.82rem;color:#76593d}
.oishiku-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;line-height:1.6}
.oishiku-crumb a{color:#795536;text-decoration:none;border-bottom:1px solid #d6bfa4}
.oishiku-crumb-icon{width:24px;text-align:center}.oishiku-crumb-sep{color:#b7a18a}
.oishiku-full-article{padding:0 0 36px;margin:0 0 45px;border-bottom:1px solid #d8c9b6}
.oishiku-full-article .entry-title{font-size:1.5rem}.oishiku-full-article .entry-title a{text-decoration:none}
.oishiku-full-article-link{text-align:right;margin:18px 0 0}
.oishiku-shop-filters{margin:20px 0 28px}.oishiku-shop-filters section{margin-bottom:20px}.oishiku-shop-filters h2{font-size:1rem;color:#6e4c2e}
.oishiku-filter-links{display:flex;flex-wrap:wrap;gap:8px}.oishiku-filter-links a{background:#f7eee1;border:1px solid #d7c4a8;border-radius:6px;padding:6px 12px;color:#674b32;text-decoration:none;font-size:.9rem}
.oishiku-shop-row{display:grid;grid-template-columns:125px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid #ddceba}
.oishiku-shop-row-photo{position:relative;display:block;aspect-ratio:1.12;overflow:hidden;background:#e9dfd0;border:6px solid #fff;box-shadow:1px 3px 8px #0002}
.oishiku-shop-row-photo img{width:100%;height:100%;object-fit:cover;display:block}
.oishiku-shop-row-details h2{font-size:1.16rem;margin:0 0 5px}.oishiku-shop-row-details h2 a{text-decoration:none}
.oishiku-shop-row-meta,.oishiku-shop-row-address{color:#806b53;font-size:.83rem;margin:4px 0}
.oishiku-shop-row-latest{border-top:1px solid #e7d8c6;margin-top:12px;padding-top:9px;display:flex;flex-direction:column;gap:3px}
.oishiku-shop-row-latest span{font-size:.75rem;color:#94765a}.oishiku-shop-row-latest a{font-size:.95rem;color:#65472d;text-decoration:none}.oishiku-shop-row-latest time,.oishiku-diary-item time{font-size:.76rem;color:#91775b}
.oishiku-diary-item{padding:18px 0;border-bottom:1px solid #ddceba}.oishiku-diary-item h2{font-size:1.15rem;margin:5px 0}.oishiku-diary-item h2 a{text-decoration:none}
@media(max-width:560px){.oishiku-shop-row{grid-template-columns:95px minmax(0,1fr);gap:12px}.oishiku-shop-row-details h2{font-size:1rem}.oishiku-full-article .entry-title{font-size:1.25rem}}

/* v0.8.1 breadcrumb pictograms in the same warm palette as the information cards */
.oishiku-crumb-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:25px;height:25px;flex:none;background:#f2e3cd;border:1px solid #dfc6a4;border-radius:6px;margin-right:3px}
.oishiku-crumb-icon svg{width:20px;height:20px;display:block}

/* v0.8.3: Optional panoramic bar on individual articles. */
.oishiku-single-bar{margin:18px 0 26px;overflow:hidden;border-radius:4px}
.oishiku-single-bar .oishiku-list-photo{display:block;width:100%;aspect-ratio:760 / 260;height:auto;overflow:hidden}
.oishiku-single-bar img{width:100%;height:100%;object-fit:cover;display:block}

/* v0.8.8: show the complete source and crop only through the viewport */
.cheki-photo img{max-width:none;height:auto;object-fit:fill}

/* v0.8.18: display the actual saved crop without additional viewport cropping.
   Generated images have a fixed 760:260 ratio on both desktop and mobile. */
.oishiku-single-bar .oishiku-list-photo { aspect-ratio: 760 / 260; height: auto; }
.oishiku-single-bar .oishiku-list-photo img { width: 100%; height: auto; aspect-ratio: 760 / 260; object-fit: contain; max-width: 100%; }
.article-pagination ul { justify-content: center; }

/* v0.8.22: typography preview based on v0.8.20; shop info matches body */
body.single-post .entry-title{font-size:26px}
body.single-post .entry-content{font-size:17px;line-height:1.8}
body.single-post .oishiku-info-card__body dl{font-size:17px}
body.single-post .oishiku-info-card__heading,
body.single-post .oishiku-rating-card__heading{font-size:17px}
.sidebar-box h2{font-size:17px}
@media(max-width:760px){
  body.single-post .entry-title{font-size:26px}
  body.single-post .entry-content{font-size:17px;line-height:1.8}
}

/* v0.8.24: set the Artemishuran numeric score to 20px. */
body.single-post .oishiku-rating-card__number{font-size:20px}

/* v0.8.25: round only photographs placed in the article body.
   Keep information/rating cards, icons, header banner and related Cheki unchanged. */
body.single-post .entry-content :is(.wp-block-image img, figure:not(.oishiku-info-card):not(.oishiku-rating-card) > img, p > img, p > a > img){border-radius:8px}

/* v0.8.26.0: Round article body photographs on the full-article listing, matching single posts. */
.oishiku-full-article .entry-content :is(.wp-block-image img, figure:not(.oishiku-info-card):not(.oishiku-rating-card) > img, p > img, p > a > img){border-radius:8px}

/* v0.8.27: Cheki shop area, shown below the shop name */
.cheki-label .cheki-area{font-size:.7rem;color:#827668;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:760px){.cheki-label .cheki-area{font-size:.64rem}}

/* v0.8.29: search result media stays within the article column */
.oishiku-search-results .post-thumbnail,.oishiku-search-results .post-thumbnail img{display:block;max-width:100%;height:auto}
.oishiku-search-results .entry-content img,.oishiku-search-results .entry-content figure{max-width:100%;height:auto}
.oishiku-search-results .oishiku-full-article{min-width:0}

/* v0.8.30: keep regular article/archive media inside the content column.
   Cheki's absolute-positioned image is only valid inside its own photo frame. */
.oishiku-archive-articles,.oishiku-archive-articles .oishiku-full-article{min-width:0;max-width:100%}
.oishiku-archive-articles .entry-content img,
.oishiku-archive-articles .entry-content figure,
.oishiku-archive-articles .entry-content video,
.oishiku-archive-articles .entry-content iframe{max-width:100%}
.oishiku-archive-articles .entry-content img{height:auto}
.oishiku-archive-articles .entry-content :is(.wp-block-image img,figure:not(.oishiku-info-card):not(.oishiku-rating-card) > img,p > img,p > a > img){border-radius:8px}

/* v0.8.40: Store information, maps, and ratings on /articles/ use the
   respective plugins’ own frontend CSS; no duplicate theme overrides. */

/* v0.8.33: Archive excerpt thumbnails use a bounded Cheki frame.
   The Cheki image function positions its image absolutely, so the frame
   must establish the containing block. No effect on front-page Cheki. */
.oishiku-archive-excerpts { min-width:0; max-width:100%; }
.oishiku-archive-excerpt { min-width:0; }
.oishiku-archive-excerpt .oishiku-archive-cheki {
  display:block; width:100%; max-width:340px; overflow:hidden;
  margin:16px 0; border-radius:8px; text-decoration:none;
}
.oishiku-archive-excerpt .oishiku-archive-cheki .cheki-photo {
  display:block; position:relative; width:100%; aspect-ratio:1.12;
  overflow:hidden; background:#5d4a38; border-radius:8px;
}
.oishiku-archive-excerpt .oishiku-archive-cheki .cheki-photo img {
  display:block; max-width:none; height:auto;
}
.oishiku-archive-excerpt .oishiku-archive-summary { overflow-wrap:anywhere; }

/* v0.8.36: article tag chips and horizontal, article-based tag archive */
.oishiku-article-tags{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:-8px 0 20px;font-size:.82rem}
.oishiku-article-tags-label{color:#886640;margin-right:2px}
.oishiku-tag-chip{display:inline-block;padding:2px 9px;border:1px solid #d8c3a4;border-radius:5px;background:#fff9ef;color:#80572e;text-decoration:none;line-height:1.65}
.oishiku-tag-chip:hover,.oishiku-tag-chip:focus-visible{background:#eee0c8}
.oishiku-tag-archive{min-width:0}
.oishiku-tag-result{display:grid;grid-template-columns:132px minmax(0,1fr);gap:22px;padding:20px 0;border-bottom:1px solid #d9cbb9;min-width:0}
.oishiku-tag-result-thumb{display:block;position:relative;align-self:start;padding:5px;background:#fffdf7;box-shadow:0 2px 8px #0002;text-decoration:none;min-width:0}
.oishiku-tag-result-thumb .cheki-photo{display:block;position:relative;aspect-ratio:1/1;overflow:hidden}
.oishiku-tag-result-thumb .cheki-photo img{display:block;max-width:none}
.oishiku-tag-result-body{min-width:0}
.oishiku-tag-result-body h2{font-size:1.1rem;line-height:1.45;margin:0 0 7px}
.oishiku-tag-result-body h2 a{text-decoration:none}
.oishiku-tag-result-location{font-size:.8rem;color:#927a60;margin:0 0 8px;overflow-wrap:anywhere}
.oishiku-tag-result-excerpt{font-size:.9rem;line-height:1.8;overflow-wrap:anywhere}
.oishiku-tag-result-excerpt p{margin:0 0 8px}
.oishiku-tag-result-body time{font-size:.8rem;color:#90785d}
@media(max-width:600px){.oishiku-tag-result{grid-template-columns:100px minmax(0,1fr);gap:12px}.oishiku-tag-result-body h2{font-size:1rem}.oishiku-tag-result-excerpt{font-size:.82rem}}

/* v0.8.37: Clean, larger photographs in listings only.
   Keep the front-page and related-post Polaroid cards unchanged.
   The cheki-photo frame retains its original 1.12 aspect ratio so saved
   photo pan/zoom settings continue to match the editor. */
.oishiku-shop-row{grid-template-columns:150px minmax(0,1fr)}
.oishiku-shop-row-photo{
  border:0;box-shadow:none;border-radius:8px;background:#e9dfd0;
}
.oishiku-shop-row-photo img{border-radius:0}
.oishiku-tag-result{grid-template-columns:154px minmax(0,1fr)}
.oishiku-tag-result-thumb{
  padding:0;background:transparent;box-shadow:none;border-radius:8px;overflow:hidden;
}
.oishiku-tag-result-thumb .cheki-photo{aspect-ratio:1.12;border-radius:8px}
.oishiku-archive-excerpt .oishiku-archive-cheki{max-width:380px;border:0;box-shadow:none;padding:0}
@media(max-width:600px){
  .oishiku-shop-row{grid-template-columns:112px minmax(0,1fr);gap:12px}
  .oishiku-tag-result{grid-template-columns:112px minmax(0,1fr);gap:12px}
}

/* v0.8.38: sidebar links — quiet by default, underline on interaction. */
.site-sidebar a:not(.search-submit){text-decoration:none;}
.site-sidebar a:not(.search-submit):hover,
.site-sidebar a:not(.search-submit):focus-visible{text-decoration:underline;text-underline-offset:3px;}

/* v0.8.41: Sidebar lists without bullet markers or list indentation. */
.site-sidebar .sidebar-box ul{list-style:none;padding-left:0;margin:0;}
.site-sidebar .sidebar-box li{list-style:none;}
.site-sidebar .sidebar-recent-posts time{display:block;margin-top:3px;color:#90785d;font-size:.78rem;line-height:1.5;}
.site-sidebar .sidebar-recent-posts li{margin-bottom:11px;}

/* v0.8.42: indent sidebar list items without restoring bullets. */
.site-sidebar .sidebar-box ul{padding-left:16px;}

/* v0.8.45: Tiny decorative sidebar icon, aligned to text baseline. */
.site-sidebar .sidebar-box h2 .sidebar-heading-icon{display:inline-block;width:1em;height:1em;vertical-align:-0.12em;fill:#886640;flex:none;}

/* Address paw icon: shop list only. */
.oishiku-shop-row-address .oishiku-address-paw{display:inline-block;width:1.4em;height:1.4em;vertical-align:-.30em;margin-right:.24em;color:#9b7044;flex-shrink:0}
