#zn-order-float-v1, #zn-order-modal-v1 { font-family: -apple-system, BlinkMacSystemFont, 'Microsoft YaHei', sans-serif; color: #262620; line-height: 1.5; }
#zn-order-float-v1 *, #zn-order-modal-v1 * { box-sizing: border-box; }
#zn-order-float-v1 [hidden], #zn-order-modal-v1[hidden] { display: none !important; }
#zn-order-float-v1 { position: fixed; right: 24px; bottom: 28px; z-index: 990; width: 144px; }
#zn-order-float-v1.zn-order-has-sidebar { right: 94px; }
#zn-order-float-v1 button, #zn-order-modal-v1 button { margin: 0; cursor: pointer; font-family: inherit; border: 0; }
#zn-order-float-v1 button:focus-visible, #zn-order-modal-v1 button:focus-visible, #zn-order-modal-v1 a:focus-visible { outline: 3px solid #204e36; outline-offset: 4px; }
#zn-order-float-v1 .zn-order-card { position: relative; animation: zn-order-drift-v1 4.8s ease-in-out infinite; }
#zn-order-float-v1 .zn-order-card:hover, #zn-order-float-v1 .zn-order-card:focus-within { animation-play-state: paused; }
#zn-order-float-v1 .zn-order-poster { display: block; background: #fff; width: 144px; padding: 0; border-radius: 18px; overflow: hidden; box-shadow: 0 10px 32px #42241129, 0 2px 7px #42241116; transition: box-shadow .2s; }
#zn-order-float-v1 .zn-order-poster:hover { box-shadow: 0 14px 38px #42241138; }
#zn-order-float-v1 .zn-order-poster img { display: block; width: 100%; height: auto; border: 0; }
#zn-order-float-v1 .zn-order-caption { display: block; padding: 9px 4px 10px; font-size: 12px; color: #544238; background: #fff8f3; text-align: center; }
#zn-order-float-v1 .zn-order-minimize { position: absolute; right: -10px; top: -10px; width: 28px; height: 28px; border-radius: 50%; background: #fff; color: #53483e; box-shadow: 0 2px 9px #0002; font-size: 18px; line-height: 28px; padding: 0; }
#zn-order-float-v1 .zn-order-mini { display: flex; align-items: center; justify-content: center; gap: 7px; background: #ff6044; color: #fff; border-radius: 24px; padding: 12px 15px; width: 144px; font-size: 14px; font-weight: 600; box-shadow: 0 5px 20px #ff604433; }
#zn-order-float-v1 .zn-order-icon { width: 18px; height: 18px; display: block; fill: none; stroke: currentColor; stroke-width: 1.8; }
@keyframes zn-order-drift-v1 { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
#zn-order-modal-v1 { position: fixed; inset: 0; z-index: 1000001; display: flex; justify-content: center; align-items: center; background: #102016a6; padding: 20px; overflow-y: auto; }
#zn-order-modal-v1 .zn-order-dialog { position: relative; width: 390px; max-width: 100%; max-height: calc(100vh - 40px); max-height: calc(100dvh - 40px); overflow-y: auto; border-radius: 24px; background: #fff; box-shadow: 0 24px 90px #0004; padding: 24px 22px 20px; text-align: center; }
#zn-order-modal-v1 .zn-order-close { position: absolute; top: 10px; right: 10px; width: 36px; height: 36px; font-size: 26px; line-height: 36px; color: #63594f; border-radius: 50%; background: #f7f6f2; padding: 0; }
#zn-order-modal-v1 h2 { font-size: 22px; line-height: 1.4; margin: 0 30px 4px; font-weight: 600; color: #262620; }
#zn-order-modal-v1 p { margin: 6px 0 12px; font-size: 13px; color: #6d675f; }
#zn-order-modal-v1 .zn-order-image { display: block; width: auto; max-width: 100%; height: auto; max-height: 61vh; max-height: 61dvh; margin: 12px auto; border-radius: 14px; }
#zn-order-modal-v1 .zn-order-save { color: #42644d; text-decoration: underline; font-size: 13px; display: inline-block; padding: 7px 12px; }
#zn-order-modal-v1 .zn-order-error { padding: 20px 0; color: #81522e; }
@media (max-width: 767px) {
  #zn-order-float-v1, #zn-order-float-v1.zn-order-has-sidebar { right: 14px; bottom: 92px; bottom: calc(92px + env(safe-area-inset-bottom, 0px)); width: 132px; }
  #zn-order-float-v1 .zn-order-card { display: none; }
  #zn-order-float-v1 .zn-order-mini { display: flex !important; width: 132px; padding: 12px 13px; }
  #zn-order-modal-v1 { padding: 12px; }
  #zn-order-modal-v1 .zn-order-dialog { padding: 22px 16px 16px; max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); border-radius: 20px; }
  #zn-order-modal-v1 h2 { font-size: 20px; }
}
@media (max-height: 550px) {
  #zn-order-float-v1 .zn-order-card { display: none; }
  #zn-order-float-v1 .zn-order-mini { display: flex !important; }
}
@media (prefers-reduced-motion: reduce) {
  #zn-order-float-v1 .zn-order-card { animation: none; }
  #zn-order-float-v1 .zn-order-poster { transition: none; }
}
