@layer hounokiFallback, hounokiOfficial, hounokiAdapter;
@import url("official-fallback.css") layer(hounokiFallback);
@import url("https://hounoki-daira.com/wp/wp-content/themes/hoonoki2026/css/base.css") layer(hounokiOfficial);
@import url("https://hounoki-daira.com/wp/wp-content/themes/hoonoki2026/css/sections/hero_top.css") layer(hounokiOfficial);
@import url("https://hounoki-daira.com/wp/wp-content/themes/hoonoki2026/css/sections/footer.css") layer(hounokiOfficial);
@import url("https://hounoki-daira.com/wp/wp-content/themes/hoonoki2026/css/animation.css") layer(hounokiOfficial);
@import url("https://hounoki-daira.com/wp/wp-content/themes/hoonoki2026/css/fix-1001.css") layer(hounokiOfficial);
@import url("https://hounoki-daira.com/wp/wp-content/themes/hoonoki2026/css/fix-1003.css") layer(hounokiOfficial);

/* Remove the old app chrome declarations without resetting form styles. */
html.hn-official-direct .official-header,
html.hn-official-direct .official-header :where(*),
html.hn-official-direct .official-footer,
html.hn-official-direct .official-footer :where(*) { all:revert-layer; }
@layer hounokiAdapter {
  /* Apply the official 1440px canvas scaling to chrome only; keep inputs at 16px. */
  html.hn-official-direct { --chrome-zoom:1; }
  .official-header, .official-footer {
    width:100%;zoom:var(--chrome-zoom);
    font-family:var(--font-jp);font-feature-settings:'palt';
  }
  .js .header.official-header {position:relative;left:0;top:0;max-width:none;transform:none;transition:none;flex:none;}
  .official-header .header__nav {display:flex;max-width:calc(100% - 260px);}
  .official-header .header__nav a,.official-header .header__nav h1 {white-space:normal;font-size:18px;font-weight:500;line-height:1;letter-spacing:.01em;color:white;}
  .official-header .official-settings {position:absolute;right:20px;top:16px;color:white;min-width:44px;min-height:44px;font:inherit;}
  .hn-official-direct body {background-color:#fff;}
  .hn-official-direct main::before {content:none;background-image:none;}
  .official-footer {margin:0;flex:none;}
  /* The scanner needs the camera's remaining viewport; keep its footer compact. */
  .official-footer--compact {height:auto;background-image:none;}
  .official-footer--compact .footer__inner {padding:12px 20px;}
  .official-footer--compact .footer__top,.official-footer--compact .footer__divider,.official-footer--compact .footer__col {display:none;}
  .official-footer--compact .footer__body {display:block;margin:0;}
  .official-footer--compact .footer__address p {white-space:normal;}
  .official-footer--compact .footer__copyright {position:static;padding:0 12px 12px;}
  @media(max-width:768px) {
    .js .header.official-header {min-height:64px;}
    .official-header .header__nav {position:static;transform:none;max-width:calc(100% - 140px);margin-top:4.5px;}
    .official-header .header__nav a,.official-header .header__nav h1 {font-size:13px;line-height:1.4;}
    /* Match the official TOP scrolled state's extra 4.5px logo offset (fix-1001). */
    .js .official-header.is-scrolled .header__logo {margin-top:4.5px;}
    .official-header .official-settings {top:8px;right:12px;}
  }
}

/* Same official font bytes, same origin in the local preview and production. */
@font-face{font-family:"Shippori Antique B1 palt";src:url("assets/official/ShipporiAntiqueB1-palt.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"Bebas Kai";src:url("assets/official/BebasKai.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}

@layer hounokiAdapter {.official-header [data-official-control]{position:absolute;right:20px;top:14px;min-height:44px;padding:6px 10px;font:400 16px/1.4 var(--font-jp);color:white;background:transparent;border:1px solid currentColor;border-radius:4px}.official-header select option{color:#222;background:white}@media(max-width:768px){.official-header [data-official-control]{right:12px;top:9px;font-size:13px}}}

@layer hounokiAdapter{.official-header-backdrop{position:sticky;top:0;z-index:60;background:transparent;flex:none;width:100%;}.history-screen .official-header-backdrop{position:relative;}}

/* Shield app properties not declared by its own styles from global official hero/reset rules.
   App styles are unlayered and therefore retain precedence; chrome is excluded. */
@layer hounokiAdapter {
 html.hn-official-direct body *:not(.official-header-backdrop,.official-header-backdrop *,.official-footer,.official-footer *) {all:revert;}
 html.hn-official-direct body *:not(.official-header-backdrop,.official-header-backdrop *,.official-footer,.official-footer *)::before,
 html.hn-official-direct body *:not(.official-header-backdrop,.official-header-backdrop *,.official-footer,.official-footer *)::after {all:revert;}
}

/* overflow-x:hidden on body would create a separate sticky scroll container. */
html.hn-official-direct,html.hn-official-direct body{overflow-x:clip;}
