/* ==========================================================================
   iSpazio Theme — Entry Content Typography
   Stili tipografici condivisi tra single post e pagine generiche (page.php).
   Caricato sia in `single` che in `page` (eccetto page-ios.php lean landing).
   Estratto da single.css per evitare di caricare tutto single.css solo per
   la tipografia editoriale.
   ========================================================================== */

/* --- Page header (h1) + wrapper --- */
.isp-page__header{padding:20px 0 24px}
.isp-page__title{font-size:clamp(26px,4vw,36px);font-weight:700;line-height:1.15;letter-spacing:-.7px;margin:0 0 .6em}
.isp-entry-content--page{max-width:800px}

/* --- Floating elements clear --- */
.isp-entry-content .isp-appbox,
.isp-entry-content .isp-sfondo,
.isp-entry-content .isp-card-sfondo,
.isp-entry-content .isp-deal-strip,
.isp-entry-content .isp-card-deal,
.isp-entry-content .isp-card-amazon,
.isp-entry-content .isp-telegram-card,
.isp-entry-content figure,
.isp-entry-content iframe,
.isp-entry-content table{clear:right}

/* --- Base typography --- */
.isp-entry-content{font-size:var(--isp-article-size);line-height:var(--isp-article-lh);color:var(--isp-ink);min-width:0;max-width:100%}
.isp-entry-content h2{font-size:24px;margin:2em 0 .5em;letter-spacing:-.4px}
.isp-entry-content h3{font-size:20px;margin:1.8em 0 .5em;letter-spacing:-.3px}
.isp-entry-content h4{font-size:18px;margin:1.5em 0 .5em}
.isp-entry-content p{margin:0 0 1.2em}
.isp-entry-content a{color:var(--isp-brand)}
.isp-entry-content a:hover{color:var(--isp-brand-dark)}
.isp-entry-content img{border-radius:13px;margin:1.5em 0}

/* Center-aligned images */
img.aligncenter,.aligncenter img{display:block;margin-left:auto !important;margin-right:auto !important}
figure.aligncenter,.wp-block-image.aligncenter,p.aligncenter{display:block;margin-left:auto;margin-right:auto;text-align:center}
/* When aligncenter img is wrapped in <a> (inline) or in headings/p, center the parent chain. */
a:has(> img.aligncenter){display:block;text-align:center}
p:has(img.aligncenter),h1:has(img.aligncenter),h2:has(img.aligncenter),h3:has(img.aligncenter),h4:has(img.aligncenter),h5:has(img.aligncenter),h6:has(img.aligncenter){text-align:center}
.isp-entry-content p[style*="text-align:center"] img,
.isp-entry-content p[style*="text-align: center"] img,
.isp-entry-content [style*="text-align:center"] > img,
.isp-entry-content [style*="text-align: center"] > img{display:block;margin-left:auto !important;margin-right:auto !important}
.isp-entry-content img.alignright{display:block;margin-left:auto;margin-right:0}

/* Figures + captions */
.isp-entry-content figure{margin:1.5em 0}
.isp-entry-content figcaption{font-size:13px;color:var(--isp-mute);text-align:center;margin-top:8px;font-style:italic}

/* Blockquote */
.isp-entry-content blockquote{border-left:3px solid var(--isp-brand);padding:12px 20px;margin:1.5em 0;background:var(--isp-brand-soft);border-radius:0 var(--isp-radius-sm) var(--isp-radius-sm) 0;font-size:inherit;color:var(--isp-ink2)}
.isp-entry-content blockquote p{margin:0}
.isp-entry-content blockquote p:not(:last-child){padding-bottom:.75em}

/* Lists */
.isp-entry-content ul,.isp-entry-content ol{margin:0 0 1.2em;padding-left:1.8em;list-style-position:outside}
.isp-entry-content ul{list-style:disc}
.isp-entry-content ol{list-style:decimal}
.isp-entry-content ol>li::marker{font-weight:700}
.isp-entry-content strong,.isp-entry-content b{font-weight:700}
.isp-entry-content li{padding-bottom:.83em}
.isp-entry-content li:last-child{padding-bottom:0}

/* Code blocks */
.isp-entry-content pre{background:var(--isp-ink);color:#e4e9f2;padding:20px;border-radius:var(--isp-radius-sm);overflow-x:auto;font-family:var(--isp-font-mono);font-size:14px;line-height:1.6;margin:1.5em 0;max-width:100%;word-break:break-word}
.isp-entry-content code{font-family:var(--isp-font-mono);font-size:.9em;background:var(--isp-bg);padding:2px 6px;border-radius:4px}
.isp-entry-content pre code{background:none;padding:0;border-radius:0;font-size:inherit}

/* Tables */
.isp-entry-content .isp-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.5em 0}
.isp-entry-content table{width:100%;margin:0;border:1px solid var(--isp-border);border-radius:var(--isp-radius-sm);overflow:hidden;font-size:15px;min-width:480px}
.isp-entry-content th{background:var(--isp-bg);font-weight:600;text-align:left;padding:10px 14px;border-bottom:1px solid var(--isp-border)}
.isp-entry-content td{padding:10px 14px;border-bottom:1px solid var(--isp-border-soft)}

