.tarleton-instagram,
.tarleton-instagram-editor {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
}
.tarleton-instagram {
    /* Themes may force all entry-content children to max-width:100%. */
    max-width: 540px !important;
    margin: 1.5rem auto;
}
/* Override WordPress constrained-layout auto margins, without floats. */
.tarleton-instagram.tarleton-instagram--left,
.tarleton-instagram-editor.tarleton-instagram--left { margin-left: 0 !important; margin-right: auto !important; }
.tarleton-instagram.tarleton-instagram--center,
.tarleton-instagram-editor.tarleton-instagram--center { margin-left: auto !important; margin-right: auto !important; }
.tarleton-instagram.tarleton-instagram--right,
.tarleton-instagram-editor.tarleton-instagram--right { margin-left: auto !important; margin-right: 0 !important; }
/* Contain Instagram's minimum width without clipping its controls or widening the page. */
.tarleton-instagram-viewport {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 4px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: auto;
}
.tarleton-instagram .instagram-media {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 540px !important;
    min-width: 0 !important;
    margin: 0 !important;
}
.tarleton-instagram iframe.instagram-media {
    display: block;
    /* Instagram owns the frame contents; keep its native controls reachable. */
    min-width: 326px !important;
    border: 0;
}
.tarleton-instagram blockquote.instagram-media {
    padding: 1rem;
    border: 1px solid #dcdcde;
    border-radius: 4px;
    background: #fff;
    color: #1d2327;
}
.tarleton-instagram-fallback,
.tarleton-instagram-scroll-hint {
    margin: .5rem 0 0;
    font-size: 1em;
    line-height: 1.5;
}
.tarleton-instagram-fallback { text-align: center; }
.tarleton-instagram--left .tarleton-instagram-fallback { text-align: left; }
.tarleton-instagram--center .tarleton-instagram-fallback { text-align: center; }
.tarleton-instagram--right .tarleton-instagram-fallback { text-align: right; }
.tarleton-instagram a,
.tarleton-instagram-editor a {
    text-decoration: underline;
    text-underline-offset: .15em;
    overflow-wrap: anywhere;
}
.tarleton-instagram a {
    box-sizing: border-box;
    display: inline-block;
    max-width: 100%;
    min-height: 44px;
    min-width: 44px;
    padding: .625em .5em;
    line-height: 1.5;
}
.tarleton-instagram blockquote a { color: #174ea6; }
/* Two colors keep focus visible on light and dark theme backgrounds. */
.tarleton-instagram a:focus,
.tarleton-instagram-viewport:focus,
.tarleton-instagram-editor a:focus {
    outline: 3px solid #174ea6;
    outline-offset: 2px;
    box-shadow: 0 0 0 5px #fff;
    border-radius: 2px;
}
.tarleton-instagram-editor {
    max-width: 540px;
    padding: 1rem;
    border: 1px solid #949494;
    border-radius: 4px;
}
.tarleton-instagram-editor input { max-width: 100%; min-width: 0; }
.tarleton-instagram-editor > strong { display: block; margin-bottom: 1rem; }
.tarleton-instagram-error { overflow-wrap: anywhere; }
.tarleton-instagram [hidden] { display: none !important; }
@media (forced-colors: active) {
    .tarleton-instagram a:focus,
    .tarleton-instagram-viewport:focus,
    .tarleton-instagram-editor a:focus {
        outline-color: Highlight;
        box-shadow: none;
    }
}
