/* Only loaded by the dedicated exterior simulator page. Source app CSS and JS are unmodified. */
.iromihon-page button{font-size:inherit}
.iromihon-page textarea{font-family:inherit}
.iromihon-page [hidden]{display:none!important}
/* The source app measures a fixed theme header; this non-sticky shell instead uses the
   renderer's live WordPress admin-bar height, including its off-screen mobile state. */
body.page-exterior-simulator.admin-bar .iromihon-page,
body.page-exterior-simulator.admin-bar .iromihon-notice{--iromihon-header-height:var(--yukiguni-adminbar-offset,32px)!important}
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url("./webfonts/fa-solid-900.woff2") format("woff2")}
.iromihon-page .fas{display:inline-block;font-family:"Font Awesome 5 Free";font-style:normal;font-variant:normal;text-rendering:auto;font-weight:900;line-height:1;-webkit-font-smoothing:antialiased}
.iromihon-page .fa-chevron-left:before{content:""}
.iromihon-page .fa-chevron-right:before{content:""}
.iromihon-page .fa-arrow-right:before{content:""}
.iromihon-page .fa-palette:before{content:""}
.iromihon-page .fa-layer-group:before{content:""}
.iromihon-page .fa-home:before{content:""}
.iromihon-page .fa-tree:before{content:""}

/* 元ページの配置・寸法・スクロール処理は維持。彩美装のブランド色のみを適用。 */
.iromihon-page { --gold2: #a3c43e; --accent: #303824; --accent-solid: #a3c43e; --accent-2: #bfda73; }
.iromihon-page .simulator-entry__actions { background: #f5f7ef; color: #353e2c; border-color: #dce1d4; }
.iromihon-page .simulator-entry__tagline:before { background: #86b10a; }
.iromihon-page .simulator-entry__start { background: #edbd16; }
.iromihon-page .simulator-entry__start:hover { background: #f5ca3e; }
.iromihon-page .simulator-entry__colors { color: #496600 !important; }
.iromihon-page .simulator-entry__divider { background: #a3c43e; }
.iromihon-page .simulator-entry__handle { background: #6c8f09; }
.iromihon-page .simulator-entry__side[aria-pressed=true] { border-color: #a3c43e; }
.iromihon-page .simulator-entry__swatch[aria-pressed=true] { outline-color: #86b10a; }
.iromihon-page .simulator-entry__mascot-layer { position: absolute; inset: 0; container-type: size; pointer-events: none; user-select: none; z-index: 1; }
/* Keep the mascot beside the window as the cover image crops at different widths. */
.iromihon-page .simulator-entry__mascot { position: absolute; left: calc(50% - max(16.6cqw, 38cqh)); bottom: .8rem; width: max(6.3cqw, 14.4cqh); aspect-ratio: 2 / 3; transform: translateX(-50%); }
.iromihon-page .simulator-entry__mascot::before { content: ""; position: absolute; left: 24%; bottom: 2.7%; width: 62%; height: 4%; background: rgb(24 29 20 / 28%); border-radius: 50%; filter: blur(2px); transform: rotate(4deg); }
.iromihon-page .simulator-entry__mascot img { position: relative; display: block; width: 100%; height: 100%; object-fit: contain; pointer-events: none; }
.iromihon-page .simulator-entry__mascot canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.iromihon-page .simulator-entry__mascot:is(.is-painted,.is-wagging) > img:not(.simulator-entry__mascot-tail) { visibility: hidden; }
/* The tail overlaps beneath the stationary body so its root stays attached. */
.iromihon-page .simulator-entry__mascot.is-wagging canvas {
  z-index: 1;
  clip-path: polygon(0 0, 100% 0, 100% 62%, 74% 62%, 74% 68%, 75.7% 75%, 77.6% 80%, 77.6% 83%, 76% 86%, 100% 86%, 100% 100%, 0 100%);
}
.iromihon-page .simulator-entry__mascot img.simulator-entry__mascot-tail {
  position: absolute;
  inset: 0;
  z-index: 0;
  clip-path: polygon(72.5% 62%, 100% 62%, 100% 86%, 74.5% 86%, 76.1% 83%, 76.1% 80%, 74.2% 75%, 72.5% 68%);
  transform-origin: 73.5% 75%;
  animation: irodori-tail-wag 4.4s ease-in-out infinite;
  animation-play-state: paused;
}
.iromihon-page .simulator-entry__mascot.is-mascot-visible img.simulator-entry__mascot-tail { animation-play-state: running; }
@keyframes irodori-tail-wag {
  0%, 8%, 62%, 100% { transform: rotate(0deg); }
  18%, 38% { transform: rotate(-32deg); }
  28%, 48% { transform: rotate(12deg); }
  56% { transform: rotate(-5deg); }
}
@media (prefers-reduced-motion: reduce) {
  .iromihon-page .simulator-entry__mascot img.simulator-entry__mascot-tail { animation: none; transform: none; }
}
.iromihon-page .simulator-entry__heading, .iromihon-page .simulator-entry__divider, .iromihon-page .simulator-entry__handle, .iromihon-page .simulator-entry__sides, .iromihon-page .simulator-entry__palette { z-index: 2; }
.iromihon-page .simulation-navigation__subtitle { background: #fff; color: #53613e; }
.iromihon-page .simulation-navigation { background: #fff; }
.iromihon-page .simulation-navigation__tabs, .iromihon-page .simulation-navigation>.wrap>.simulation-navigation__tabs { background: #f5f7ef; border-color: #dce1d4; }
.iromihon-page .simulation-navigation__tabs button, .iromihon-page .simulation-navigation>.wrap>.simulation-navigation__tabs button { color: #353e2c; }
.iromihon-page .simulation-navigation__tabs--described button small { color: #59634e; }
.iromihon-page .simulation-navigation__tabs button.is-active, .iromihon-page .simulation-navigation>.wrap>.simulation-navigation__tabs button.is-active { color: #56720c; background: #eaf1d8; border-bottom-color: #86b10a; }
.iromihon-page .simulation-navigation__tabs button:focus-visible { outline-color: #86b10a; }
.iromihon-page .simulator-heading > i { color: #a3c43e; }
.iromihon-page :is(#studio-color3d,#studio-meji3d,#studio-metal) { --gold: #a3c43e; --gold2: #a3c43e; --accent: #a3c43e; }
.iromihon-page :is(#studio-color3d,#studio-meji3d,#studio-metal) button[aria-pressed=true]:not(.color-swatch):not(.part) { border-color: #a3c43e; }
.iromihon-page :is(#studio-color3d,#studio-meji3d,#studio-metal) .part[aria-pressed=true] { background: #303824; border-color: #a3c43e; }
.iromihon-page :is(#studio-color3d,#studio-meji3d,#studio-metal) .model-picker-categories button[aria-selected=true] { color: #bfda73; border-color: #86b10a; }
.iromihon-page :is(#studio-color3d,#studio-meji3d,#studio-metal) .model-picker-grid button[aria-pressed=true] { background: #303824; border-color: #86b10a; }
.iromihon-page :is(#studio-color3d,#studio-meji3d,#studio-metal) .primary { background: #edbd16; border-color: #edbd16; color: #252b1f; }
.iromihon-page input[type=range], .iromihon-page input[type=checkbox] { accent-color: #86b10a; }
@media(max-width:768px) {
  .iromihon-page .simulator-entry__mascot { left: 29.5%; bottom: .4rem; }
}

