/* Davis IGA Weekly Ad — isolated, no dependencies */
.diga-viewer{--diga-accent:#a41e35;--diga-ink:#24282e;--diga-line:#e3e6ea;color:var(--diga-ink);background:#fff;border:1px solid var(--diga-line);border-radius:12px;overflow:hidden;max-width:1360px;margin:24px auto 40px;box-shadow:0 8px 34px rgba(25,30,38,.065);font-family:inherit;line-height:1.4}.diga-viewer *,.diga-viewer *:before,.diga-viewer *:after{box-sizing:border-box}.diga-heading{padding:22px 26px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}.diga-heading h2{color:var(--diga-ink)!important;font-family:inherit!important;font-size:clamp(24px,3.1vw,38px)!important;font-weight:600;line-height:1.15;letter-spacing:-.025em;margin:5px 0 0!important}.diga-eyebrow{color:var(--diga-accent);font-weight:800;text-transform:uppercase;font-size:11px;letter-spacing:.16em}.diga-dates{margin:8px 0 0!important;color:#57606a!important;font-size:15px!important}.diga-page-count{font-size:13px;color:#59616e;white-space:nowrap}.diga-page-count b{font-weight:750;color:var(--diga-ink)}.diga-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 14px;background:#f6f7f8;border-top:1px solid var(--diga-line);border-bottom:1px solid var(--diga-line)}.diga-toolbar-group{display:flex;gap:6px;align-items:center}.diga-control{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:40px;min-height:40px;padding:7px 13px;background:#fff!important;color:#2c3540!important;border:1px solid #d9dee4!important;border-radius:6px;font-size:15px!important;font-family:inherit;font-weight:650;line-height:1.2!important;cursor:pointer;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;transition:border-color .15s,background .15s}.diga-control:not(:disabled):hover{border-color:var(--diga-accent)!important;background:#fff5f6!important}.diga-control:disabled{opacity:.38;cursor:not-allowed}.diga-control:focus-visible,.diga-thumb:focus-visible,.diga-stage:focus-visible,.diga-original:focus-visible{outline:3px solid var(--diga-accent);outline-offset:2px}.diga-stage{position:relative;width:100%;height:clamp(480px,68vh,950px);height:clamp(480px,68svh,950px);overflow:hidden;display:grid;place-items:center;background:#e9ebee;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:zoom-in;outline-offset:-4px}.diga-stage.is-zoomed{cursor:grab;touch-action:none}.diga-stage.is-dragging{cursor:grabbing}.diga-main-image{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none!important;max-height:none!important;object-fit:contain;object-position:center;transform-origin:50% 50%;will-change:transform;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;transition:transform .16s ease;filter:drop-shadow(0 3px 7px rgba(0,0,0,.12))}.diga-stage.is-dragging .diga-main-image,.diga-stage.is-pinching .diga-main-image{transition:none}.diga-loading{position:absolute;top:15px;left:50%;transform:translateX(-50%);padding:7px 14px;color:#333;background:rgba(255,255,255,.93);box-shadow:0 3px 10px rgba(0,0,0,.15);border-radius:20px;font-size:13px;z-index:2}.diga-loading[hidden]{display:none}.diga-zoom-hint{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);padding:7px 14px;color:#fff;background:rgba(12,15,20,.67);border-radius:22px;font-size:12px;white-space:nowrap;pointer-events:none}.diga-thumbnails{display:flex;align-items:stretch;justify-content:center;gap:11px;overflow-x:auto;padding:18px 14px 16px;border-top:1px solid var(--diga-line);scrollbar-width:thin}.diga-thumb{width:clamp(75px,12vw,130px);flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:7px;padding:9px 8px 8px;min-height:92px;background:#fff!important;color:#4a5661!important;border:2px solid transparent!important;border-radius:8px;cursor:pointer;box-shadow:none!important;font-family:inherit;font-weight:500;font-size:12px!important;line-height:1.2!important;text-align:center;text-transform:none!important;letter-spacing:0!important}.diga-thumb img{display:block;width:100%;height:82px;max-width:none;object-fit:contain;object-position:center;border-radius:2px;background:#f0f1f3}.diga-thumb span{max-width:100%;overflow-wrap:anywhere}.diga-thumb:hover{background:#f7f7f8!important}.diga-thumb.is-active{border-color:var(--diga-accent)!important;background:#fff7f8!important;color:var(--diga-accent)!important}.diga-footer{padding:13px 20px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;background:#fafafa;border-top:1px solid var(--diga-line)}.diga-help{font-size:12px;color:#69717b}.diga-original{font-size:13px;font-weight:700;color:var(--diga-accent)!important;text-decoration:underline!important;text-underline-offset:3px}.diga-empty{padding:42px 20px;text-align:center;border:1px solid #e3e6ea;border-radius:10px;background:#f8f9fa;color:#606773}.diga-viewer:fullscreen,.diga-viewer.is-fullscreen-fallback{position:fixed!important;inset:0!important;width:100%!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;z-index:2147483000!important;display:flex!important;flex-direction:column!important;margin:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;background:#fff}.diga-viewer:fullscreen .diga-stage,.diga-viewer.is-fullscreen-fallback .diga-stage{flex:1 1 auto;height:auto!important;min-height:0}.diga-viewer:fullscreen .diga-thumbnails,.diga-viewer.is-fullscreen-fallback .diga-thumbnails{flex-shrink:0}.diga-viewer:fullscreen .diga-heading,.diga-viewer.is-fullscreen-fallback .diga-heading,.diga-viewer:fullscreen .diga-toolbar,.diga-viewer.is-fullscreen-fallback .diga-toolbar,.diga-viewer:fullscreen .diga-footer,.diga-viewer.is-fullscreen-fallback .diga-footer{flex-shrink:0}body.diga-scroll-locked{overflow:hidden!important}@media(max-width:700px){.diga-viewer{border-radius:0;margin:15px auto 25px;box-shadow:none}.diga-heading{padding:17px 16px;align-items:flex-start}.diga-count-top{display:none}.diga-toolbar{padding:8px 10px;gap:6px}.diga-toolbar-group{gap:4px}.diga-control{min-width:37px;min-height:39px;padding:7px 10px}.diga-control-label{display:none}.diga-stage{height:clamp(380px,68svh,760px)}.diga-thumbnails{justify-content:flex-start;gap:7px;padding:12px}.diga-thumb{width:84px;padding:6px 4px}.diga-thumb img{height:62px}.diga-footer{padding:12px 14px}.diga-help{display:none}.diga-zoom-hint{bottom:12px}}@media(max-width:400px){.diga-control{padding:6px 9px;min-width:34px}.diga-toolbar{gap:2px;padding:6px}.diga-heading h2{font-size:24px!important}}@media(prefers-reduced-motion:reduce){.diga-viewer *, .diga-viewer *:before,.diga-viewer *:after{transition:none!important}}


/* -----------------------------------------------------------
   DESKTOP: COMFORTABLE READING WIDTH (v1.0.3)
   The portrait flyer uses a centered, max-1100px reading width,
   preserving its proportions without excessive desktop scaling.
   Standard page scroll reads downward.
   Mobile/tablet touch navigation remains unchanged.
----------------------------------------------------------- */
@media (min-width: 901px) {
  .diga-viewer {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: min(1100px, calc(100vw - 48px)) !important;
    max-width: none !important;
    margin: 24px 0 40px !important;
    border: 1px solid var(--diga-line);
    border-radius: 12px;
    box-shadow: 0 8px 34px rgba(25,30,38,.065);
    overflow: visible;
  }
  .diga-viewer .diga-heading {
    padding: 24px 26px;
  }
  .diga-viewer .diga-toolbar {
    position: sticky;
    top: 0;
    z-index: 5;
    padding: 10px 20px;
  }
  .diga-viewer .diga-stage {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: var(--diga-page-ratio, 3 / 4);
    background: #fff;
  }
  .diga-viewer .diga-main-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    filter: none;
  }
  .diga-viewer .diga-thumbnails {
    padding: 20px 24px;
  }
  .diga-viewer .diga-footer {
    padding: 16px 26px;
  }
  .diga-viewer .diga-zoom-hint {
    display: none !important;
  }
  /* Fullscreen still uses a single screen-height stage, not a tall document. */
  .diga-viewer:fullscreen,
  .diga-viewer.is-fullscreen-fallback {
    left: 0 !important;
    transform: none !important;
    width: 100% !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
  .diga-viewer:fullscreen .diga-stage,
  .diga-viewer.is-fullscreen-fallback .diga-stage {
    aspect-ratio: auto !important;
  }
  .diga-viewer:fullscreen .diga-toolbar,
  .diga-viewer.is-fullscreen-fallback .diga-toolbar {
    position: relative;
    top: auto;
  }
}

/* Do not show touch-specific hints to mouse/trackpad users at any width. */
@media (hover: hover) and (pointer: fine) {
  .diga-viewer .diga-zoom-hint { display: none !important; }
}
