/*
Theme Name: AppoDigireale
Author: Marco Costanzo
Author URI: https://marcocostanzo.com/
Description: A lightweight, accessible, conversation-first WordPress theme with an automatically ordered, nested category directory and a calm reading experience.
Version: 0.2.9
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: appodigireale
Domain Path: /languages
Tags: blog, news, two-columns, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/
:root{color-scheme:light;--appo-bg:#f7f5ee;--appo-surface:#fffefa;--appo-ink:#223033;--appo-muted:#556268;--appo-accent:#7a470f;--appo-accent-bg:#f4e2bc;--appo-border:#dcdcd1;--appo-focus:#175b98;--appo-radius:16px;--appo-width:1160px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--appo-bg);color:var(--appo-ink);font:400 18px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;overflow-wrap:break-word}button,input,textarea,select{font:inherit}a{color:var(--appo-accent);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--appo-focus);outline-offset:3px}img,video,iframe{max-width:100%;height:auto}figure{max-width:100%;margin:1.5rem 0}blockquote{margin:1.2rem 0;padding:.3rem 1.3rem;border-inline-start:4px solid var(--appo-accent);background:#f8f3e7}hr{border:0;border-top:1px solid var(--appo-border)}h1,h2,h3,h4,h5,h6{line-height:1.25;letter-spacing:-.025em;margin:0 0 .75em}h1{font-size:clamp(1.7rem,3.4vw,2.5rem)}h2{font-size:clamp(1.4rem,2.5vw,1.85rem)}h3{font-size:1.16rem}p{margin:.65rem 0 1.15rem}ul,ol{padding-inline-start:1.45rem}code,pre{max-width:100%;overflow-x:auto}pre{padding:1rem;background:#f1efe8;border-radius:8px}table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}td,th{border:1px solid var(--appo-border);padding:.5rem .7rem;text-align:start}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}.screen-reader-text:focus{position:fixed;clip:auto;clip-path:none;height:auto;width:auto;top:12px;left:12px;z-index:99999;background:#fff;color:#111;border:2px solid #111;padding:.7rem 1rem}.appo-container{width:min(calc(100% - 2rem),var(--appo-width));margin-inline:auto}.site-header{background:var(--appo-surface);border-bottom:1px solid var(--appo-border)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1.3rem;padding:1.1rem 0}.brand{display:flex;align-items:center;gap:.8rem;min-width:0}.brand-copy{min-width:0}.brand-title{font-size:1.27rem;line-height:1.2;font-weight:800;letter-spacing:-.03em;margin:0}.brand-title a{text-decoration:none;color:var(--appo-ink)}.brand-description{color:var(--appo-muted);font-size:.78rem;margin:.18rem 0 0}.custom-logo{width:auto;max-width:66px;max-height:56px}.menu-list,.menu-list ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:1rem}.menu-list a{font-weight:600;text-decoration:none;font-size:.9rem}.site-main{min-width:0}.appo-hero{padding:2.8rem 0 1.3rem}.appo-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;color:var(--appo-accent);font-weight:800;margin:0 0 .55rem}.appo-hero h1{margin:0 0 .55rem}.appo-hero p:last-child{color:var(--appo-muted);max-width:70ch;margin:0}.appo-layout{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:1.5rem;align-items:start;padding:1rem 0 3rem}.appo-panel,.appo-post,.appo-page,.comment-body{background:var(--appo-surface);border:1px solid var(--appo-border);border-radius:var(--appo-radius)}.appo-panel{padding:1.25rem}.appo-panel h2{font-size:1.12rem;margin:0 0 .8rem}.appo-panel-subtitle{font-size:.82rem;color:var(--appo-muted);margin:0 0 .9rem}.appo-sidebar{position:sticky;top:1rem}.appo-category-tree,.appo-category-tree ul{list-style:none;padding:0;margin:0}.appo-category-tree li{margin:.16rem 0}.appo-category-tree ul{padding-inline-start:.78rem;border-inline-start:1px solid var(--appo-border);margin-inline-start:.5rem}.appo-category-line{display:flex;align-items:center;gap:.35rem;min-width:0}.appo-category-line a{min-width:0;flex:1;text-decoration:none;font-size:.87rem;font-weight:600}.appo-category-line a:hover{text-decoration:underline}.appo-category-count{flex:0 0 auto;background:#eae8df;color:#384449;padding:.06rem .47rem;border-radius:999px;font-size:.72rem;font-variant-numeric:tabular-nums}.appo-category-tree details>summary{cursor:pointer;list-style:none}.appo-category-tree details>summary::-webkit-details-marker{display:none}.appo-category-tree summary:before{content:'▸';font-size:.7rem;color:var(--appo-accent);margin-inline-end:.3rem;display:inline-block}.appo-category-tree details[open]>summary:before{transform:rotate(90deg)}.appo-category-tree summary{padding:.22rem 0}.appo-category-tree .appo-category-line{padding:.22rem 0}.appo-category-tree summary .appo-category-line{display:inline-flex;width:calc(100% - 1.4rem);vertical-align:middle}.appo-category-tree>li+li{border-top:1px solid #f0eee6}.appo-content-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.appo-content-header h2{font-size:1.15rem;margin:0}.appo-action{display:inline-flex;align-items:center;justify-content:center;background:var(--appo-accent);color:#fff;text-decoration:none;font-weight:700;padding:.52rem .8rem;border-radius:9px;font-size:.83rem}.appo-action:hover{color:#fff;background:#5f3509}.appo-post{padding:1.55rem;margin-bottom:1rem}.appo-post h2{font-size:clamp(1.3rem,2.4vw,1.7rem);margin:.45rem 0 .7rem}.appo-post h2 a{color:var(--appo-ink);text-decoration:none}.appo-post h2 a:hover{text-decoration:underline}.appo-meta{display:flex;flex-wrap:wrap;gap:.55rem;color:var(--appo-muted);font-size:.78rem;margin-bottom:.85rem}.appo-meta a{color:inherit}.appo-post .entry-summary{font-size:.96rem}.appo-post .entry-summary p:last-child{margin-bottom:0}.appo-post .entry-thumbnail{margin:0 0 1rem}.appo-post .entry-thumbnail img{width:100%;max-height:340px;object-fit:cover;border-radius:10px}.appo-post-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.2rem;padding-top:.85rem;border-top:1px solid var(--appo-border);font-size:.83rem}.appo-post-footer a{font-weight:650}.appo-page{padding:clamp(1.1rem,3vw,2.5rem)}.appo-page .entry-content>*{max-width:100%}.appo-page .entry-content img{height:auto}.appo-page .entry-content a{overflow-wrap:anywhere}.appo-page .entry-content .alignwide{margin-inline:-.3rem;max-width:calc(100% + .6rem)}.appo-page .entry-content .alignfull{max-width:100%}.appo-page .entry-content .wp-block-image{margin-block:1.4rem}.appo-page .entry-content>*:last-child{margin-bottom:0}.appo-nav-links{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1.2rem 0}.appo-pagination .page-numbers{display:inline-block;padding:.25rem .55rem;margin:.15rem;border:1px solid var(--appo-border);border-radius:7px}.appo-pagination .current{background:var(--appo-ink);color:white}.appo-empty{padding:1.5rem}.appo-search-form{display:flex;gap:.5rem}.appo-search-form input[type=search]{width:100%;min-width:0;border:1px solid #7c8589;border-radius:7px;background:white;padding:.5rem}.appo-search-form button,.comment-form input[type=submit]{border:0;background:var(--appo-accent);color:white;border-radius:7px;padding:.5rem .75rem;cursor:pointer;font-weight:700}.appo-search-form button:hover,.comment-form input[type=submit]:hover{background:#5f3509}.appo-search-panel{margin-top:1rem}.site-footer{border-top:1px solid var(--appo-border);background:var(--appo-surface);color:var(--appo-muted);font-size:.82rem;padding:1.5rem 0}.footer-inner{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer-inner p{margin:0}.footer-inner a{color:var(--appo-ink)}.comments-area{margin-top:1.5rem}.comments-area h2{font-size:1.2rem}.comment-list{list-style:none;margin:1rem 0;padding:0}.comment-list .children{list-style:none;margin:0 0 0 1.2rem;padding:0}.comment-body{padding:1rem;margin:0 0 .8rem}.comment-meta{font-size:.78rem;color:var(--appo-muted)}.comment-content{margin-top:.5rem}.comment-author .avatar{border-radius:50%;width:32px;height:32px;vertical-align:middle;margin-inline-end:.4rem}.comment-respond{margin:1.4rem 0}.comment-form label{display:block;font-weight:650;font-size:.88rem}.comment-form input:not([type=checkbox]):not([type=submit]),.comment-form textarea{display:block;width:100%;max-width:660px;border:1px solid #7c8589;border-radius:7px;padding:.5rem;background:white}.comment-form .comment-form-cookies-consent label{display:inline}.comment-reply-link,.edit-link{font-size:.82rem}.wp-caption,.gallery-caption{max-width:100%;color:var(--appo-muted);font-size:.84rem}.wp-caption-text{font-size:.84rem}.sticky{border-inline-start:4px solid var(--appo-accent)}.bypostauthor{position:relative}.alignleft{float:left;margin:.5rem 1.2rem 1rem 0}.alignright{float:right;margin:.5rem 0 1rem 1.2rem}.aligncenter{display:block;margin-inline:auto}.entry-content:after{content:"";display:block;clear:both}.wp-block-embed iframe{width:100%}.appo-category-label{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--appo-muted);font-weight:700}.appo-no-categories{color:var(--appo-muted);font-size:.83rem}
@media(max-width:800px){.header-inner{align-items:flex-start;flex-direction:column}.appo-layout{grid-template-columns:minmax(0,1fr)}.appo-sidebar{position:static}.appo-hero{padding-top:1.8rem}.appo-panel{padding:1rem}}@media(max-width:520px){body{font-size:17px}.appo-container{width:min(calc(100% - 1.2rem),var(--appo-width))}.appo-post{padding:1.1rem}.appo-page{padding:1.15rem}.menu-list{gap:.6rem 1rem}.appo-search-form{flex-wrap:wrap}.appo-search-form button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Optional front-page conversation composer supplied by a separately installed plugin. */
.appo-composer{padding:clamp(1rem,2.5vw,1.6rem);margin-bottom:1.25rem;background:var(--appo-surface);border:1px solid var(--appo-border);border-radius:var(--appo-radius)}
.appo-composer h2{font-size:1.25rem;margin:0 0 .25rem}.appo-composer>p{margin:.2rem 0 1rem;color:var(--appo-muted);font-size:.88rem}
.appo-composer label{font-size:.92rem;font-weight:700;display:block;margin-bottom:.35rem}
.appo-composer textarea,.appo-composer input[type=text],.appo-composer select{font:inherit;display:block;width:100%;color:var(--appo-ink);background:#fff;border:1px solid #858e91;border-radius:9px;padding:.8rem}
.appo-composer textarea{resize:vertical;min-height:145px;line-height:1.5}.appo-composer textarea:focus,.appo-composer input:focus,.appo-composer select:focus{outline:3px solid var(--appo-focus);outline-offset:2px}
.appo-composer details{border-top:1px solid var(--appo-border);margin-top:.85rem;padding-top:.75rem}.appo-composer summary{font-weight:650;cursor:pointer}.appo-composer .appo-composer-advanced{display:grid;gap:.8rem;margin:.8rem 0}
.appo-composer .appo-composer-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.85rem;margin-top:1rem}
.appo-composer button[type=submit]{background:var(--appo-accent);color:#fff;font:inherit;font-weight:750;border:0;border-radius:8px;padding:.65rem 1.35rem;cursor:pointer}.appo-composer button:hover{background:#5f3509}.appo-composer button:disabled{opacity:.65;cursor:wait}
.appo-composer-note{font-size:.78rem;color:var(--appo-muted);max-width:37rem}
.appo-composer-result{font-size:.9rem;font-weight:650;margin:.5rem 0 0}.appo-composer-result[data-state=success]{color:#225b39}.appo-composer-result[data-state=error]{color:#8d2630}
.appo-composer .appo-honeypot{position:absolute!important;left:-9999px!important;height:1px!important;width:1px!important;overflow:hidden!important}
@media(max-width:600px){.appo-composer{padding:1rem}.appo-composer button[type=submit]{width:100%}}

/* Pixel logo is crisp on all device densities. */
.appo-logo-link{display:inline-flex;align-items:center;justify-content:center;flex:none;line-height:1}
.appo-logo-link .appo-pixel-logo{display:block;width:64px;height:64px;object-fit:contain;image-rendering:pixelated}
@media(max-width:520px){.appo-logo-link .appo-pixel-logo{width:56px;height:56px}}

/* Version 0.2.4: compact navigation, searchable header, two latest articles. */
.appo-navigation-row{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.65rem 1rem}
.appo-navigation-row .menu-list{align-items:center}
.appo-header-search{display:flex;align-items:stretch;gap:.3rem;min-width:0;margin:0}
.appo-header-search input[type=search]{width:clamp(110px,13vw,180px);min-width:0;border:1px solid #858e91;border-radius:7px;padding:.38rem .55rem;background:#fff;color:var(--appo-ink);font-size:.86rem}
.appo-header-search button{border:0;background:var(--appo-accent);color:#fff;border-radius:7px;padding:.38rem .65rem;font-size:.83rem;cursor:pointer}
.appo-header-search button:hover{background:#5f3509}
.appo-latest-articles{background:var(--appo-surface);border:1px solid var(--appo-border);border-radius:var(--appo-radius);padding:1rem 1.2rem 1rem 2.3rem;margin:0 0 1rem;list-style:disc outside}
.appo-latest-articles li{margin:.2rem 0 .55rem;font-size:.85rem;line-height:1.45}
.appo-latest-articles a{font-weight:600;text-decoration:none}
.appo-latest-articles a:hover{text-decoration:underline}
.appo-latest-articles time{color:var(--appo-muted);font-size:.75rem;margin-inline-start:.4rem;white-space:nowrap}
@media(max-width:800px){.appo-navigation-row{justify-content:flex-start}}
@media(max-width:520px){.appo-navigation-row{gap:.65rem}.appo-header-search{flex:1 1 100%}.appo-header-search input[type=search]{width:auto;flex:1 1 auto}.appo-header-search button{flex:0 0 auto}}

/* 0.2.5: the homepage is only composer then compact recent posts, without the explore sidebar. */
.appo-home-layout{grid-template-columns:minmax(0,1fr);padding-top:0;}
.appo-home-layout .appo-content-header{margin-bottom:.5rem;}
.appo-home-layout .appo-content-header h2{font-size:1rem;}
.appo-home-layout .appo-latest-articles{max-width:none;padding:.75rem 1.1rem .75rem 2rem;}
.appo-home-layout .appo-latest-articles li{font-size:.8rem;line-height:1.45;margin:.15rem 0 .38rem;}
.appo-home-layout .appo-latest-articles time{font-size:.72rem;}

/* 0.2.6: dedicate the full reading width to the standalone sitemap. */
.appo-map-dedicated-layout{grid-template-columns:minmax(0,1fr)}
.appo-map-dedicated-layout .appo-page{max-width:100%}

/* 0.2.7: centered, more comfortable reading width on desktop homepage only. */
@media (min-width: 960px) {
  body.home .appo-container { width: min(calc(100% - 3rem), 880px); }
}

/* 0.2.8: small, notebook-yellow latest posts above the homepage composer. */
.appo-home-layout .appo-recent-note {
  background: #fff3b0;
  color: #332b19;
  border: 1px solid #d4b757;
  border-radius: var(--appo-radius);
  box-shadow: inset 5px 0 0 #cc9900;
  padding: .8rem 1.15rem .45rem;
  margin: 0 0 1.25rem;
}
.appo-home-layout .appo-recent-note .appo-content-header { margin-bottom: .35rem; }
.appo-home-layout .appo-recent-note .appo-content-header h2 { color: #332b19; font-size: 1rem; }
.appo-home-layout .appo-recent-note .appo-latest-articles {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0;
  padding: .2rem .15rem .45rem 1.2rem;
}
.appo-home-layout .appo-recent-note .appo-latest-articles a { color: #704006; }
.appo-home-layout .appo-recent-note .appo-latest-articles time { color: #574d31; }
.appo-home-layout .appo-recent-note .appo-empty { background: transparent; border: 0; padding: .1rem; }
@media(max-width:520px){
  .appo-home-layout .appo-recent-note{padding:.75rem .85rem .4rem;}
}