/* HR + iframe */
.isp-entry-content hr{border:none;border-top:1px solid var(--isp-border);margin:2em 0}
.isp-entry-content iframe{max-width:100%;border:1px solid var(--isp-border);border-radius:var(--isp-radius-sm);margin:1.5em 0}
.isp-entry-content .wp-block-embed{margin:1.5em 0}

/* --- WordPress Gallery ([gallery] shortcode) --- */
.isp-entry-content .gallery{display:grid;gap:8px;margin:1.5em 0}
.isp-entry-content .gallery-columns-1{grid-template-columns:1fr}
.isp-entry-content .gallery-columns-2{grid-template-columns:repeat(2,1fr)}
.isp-entry-content .gallery-columns-3{grid-template-columns:repeat(3,1fr)}
.isp-entry-content .gallery-columns-4{grid-template-columns:repeat(4,1fr)}
.isp-entry-content .gallery-columns-5{grid-template-columns:repeat(5,1fr)}
.isp-entry-content .gallery-columns-6{grid-template-columns:repeat(6,1fr)}
.isp-entry-content .gallery-item{margin:0;text-align:center}
.isp-entry-content .gallery-item img{width:100%;height:auto;display:block;border-radius:var(--isp-radius-sm);cursor:zoom-in;aspect-ratio:1;object-fit:cover;margin:0}
.isp-entry-content .gallery-icon a{display:block}
.isp-entry-content .gallery-caption{font-size:12px;color:var(--isp-mute);margin-top:4px;padding:0 4px}
.isp-entry-content .gallery br{display:none}

/* Gutenberg gallery */
.isp-entry-content .wp-block-gallery{display:grid;gap:8px;margin:1.5em 0}
.isp-entry-content .wp-block-gallery.columns-2{grid-template-columns:repeat(2,1fr)}
.isp-entry-content .wp-block-gallery.columns-3{grid-template-columns:repeat(3,1fr)}
.isp-entry-content .wp-block-gallery.columns-4{grid-template-columns:repeat(4,1fr)}
.isp-entry-content .wp-block-gallery .wp-block-image{margin:0}
.isp-entry-content .wp-block-gallery .wp-block-image img{width:100%;height:auto;border-radius:var(--isp-radius-sm);cursor:zoom-in;aspect-ratio:1;object-fit:cover;margin:0}

/* --- Mobile overrides --- */
@media(max-width:640px){
    .isp-entry-content img{margin:1em 0}
    .isp-entry-content iframe{margin:1em 0}
    .isp-entry-content blockquote{padding:10px 14px;margin:1em 0}
    .isp-entry-content h2{font-size:20px;margin:1.5em 0 .5em}
    .isp-entry-content h3{font-size:18px;margin:1.3em 0 .5em}
    .isp-entry-content pre{padding:14px;font-size:13px}
}

/* ═══════════════════════════════════════════════════════════════════════
   About page history timeline — [ispazio_about_timeline]
   Usa la stessa visual di .isp-timeline (home.css) ma adattata per testo
   statico (mese/anno invece di ora/data, descrizione paragrafica al posto
   del title h3 link-style). Caricato via entry-content.css quindi attivo
   ovunque .isp-entry-content sia presente (single + page).
   ═══════════════════════════════════════════════════════════════════════ */
.isp-history{margin:1.5em 0}
.isp-history__year{
    font-size:22px;font-weight:800;letter-spacing:-.3px;
    color:var(--isp-ink);margin:1.8em 0 .6em
}
.isp-history__year:first-child{margin-top:.4em}
.isp-history .isp-timeline--static{padding-left:14px;border-left:2px solid var(--isp-border)}
.isp-history .isp-timeline--static .isp-timeline__item{
    grid-template-columns:auto 1fr;gap:14px;align-items:flex-start;
    padding:14px 0;border-bottom:1px solid var(--isp-border-soft)
}
.isp-history .isp-timeline--static .isp-timeline__marker{min-width:92px}
.isp-history .isp-timeline--static .isp-timeline__dot{
    width:10px;height:10px;left:-6px;top:18px;background:var(--isp-brand);
    border:2px solid var(--isp-surface);position:absolute;border-radius:50%
}
.isp-history .isp-timeline--static .isp-timeline__hour{
    display:block;font-size:14px;font-weight:700;color:var(--isp-ink);
    line-height:1.2
}
.isp-history .isp-timeline--static .isp-timeline__date{
    display:block;font-size:11px;color:var(--isp-mute);
    text-transform:uppercase;letter-spacing:.5px;margin-top:2px
}
.isp-history__entry{
    font-size:15px;line-height:1.55;color:var(--isp-ink2);
    margin:0;font-weight:400
}
.isp-history__entry a{color:var(--isp-brand);text-decoration:none}
.isp-history__entry a:hover{color:var(--isp-brand-dark);text-decoration:underline}
.isp-history__entry strong{color:var(--isp-ink);font-weight:700}

@media(max-width:640px){
    .isp-history__year{font-size:20px}
    .isp-history .isp-timeline--static{padding-left:12px}
    .isp-history .isp-timeline--static .isp-timeline__item{
        grid-template-columns:auto 1fr;gap:10px;padding:12px 0
    }
    .isp-history .isp-timeline--static .isp-timeline__marker{min-width:78px}
    .isp-history__entry{font-size:14px}
}
