/*
Theme Name: Futiao
Author: Futiao
Description: 蓝灰色轻量博客，左侧图文与悬浮信息条、蓝色热门文章栏、网格标签。按指定首页参考图制作。
Version: 1.0.11
Requires at least: 6.2
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: futiao
Tags: blog, two-columns, right-sidebar, custom-menu, featured-images
*/
:root{--page:#f0f4f6;--ink:#28445d;--muted:#748395;--blue:#318fda;--sidebar:#63849e;--line:#dce4ea;--white:#fff;--shadow:0 2px 3px #25465e19,0 9px 22px #25465e05;--sticky-top:24px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--page);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.7;overflow-wrap:break-word;font-variant-numeric:lining-nums tabular-nums}
a{color:inherit;text-decoration:none;transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s}
a:hover{color:var(--blue)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
button,input{border-radius:3px}
button{border:0;background:transparent}
input{min-width:0}
img,svg{vertical-align:middle}
img{max-width:100%}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
h1,h2,h3,p{margin-top:0}
.wrap{width:92%;max-width:1120px;margin-inline:auto}
.icon{width:19px;height:19px;flex:none}
.screen-reader-text,.skip-link{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{clip:auto;top:8px;left:8px;width:auto;height:auto;padding:10px 18px;background:#fff;z-index:1000}
.site-header{margin-top:7px;background:#fff;border-radius:3px;box-shadow:var(--shadow);position:relative;z-index:20}
.header-row{display:flex;align-items:center;flex-wrap:wrap;gap:0 36px;padding:0 28px;min-height:56px}
.site-name{font-weight:700;font-size:27px;line-height:1.3;letter-spacing:1px;max-width:250px;overflow-wrap:anywhere;padding:12px 0;flex:0 1 auto;order:0}
.site-nav{order:1;flex:1;min-width:0}
.header-tools{display:flex;gap:9px;align-items:center;flex:none;order:2;margin-left:auto}
.icon-button{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;border:1px solid transparent}
.icon-button:hover{color:var(--blue);background:#edf4f8}
.icon-button .icon{width:21px;height:21px}
.nav-toggle{display:none}
.header-menu,.header-menu .sub-menu,.footer-menu,.legal-menu{list-style:none;margin:0;padding:0}
.header-menu{display:flex;flex-wrap:wrap;justify-content:space-evenly;gap:0 12px}
.header-menu li{position:relative;min-width:0}
.header-menu>li{display:flex;align-items:center;flex-wrap:wrap}
.header-menu a{display:block;font-size:15px;font-weight:550;line-height:24px;padding:16px 6px;position:relative;overflow-wrap:anywhere}
.header-menu>li>a:before{content:"";position:absolute;top:7px;left:50%;width:7px;height:7px;transform:translateX(-50%);background:var(--blue);opacity:0}
.header-menu .current-menu-item>a,.header-menu .current-menu-ancestor>a,.header-menu a:hover,.footer-menu .current-menu-item>a{color:var(--blue)}
.header-menu>li.current-menu-item>a:before,.header-menu>li.current-menu-ancestor>a:before,.header-menu>li>a:hover:before{opacity:1}
.header-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:200px;max-width:280px;background:#fff;border:1px solid #e3eaf0;box-shadow:var(--shadow);padding:8px;z-index:30;border-radius:3px}
.header-menu .sub-menu a{padding:8px 10px;font-size:14px;line-height:22px}
.header-menu .sub-menu .sub-menu{left:calc(100% - 5px);top:0}
.header-menu li:hover>.sub-menu,.header-menu li:focus-within>.sub-menu,.header-menu li.submenu-open>.sub-menu{display:block}
.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:28px;padding:0;color:var(--muted)}
.submenu-toggle .icon{width:12px;height:12px;transform:rotate(90deg)}
.submenu-open>.submenu-toggle .icon{transform:rotate(-90deg)}
.site-nav.nav-enhanced .header-menu li:hover>.sub-menu,.site-nav.nav-enhanced .header-menu li:focus-within>.sub-menu{display:none}
.site-nav.nav-enhanced .header-menu li.submenu-open>.sub-menu{display:block}
.site-nav>.panel-heading{display:none}
.header-search{display:none;flex:0 0 100%;order:3;padding:16px 0 20px;border-top:1px solid var(--line)}
.header-search.is-open{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,50%);align-items:center;gap:24px}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;line-height:24px;color:var(--muted)}
.panel-heading .icon-button{width:32px;height:32px}
.search-panel-label{font-size:14px;line-height:24px;color:var(--muted);min-width:0}
.search-panel-controls{display:flex;gap:10px;align-items:center;min-width:0}
.search-panel-controls>.search-form{flex:1;min-width:0}
.search-panel-controls>.panel-close{flex:none}
.search-form{display:flex;align-items:stretch;min-width:0;background:#fff;border:1px solid #cfdde7;border-radius:3px;box-shadow:0 2px 3px #28445d08;overflow:hidden;height:43px}
.search-form:focus-within{border-color:var(--blue)}
.search-form input:focus,.search-form input:focus-visible{outline:0;box-shadow:none}
.search-form input{flex:1;min-width:0;width:100%;border:0;background:none;padding:9px 13px;line-height:23px;font-size:14px;outline:0}
.search-form input::placeholder{color:#8a99a7}
.search-form button{flex:0 0 42px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:0;border-left:1px solid #e3ebf0;line-height:1;font-size:14px}
.search-form button:hover{background:#edf4f9;color:var(--blue)}
.search-form button:focus-visible{outline-offset:-4px}
.site-main{padding-top:32px;padding-bottom:42px;min-height:60vh}
.page-grid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(0,1fr);gap:24px;align-items:stretch}
.main-column{min-width:0}
.post-list{display:grid;gap:27px;padding-top:9px}
.post-row{display:grid;grid-template-columns:33.3% minmax(0,1fr);column-gap:30px;position:relative;min-width:0;padding-bottom:4px}
.post-picture{display:block;aspect-ratio:6/5;min-width:0;align-self:center;border-radius:4px;overflow:hidden;box-shadow:0 2px 3px #24415a18}
.thumb-frame{display:block;width:100%;height:100%;position:relative;overflow:hidden;background:#dde7ed}
.thumb-frame>img,.thumb-frame>noscript>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;display:block}
/* One blue-grey floating-card placeholder for every content image; SVG is inline in CSS. */
:root{--futiao-placeholder-mark:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2264%22%20height%3D%2254%22%20viewBox%3D%220%200%2064%2054%22%3E%3Crect%20x%3D%225%22%20y%3D%225%22%20width%3D%2245%22%20height%3D%2236%22%20rx%3D%223%22%20fill%3D%22%23d6e3ec%22%20stroke%3D%22%238ba8bf%22%20stroke-width%3D%221.5%22%2F%3E%3Ccircle%20cx%3D%2238%22%20cy%3D%2215%22%20r%3D%223%22%20fill%3D%22%2390b1c9%22%2F%3E%3Cpath%20d%3D%22M7%2034L18%2023L27%2031L34%2025L48%2037%22%20fill%3D%22none%22%20stroke%3D%22%2383a6bf%22%20stroke-width%3D%222%22%20stroke-linejoin%3D%22round%22%2F%3E%3Crect%20x%3D%2217%22%20y%3D%2236%22%20width%3D%2243%22%20height%3D%2213%22%20rx%3D%222%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23c1d3e0%22%2F%3E%3Crect%20x%3D%2223%22%20y%3D%2240%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23398fd0%22%2F%3E%3Cpath%20d%3D%22M34%2042.5H53%22%20stroke%3D%22%2393adc0%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
.image-fallback,.futiao-placeholder:not(.loaded){background-color:#e2ebf1;background-image:var(--futiao-placeholder-mark),linear-gradient(135deg,#e8eff4,#d6e3ed);background-repeat:no-repeat;background-position:center,center;background-size:58px 49px,100% 100%}
.image-fallback{display:block;position:absolute;inset:0}
.futiao-placeholder:not(.loaded){color:transparent;font-size:0}
.futiao-placeholder.futiao-in-view:not(.loaded):not(.error):not(.is-failed){animation:futiao-placeholder-breathe 1.8s ease-in-out infinite}
.futiao-placeholder.loaded{background:none;animation:none;opacity:1}
@keyframes futiao-placeholder-breathe{0%,100%{opacity:1}50%{opacity:.62}}
.thumb-frame img.error{opacity:0}
.thumb-frame.is-loaded .image-fallback{display:none}
.entry-content img.futiao-placeholder:not(.loaded){aspect-ratio:var(--futiao-image-ratio,8/5);height:auto}
.entry-content img.futiao-auto-width:not(.loaded){width:100%}
.post-picture:hover .thumb-frame{filter:brightness(1.03)}
.post-copy{min-width:0;padding-top:23px;padding-bottom:62px}
.card-title{font-size:20px;line-height:29px;font-weight:650;margin:0 0 12px;min-width:0}
.card-title a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card-excerpt{font-size:15.5px;line-height:27px;color:var(--muted);margin:0;min-width:0}
.card-excerpt>span{display:none;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;max-height:81px}
.card-excerpt>.excerpt-wide{display:-webkit-box}
.floating-meta{position:absolute;bottom:0;left:calc(33.3% - 22px);right:0;display:flex;gap:0;align-items:center;min-width:0;min-height:42px;background:#fff;border-radius:3px;box-shadow:var(--shadow);font-size:12px;line-height:20px;padding:10px 23px;color:#52718b}
.floating-meta time{white-space:nowrap;flex:none}
.floating-meta .category-link{margin-left:26px;padding-left:26px;border-left:1px solid #d3dee6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42%;font-weight:600;line-height:16px}
.read-link{display:flex;gap:9px;align-items:center;margin-left:auto;padding-left:12px;white-space:nowrap;flex:none}
.read-link .icon{width:15px;height:15px}
.sidebar{min-width:0;position:relative}
.sidebar-sticky{position:sticky;top:var(--sticky-top);display:flex;flex-direction:column;gap:24px}
.popular-widget{padding:17px 15px 18px;background:var(--sidebar);border-radius:4px;box-shadow:0 2px 3px #28445d0b}
.widget-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.widget-heading h2{font-size:21px;line-height:29px;font-weight:650;margin:0;min-width:0;overflow-wrap:anywhere}
.popular-widget>.widget-heading{color:#fff}
.widget-heading>a{font-size:12px;line-height:20px;white-space:nowrap;display:flex;align-items:center;gap:2px;flex:none}
.widget-heading>a .icon{width:13px;height:13px}
.popular-widget>.widget-heading>a:hover{color:#d4eaff}
.popular-list{padding:0;margin:0;list-style:none;display:grid;gap:12px}
.popular-entry{background:#fff;border-radius:3px;display:grid;grid-template-columns:minmax(0,1fr) 33%;gap:13px;min-width:0;padding:10px;box-shadow:0 2px 4px #243a4f14}
.popular-entry:hover{background:#f4f9fd;box-shadow:0 3px 9px #28445d29}
.popular-copy{min-width:0;display:flex;flex-direction:column;justify-content:space-between;padding:10px 0 0 5px;gap:13px}
.popular-title{font-weight:650;font-size:15px;line-height:24px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.popular-copy time{align-self:flex-start;background:#edf2f6;padding:2px 10px;border-radius:2px;font-size:12px;line-height:20px;color:#7490a6;white-space:nowrap}
.popular-picture{display:block;aspect-ratio:6/7;overflow:hidden}
.tags-widget{padding:18px 15px 15px;background:#ffffff80;border-radius:4px}
.tags-widget .widget-heading{margin-bottom:16px}
.tag-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tag-tile{display:flex;align-items:center;justify-content:space-between;flex-direction:column;gap:9px;background:#eaf0f4;padding:11px 5px 9px;border-radius:3px;text-align:center;font-size:14px;line-height:22px;font-weight:600;min-width:0;overflow:hidden}
.tag-name{display:block;flex:none;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal}
.tag-count{display:inline-block;min-width:25px;padding:0 4px;color:#fff;background:linear-gradient(130deg,#40a3e8,#327dcb);border-radius:2px;line-height:22px;font-size:13px;font-weight:500}
.tag-tile:hover{background:#deebf4}
.pagination{margin-top:33px}
.pagination ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;list-style:none;margin:0;padding:0}
.pagination .page-numbers:not(ul){min-width:36px;height:38px;padding:7px 11px;display:flex;align-items:center;justify-content:center;background:#ffffffcf;border:1px solid #e4ebf0;border-radius:3px;font-size:14px;line-height:22px;gap:5px}
.pagination .page-numbers.current{background:linear-gradient(130deg,#36a0e6,#388dd4);color:#fff;border-color:#3999df}
.pagination a.page-numbers:hover{background:#dfeef8;border-color:#bfd8eb}
.pagination .dots{background:transparent}
.pagination .icon{width:13px;height:13px}
.site-footer{background:#fff;border-top:1px solid #edf1f4}
.footer-inner{padding:38px 20px 32px}
.footer-top{display:flex;align-items:center;gap:22px;min-width:0;padding-bottom:30px}
.footer-identity{display:flex;align-items:center;gap:26px;min-width:0;flex:1}
.footer-name{font-size:27px;font-weight:700;line-height:1.3;letter-spacing:1px;overflow-wrap:anywhere}
.footer-identity p{font-size:12px;line-height:21px;color:var(--muted);border-left:1px solid #8092a3;padding-left:21px;margin:0;max-width:260px}
.footer-nav{min-width:0}
.footer-menu{display:flex;flex-wrap:wrap;gap:10px 21px;align-items:center;font-size:12px;line-height:22px}
.footer-menu a{display:block}
.social-icons{display:flex;align-items:center;gap:12px;flex:none;color:#152b3d}
.social-icons>a,.social-icons>span{display:inline-flex;align-items:center;justify-content:center;width:25px;height:29px}
.social-icons .icon{width:21px;height:21px}
.footer-bottom{border-top:1px solid #e6ecf0;padding-top:12px;display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;font-size:12px;line-height:21px;color:var(--muted)}
.legal-menu{display:flex;flex-wrap:wrap;gap:10px}
.legal-menu li+li{border-left:1px solid #d2dce4;padding-left:10px}
/* Secondary pages carry the reference's blue-grey rails and quiet, floating metadata. */
.breadcrumbs{margin:0 0 22px;color:#768da1;font-size:13px;line-height:23px;min-width:0}
.breadcrumbs ol{display:flex;list-style:none;margin:0;padding:0;white-space:nowrap;min-width:0;overflow:hidden;align-items:center}
.breadcrumbs li{display:flex;align-items:center;min-width:0;flex:0 1 auto}
.breadcrumbs li:first-child{flex-shrink:0}
.breadcrumbs li+li:before{content:"";width:8px;height:10px;margin-inline:11px;background:#63849e;clip-path:polygon(0 0,42% 0,100% 50%,42% 100%,0 100%,56% 50%);flex:0 0 8px}
.breadcrumbs a,.breadcrumbs li>span{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;min-width:0}
.breadcrumbs .icon{width:14px;height:14px;margin-right:6px;vertical-align:-2px}
.breadcrumbs .crumb-current{flex-shrink:2;color:#496a83}
.reading-sheet{background:#ffffffa6;border-radius:4px;box-shadow:0 2px 4px #28445d07;min-width:0}
.entry-content{padding:28px 30px 30px;font-size:16px;line-height:1.9;min-width:0;color:#3d5366;overflow-wrap:anywhere}
.entry-content>:first-child{margin-top:0}
.entry-content>:last-child{margin-bottom:0}
.entry-content p{margin-bottom:1.5em}
.entry-content h1{font-size:23px;line-height:1.6;margin:1.8em 0 .8em;color:var(--ink)}
.entry-content h2{font-size:21px;line-height:1.65;margin:1.6em 0 .8em;color:var(--ink)}
.entry-content h3{font-size:18px;line-height:1.7;margin:1.5em 0 .7em;color:var(--ink)}
.entry-content h4,.entry-content h5,.entry-content h6{font-size:16px;line-height:1.75}
.entry-content a{color:#277db7;text-decoration:underline;text-underline-offset:3px}
.entry-content img{max-width:100%;height:auto;object-fit:contain}
.entry-content figure{max-width:100%;margin:1.6em 0}
.entry-content figcaption,.wp-caption-text{font-size:13px;line-height:1.8;color:var(--muted);text-align:center;margin-top:9px}
.entry-content .emoji,.entry-content .wp-smiley{width:1em!important;height:1em!important;max-height:1em!important;display:inline!important;vertical-align:-.13em!important;margin:0 .04em!important;box-shadow:none!important;object-fit:contain}
.entry-content blockquote{margin:1.6em 0;padding:16px 22px;background:#f5eddf;color:#53718b;border-left:0}
.entry-content blockquote p:last-child{margin-bottom:0}
.entry-content ul,.entry-content ol{padding-left:1.7em;margin-block:1.2em}
.entry-content li{padding-left:.25em;margin-block:.35em}
.entry-content li::marker{color:#658ba8}
.entry-content hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.entry-content pre{max-width:100%;overflow:auto;background:#e9eff4;border:1px solid #d7e2ea;border-radius:3px;padding:18px;font-size:13px;line-height:1.8;tab-size:4;white-space:pre;overflow-wrap:normal}
.entry-content code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.87em;background:#e7eff5;padding:2px 5px;border-radius:2px}
.entry-content pre code{font-size:inherit;padding:0;background:transparent}
.entry-content table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse;font-size:14px;margin:1.5em 0}
.entry-content th,.entry-content td{border:1px solid #cedce6;padding:10px 14px;min-width:100px}
.entry-content th{background:#e8f0f6;text-align:left}
.entry-content iframe,.entry-content video{max-width:100%}
.entry-content .alignwide,.entry-content .alignfull{margin-inline:0;max-width:100%}
.entry-content .alignleft{float:left;margin:5px 22px 14px 0}
.entry-content .alignright{float:right;margin:5px 0 14px 22px}
.entry-content:after{content:"";display:table;clear:both}
.wp-caption{max-width:100%}
.page-heading{padding:28px 30px 20px;border-bottom:1px solid #dce6ed}
.page-heading h1{font-size:26px;line-height:1.6;margin:0}
.empty-state{border-top:3px solid #86a4bb;border-bottom:1px solid #cfdee9;padding:38px 18px 43px;text-align:center}
.empty-symbol{color:#99afbf;display:block;margin-bottom:15px}
.empty-symbol .icon{width:35px;height:35px;stroke-width:1}
.empty-state h2{font-size:21px;line-height:1.6;margin:0 0 10px}
.empty-state p{font-size:14px;line-height:25px;color:var(--muted);margin:0 0 18px}
.back-home{display:inline-flex;align-items:center;gap:10px;background:#fff;padding:9px 17px;border-radius:3px;box-shadow:var(--shadow);font-size:14px;line-height:22px}
.back-home .icon{width:15px;height:15px}
.missing-page{max-width:840px;margin:45px auto 65px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:42px;align-items:center}
.missing-number{color:#7296b1;font-size:110px;font-weight:300;line-height:1.3;border-right:1px solid #c9dce9;padding-right:25px}
.missing-copy h1{font-size:26px;line-height:1.6;margin:0 0 12px}
.missing-copy p{font-size:15px;color:var(--muted);line-height:1.8;margin:0 0 22px}
.missing-copy .search-form{margin-bottom:20px}
.post-password-form label{display:block;font-size:14px}
.post-password-form input{max-width:100%;border:1px solid #c8d8e3;padding:9px 12px;background:#fff;line-height:24px;font-size:14px}
.post-password-form input[type=submit]{margin-top:10px;background:#638ba9;color:#fff;cursor:pointer}
.content-pages{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:25px;font-size:14px}
.content-pages>.post-page-numbers{min-width:34px;text-align:center;padding:5px 9px;border:1px solid #d4e1ea;border-radius:3px}
.content-pages>.current{background:#648aa7;color:#fff}

/* Secondary components follow the reference's white floating strips and blue-grey backing. */
.article-heading{padding:18px 20px 0;background:#dfe9f0;border-radius:4px 4px 0 0;min-width:0}
.article-title-strip{position:relative;margin-left:-20px;margin-right:7px;padding:19px 26px 19px 32px;background:#fff;border-radius:3px;box-shadow:var(--shadow);min-width:0}
.article-title-strip:before{content:"";position:absolute;left:13px;top:32px;width:6px;height:6px;background:var(--blue)}
.entry-title{font-size:24px;line-height:1.6;font-weight:650;margin:0;overflow-wrap:anywhere}
.article-meta-bar{padding:15px 3px 15px 12px;min-width:0}
.post-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;font-size:12px;line-height:22px;color:#536f85}
.post-meta-main,.post-meta-byline{display:flex;align-items:center;gap:15px;min-width:0;max-width:100%}
.post-meta-main{flex:1 1 260px}
.post-meta-byline{flex:0 1 auto}
.meta-category{display:block;min-width:0;max-width:12em;padding:2px 10px;background:#fff;color:#426c8c;font-size:12px;line-height:24px;font-weight:600;border-radius:2px;box-shadow:0 1px 2px #28445d12;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.post-meta-main time,.view-count,.author-link{display:inline-flex;align-items:center;gap:6px;min-width:0}
.post-meta-main time,.view-count{flex:none;white-space:nowrap}
.post-meta .icon{width:15px;height:15px;flex:none;color:#7290a6}
.author-link{max-width:13em}
.author-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.article-tags{display:flex;flex-wrap:wrap;gap:10px 12px;padding:0 30px 27px}
.article-tags a{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;padding:4px 11px 4px 4px;border-radius:3px;background:#e5eef4;color:#436e8e;font-size:13px;line-height:24px;box-shadow:0 2px 3px #28445d0c}
.article-tag-mark{display:inline-flex;align-items:center;justify-content:center;flex:none;width:25px;height:25px;background:#fff;color:#3189c9;border-radius:2px;box-shadow:0 1px 2px #28445d12;font-size:15px}
.article-tag-name{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.article-tags a:hover{background:#d5e7f4;color:#216998;box-shadow:0 3px 7px #28445d15}
.reading-directions{display:grid;gap:12px;margin-top:25px;min-width:0}
.reading-directions>a{display:flex;align-items:stretch;min-width:0;border-radius:3px;background:#e0eaf1;padding:6px;gap:6px}
.direction-edge{flex:0 0 82px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#526f87;font-size:12px;line-height:21px}
.direction-edge .icon{width:18px;height:18px;color:#658ba8}
.direction-copy{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px;background:#fff;padding:11px 17px;border-radius:2px;box-shadow:var(--shadow)}
.direction-title{display:block;min-width:0;font-size:15px;line-height:25px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.direction-copy time{font-size:11px;line-height:18px;color:#7d93a5}
.direction-next .direction-edge{order:2}
.direction-next .direction-copy{text-align:right}
.reading-directions>a:hover .direction-edge,.reading-directions>a:hover .direction-edge .icon{color:#247fbc}
.reading-directions>a:hover .direction-copy{background:#fafdff}
.related-section{margin-top:30px;min-width:0}
.related-heading{display:flex;align-items:center;gap:17px;margin-bottom:16px}
.related-heading h2{margin:0;font-size:20px;line-height:29px;font-weight:650;flex:none}
.related-heading>span{height:5px;flex:1;background:linear-gradient(to right,#b8cddd,#e4edf3);border-radius:1px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;min-width:0}
.related-item{min-width:0;background:#e0eaf1;border-radius:3px}
.related-item>a{display:block;min-width:0;padding:12px 8px 8px;border-radius:3px}
.related-top{display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:0 4px 12px}
.related-date{display:flex;flex-direction:column;gap:3px;align-items:flex-start;flex:none;color:#6c879b}
.related-day{font-size:29px;line-height:1.1;font-weight:500;color:#507795}
.related-month{font-size:11px;line-height:18px;white-space:nowrap}
.related-picture{display:block;flex:0 1 82px;width:82px;min-width:0;aspect-ratio:6/5;border-radius:2px;overflow:hidden}
.related-title-strip{display:flex;align-items:center;gap:7px;min-width:0;background:#fff;padding:10px 10px;border-radius:2px;box-shadow:var(--shadow)}
.related-title-strip h3{flex:1;min-width:0;margin:0;font-size:15px;line-height:24px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.related-title-strip>.icon{width:14px;height:14px;color:#7899b1}
.related-item>a:hover{background:#d3e5f1}
.related-item>a:hover h3{color:#247fbc}
.archive-heading{display:grid;grid-template-columns:82px minmax(0,1fr);gap:18px;align-items:start;margin:0 0 25px;min-width:0}
.archive-index{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0;padding:13px 7px;background:#6788a1;color:#fff;border-radius:3px;box-shadow:0 2px 3px #28445d0c}
.archive-kind{font-size:13px;line-height:22px;letter-spacing:2px;white-space:nowrap}
.archive-count{display:flex;flex-direction:column;align-items:center;gap:2px;max-width:100%;min-width:0}
.archive-count strong{font-size:20px;line-height:26px;font-weight:500;max-width:100%;overflow-wrap:anywhere}
.archive-count>span{font-size:10px;line-height:18px;color:#e3edf5;white-space:nowrap}
.archive-body{min-width:0;padding-top:10px}
.archive-title-strip{position:relative;background:#fff;padding:13px 19px 13px 27px;box-shadow:var(--shadow);border-radius:3px}
.archive-title-strip:before{content:"";position:absolute;left:11px;top:27px;width:5px;height:5px;background:#3997d7}
.archive-title-strip h1{margin:0;font-size:26px;line-height:1.5;font-weight:650;min-width:0;overflow-wrap:anywhere}
.archive-description,.archive-search-term{color:#728597;font-size:14px;line-height:26px;margin:13px 0 0;padding-inline:8px;overflow-wrap:anywhere}
.archive-description p:last-child{margin-bottom:0}
.child-categories{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0 0;padding-inline:8px;font-size:12px;line-height:22px}
.child-categories a{display:block;max-width:100%;padding:3px 10px;background:#e2edf4;border-radius:2px;color:#4c7594;overflow-wrap:anywhere}
.child-categories a:hover{background:#d1e5f3;color:#287bb4}
.archive-search-form{margin:13px 0 0;padding-inline:8px}

@media(min-width:1051px) and (max-width:1249px){
 .card-excerpt>.excerpt-wide{display:none}.card-excerpt>.excerpt-desk{display:-webkit-box}
 .post-copy{padding-top:17px;padding-bottom:51px}.card-title{font-size:19px;line-height:28px;margin-bottom:9px}.card-excerpt{font-size:15px;line-height:25px}.card-excerpt>span{max-height:75px}
 .post-row{column-gap:26px}.floating-meta{padding:9px 20px;min-height:39px}.popular-entry{gap:10px;padding:9px}.popular-title{font-size:14px;line-height:23px}.popular-copy{padding:6px 0 0 3px}.popular-copy time{padding-inline:7px;font-size:11px}
 .tag-grid{gap:10px}.tag-tile{font-size:13px;padding-inline:4px}.footer-top{gap:17px}.footer-identity{gap:18px}.footer-identity p{padding-left:16px;max-width:205px}.footer-menu{gap:9px 15px}
}
@media(min-width:761px) and (max-width:1050px){
 .wrap{width:94%}.header-row{padding-inline:24px;gap:0 22px}.site-name{font-size:25px;max-width:180px}.header-menu{gap:0 6px}.header-menu a{font-size:14px;padding-inline:5px}
 .site-main{padding-top:25px}.page-grid{gap:20px;grid-template-columns:minmax(0,2.3fr) minmax(0,1fr)}.post-row{column-gap:24px}.post-list{gap:24px;padding-top:8px}.post-copy{padding-top:10px;padding-bottom:41px}.card-title{font-size:18px;line-height:26px;margin-bottom:8px}.card-excerpt{font-size:14px;line-height:23px}.card-excerpt>span{max-height:69px}.card-excerpt>.excerpt-wide{display:none}.card-excerpt>.excerpt-narrow{display:-webkit-box}
 .floating-meta{padding:8px 20px;min-height:36px;font-size:11px;line-height:20px}.floating-meta .category-link{padding-left:22px;margin-left:22px}
 .popular-widget{padding:15px 12px}.widget-heading{margin-bottom:15px;gap:8px}.widget-heading h2{font-size:19px;line-height:28px}.popular-list{gap:11px}.popular-entry{padding:8px;gap:9px;grid-template-columns:minmax(0,1fr) 33%}.popular-copy{padding:8px 0 0 3px;gap:10px}.popular-title{font-size:13px;line-height:22px}.popular-copy time{font-size:10px;line-height:18px;padding:2px 6px}.tags-widget{padding:16px 12px 12px}.tag-grid{gap:10px}.tag-tile{font-size:13px;padding:10px 4px 8px;gap:8px}.tag-count{font-size:12px;line-height:20px;min-width:24px}.sidebar-sticky{gap:22px}
 .footer-inner{padding-inline:16px}.footer-top{gap:15px}.footer-identity{gap:18px}.footer-name{font-size:25px}.footer-identity p{font-size:11px;padding-left:15px;max-width:190px}.footer-menu{gap:7px 15px;font-size:11px}.social-icons{gap:8px}.social-icons .icon{width:19px;height:19px}.entry-content{padding:25px 24px}
}
@media(min-width:951px) and (max-width:1050px){.card-excerpt>.excerpt-narrow{display:none}.card-excerpt>.excerpt-desk{display:-webkit-box}.post-copy{padding-top:18px;padding-bottom:45px}}
@media(min-width:761px) and (max-width:850px){
 .wrap{width:94%}.page-grid{grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:18px}.post-row{column-gap:18px}.post-copy{padding-top:7px}.card-title{font-size:17px;line-height:25px;margin-bottom:6px}.card-excerpt{font-size:13px;line-height:21px}.card-excerpt>span{max-height:63px}.floating-meta{padding-inline:13px;left:calc(33.3% - 16px)}.floating-meta .category-link{padding-left:16px;margin-left:16px}.read-link{gap:5px}.tag-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.popular-copy{padding-top:2px}.popular-title{font-size:12.5px}.popular-copy time{padding-inline:3px;font-size:10px}.footer-top{flex-wrap:wrap}.footer-identity{flex-basis:55%}.footer-nav{order:2;width:100%}.social-icons{margin-left:auto}.header-row{gap:0 14px}.header-menu a{font-size:13px}.site-name{font-size:23px;max-width:135px}
}
@media(max-width:760px){
 .wrap{width:calc(100% - 32px);max-width:650px}.site-header{margin-top:10px}.header-row{min-height:60px;padding:0 16px;gap:0 14px}.site-name{font-size:25px;line-height:32px;padding:13px 0;max-width:calc(100% - 95px)}.header-tools{order:1;gap:4px}.icon-button{width:36px;height:36px}.nav-toggle{display:inline-flex}
 .site-main{padding-top:25px;padding-bottom:32px}.page-grid{display:block}.sidebar{display:none}.post-list{gap:23px;padding-top:0}.post-row{grid-template-columns:33.3% minmax(0,1fr);gap:0 23px}.post-copy{padding-top:17px;padding-bottom:48px}.card-title{font-size:19px;line-height:28px;margin-bottom:9px}.card-excerpt{font-size:14px;line-height:24px}.card-excerpt>span{max-height:48px;-webkit-line-clamp:2}.card-excerpt>.excerpt-wide{display:none}.card-excerpt>.excerpt-tablet{display:-webkit-box}.floating-meta{font-size:11px;line-height:20px;min-height:36px;padding:8px 17px;left:calc(33.3% - 17px)}.floating-meta .category-link{margin-left:20px;padding-left:20px;max-width:45%;line-height:16px}.read-link{gap:6px}.read-link .icon{width:14px;height:14px}.pagination{margin-top:28px}.pagination ul{gap:7px}.pagination .page-numbers:not(ul){min-width:34px;height:38px;padding:7px 9px;font-size:13px}
 .footer-inner{padding:25px 3px 22px}.footer-top{flex-wrap:wrap;gap:17px 12px;padding-bottom:21px}.footer-identity{flex:1;gap:18px}.footer-name{font-size:24px}.footer-identity p{font-size:11px;line-height:20px;padding-left:15px;max-width:260px}.social-icons{gap:7px}.social-icons>a,.social-icons>span{width:25px;height:30px}.social-icons .icon{width:20px;height:20px}.footer-nav{order:2;flex:0 0 100%}.footer-menu{gap:8px 20px;font-size:12px;line-height:22px}.footer-bottom{font-size:11px;line-height:20px;padding-top:12px;gap:8px}
 .breadcrumbs{font-size:12px;line-height:22px;margin-bottom:18px}.breadcrumbs li+li:before{margin-inline:8px}.breadcrumbs .icon{width:13px;height:13px}.entry-content{font-size:15px;line-height:1.95;padding:24px 20px}.entry-content h1{font-size:19px}.entry-content h2{font-size:18px}.entry-content h3{font-size:16px}.entry-content h4,.entry-content h5,.entry-content h6{font-size:15px}.entry-content blockquote{padding:13px 16px}.entry-content pre{font-size:12px;padding:14px}.entry-content th,.entry-content td{padding:8px 10px}
 .page-heading{padding:23px 20px 17px}.page-heading h1{font-size:23px}.empty-state{padding:30px 15px 35px}.empty-state h2{font-size:19px}.empty-state p{font-size:13px}.missing-page{display:block;margin:17px auto 32px;max-width:450px}.missing-number{font-size:78px;line-height:1.3;border-right:0;border-bottom:1px solid #c9dce9;padding:0 0 14px;margin-bottom:24px}.missing-copy h1{font-size:23px}.missing-copy p{font-size:14px}
}
@media(max-width:580px){
 .post-row{grid-template-columns:33.3% minmax(0,1fr);column-gap:18px}.post-copy{padding-top:9px;padding-bottom:42px}.card-title{font-size:17px;line-height:25px;margin-bottom:7px}.card-excerpt{font-size:13px;line-height:22px}.card-excerpt>span{max-height:44px}.card-excerpt>.excerpt-tablet{display:none}.card-excerpt>.excerpt-mobile{display:-webkit-box}.floating-meta{left:calc(33.3% - 12px);min-height:32px;padding:6px 12px;font-size:10px;line-height:20px}.floating-meta .category-link{margin-left:13px;padding-left:13px;line-height:14px}.read-link{font-size:10px;gap:4px;padding-left:7px}.read-link .icon{width:12px;height:12px}.post-list{gap:23px}.footer-identity{flex:0 0 100%}.footer-nav{flex:1;order:1}.social-icons{order:2}.footer-menu{gap:6px 14px}.footer-name{font-size:23px}.footer-top{gap:17px}.site-name{font-size:23px}
}
@media(max-width:420px){
 .wrap{width:calc(100% - 28px)}.header-row{padding-inline:13px}.site-nav,.header-search{margin-inline:-13px;flex-basis:calc(100% + 26px)}.post-row{grid-template-columns:34% minmax(0,1fr);gap:0 15px}.post-copy{padding-top:3px;padding-bottom:30px}.post-picture{align-self:center}.card-title{font-size:16px;line-height:24px;margin-bottom:5px}.card-excerpt{font-size:12.5px;line-height:21px}.card-excerpt>span{max-height:42px}.card-excerpt>.excerpt-mobile{display:none}.card-excerpt>.excerpt-small{display:-webkit-box}.floating-meta{left:calc(34% - 10px);min-height:30px;padding:5px 10px;font-size:10px}.floating-meta .category-link{margin-left:9px;padding-left:9px;max-width:35%}.read-link{gap:3px;padding-left:6px}.post-list{gap:21px}.pagination ul{gap:5px}.pagination .page-numbers:not(ul){min-width:30px;height:36px;padding:6px 8px;font-size:12px}.pagination .prev span,.pagination .next span{display:none}.pagination .prev .icon,.pagination .next .icon{width:15px;height:15px}.entry-content{padding:22px 17px}.footer-menu{gap:5px 11px;font-size:11px}.footer-bottom{font-size:10px}.footer-identity p{max-width:none}.footer-top{gap:16px 10px}.social-icons{gap:4px}
}

@media(max-width:760px){
 .article-heading{padding:13px 14px 0}
 .article-title-strip{margin-left:-14px;margin-right:2px;padding:16px 18px 16px 28px}
 .article-title-strip:before{left:12px;top:29px;width:5px;height:5px}
 .entry-title{font-size:20px;line-height:1.65}
 .article-meta-bar{padding:12px 2px 13px}
 .post-meta{display:grid;grid-template-columns:minmax(0,1fr) max-content minmax(0,.9fr) minmax(0,1fr);align-items:center;font-size:11px;line-height:22px;gap:7px;white-space:nowrap}
 .post-meta-main,.post-meta-byline{display:contents}
 .meta-category{font-size:11px;line-height:22px;max-width:100%;padding:2px 6px}
 .post-meta-main time,.view-count,.author-link{gap:4px}
 .view-count{max-width:100%;overflow:hidden;justify-content:center}
 .view-count>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .author-link{max-width:100%;justify-content:flex-end}
 .post-meta .icon{width:13px;height:13px}
 .article-tags{padding:0 20px 23px;gap:8px}
 .article-tags a{font-size:12px;line-height:22px;padding:3px 9px 3px 3px;gap:6px}
 .article-tag-mark{width:23px;height:23px;font-size:14px}
 .reading-directions{gap:10px;margin-top:22px}
 .reading-directions>a{padding:5px;gap:5px}
 .direction-edge{flex-basis:62px;font-size:11px;line-height:20px;gap:3px}
 .direction-edge .icon{width:16px;height:16px}
 .direction-copy{padding:9px 12px;gap:2px}
 .direction-title{font-size:14px;line-height:24px}
 .direction-copy time{font-size:10px;line-height:18px}
 .related-section{margin-top:25px}
 .related-heading{gap:14px;margin-bottom:13px}
 .related-heading h2{font-size:18px;line-height:27px}
 .related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
 .related-item>a{padding:10px 7px 7px}
 .related-top{padding:0 3px 10px;gap:7px}
 .related-picture{flex-basis:clamp(54px,16vw,78px);width:clamp(54px,16vw,78px)}
 .related-day{font-size:25px}
 .related-month{font-size:10px;line-height:17px}
 .related-title-strip{padding:9px 8px;gap:5px}
 .related-title-strip h3{font-size:14px;line-height:23px}
 .related-title-strip>.icon{width:12px;height:12px}
 .archive-heading{display:flex;flex-direction:column;gap:0;margin-bottom:22px}
 .archive-index{width:100%;flex-direction:row;justify-content:space-between;gap:12px;padding:7px 13px;border-radius:3px 3px 0 0}
 .archive-kind{font-size:12px;line-height:22px}
 .archive-count{flex-direction:row;gap:5px}
 .archive-count strong{font-size:13px;line-height:22px}
 .archive-count>span{font-size:10px;line-height:22px}
 .archive-body{width:100%;padding-top:0;min-width:0}
 .archive-title-strip{padding:13px 15px 13px 27px;border-radius:0 0 3px 3px}
 .archive-title-strip h1{font-size:23px;line-height:1.5}
 .archive-title-strip:before{top:26px}
 .archive-description,.archive-search-term{font-size:13px;line-height:24px;margin-top:11px;padding-inline:4px}
 .child-categories{margin-top:11px;padding-inline:4px;gap:7px}
 .archive-search-form{margin-top:12px;padding-inline:0}
 .header-row{--panel-inset:16px}
 .header-tools .icon-button{border-radius:3px;background:#edf3f7;border-color:#e1eaf0}
 .header-tools .icon-button[aria-expanded=true]{background:#63849e;color:#fff;border-color:#63849e}
 .site-nav{display:none;order:2;flex:0 0 calc(100% + var(--panel-inset)*2);margin-inline:calc(-1*var(--panel-inset));border-top:0;background:#63849e;padding:9px 12px 14px;border-radius:0 0 3px 3px;min-width:0}
 .site-nav.is-open{display:block}
 .site-nav>.panel-heading{display:flex;margin:0 2px 8px;color:#fff;font-size:13px;line-height:24px}
 .site-nav .panel-heading>span:before,.search-panel-label>span:before{content:"";display:inline-block;vertical-align:2px;width:5px;height:5px;background:#c7e5f8;margin-right:9px}
 .site-header .panel-heading .icon-button{width:36px;height:36px;color:inherit}
 .site-header .panel-heading .icon-button:hover{background:#ffffff20;color:#fff}
 .site-header .panel-heading .icon-button:focus-visible,.search-panel-controls>.panel-close:focus-visible{outline-color:#fff;outline-offset:-3px}
 .header-menu{display:flex;flex-direction:column;gap:8px;padding:0;margin:0;background:none;box-shadow:none}
 .header-menu>li{display:grid;grid-template-columns:minmax(0,1fr) auto;background:#fff;border:0;border-radius:2px;box-shadow:0 2px 3px #28445d1c;min-width:0}
 .header-menu a{font-size:15px;line-height:24px;padding:11px 15px 11px 27px;min-width:0;overflow-wrap:anywhere}
 .header-menu>li>a:before{width:5px;height:5px;left:12px;top:21px;transform:none;background:#cad9e4;opacity:1}
 .header-menu>li.current-menu-item>a:before,.header-menu>li.current-menu-ancestor>a:before,.header-menu>li>a:hover:before{background:var(--blue)}
 .header-menu>li.current-menu-item,.header-menu>li.current-menu-ancestor{background:#f1f8fd}
 .submenu-toggle{width:44px;height:44px;border-left:1px solid #e6edf2;margin-right:2px;color:#567f9d;border-radius:0 2px 2px 0}
 .submenu-toggle:hover,.submenu-toggle[aria-expanded=true]{background:#e8f2f9;color:#2f88c7}
 .header-menu .sub-menu{display:none;position:static;grid-column:1/-1;flex:0 0 100%;min-width:0;max-width:100%;width:auto;background:#eef4f8;border:0;border-left:2px solid #bdd1e0;box-shadow:none;margin:0 10px 10px 14px;padding:2px 0 2px 7px;border-radius:0}
 .header-menu .sub-menu li{display:flex;align-items:center;flex-wrap:wrap;min-width:0}
 .header-menu .sub-menu a{font-size:14px;line-height:23px;padding:9px 8px;flex:1;min-width:0}
 .header-menu .sub-menu .sub-menu{position:static;margin-left:8px;flex-basis:calc(100% - 18px)}
 .header-menu li:hover>.sub-menu,.header-menu li:focus-within>.sub-menu{display:none}
 .header-menu li.submenu-open>.sub-menu{display:block}
 .header-menu a:focus-visible{outline-offset:-4px}
 .header-search{display:none;flex:0 0 calc(100% + var(--panel-inset)*2);margin-inline:calc(-1*var(--panel-inset));padding:9px 12px 16px;border-top:0;background:#63849e;border-radius:0 0 3px 3px;min-width:0}
 .header-search.is-open{display:block}
 .search-panel-label{color:#fff;font-size:13px;line-height:24px;margin:4px 2px 11px}
 .search-panel-controls>.panel-close{color:#fff;width:36px;height:44px;background:#ffffff12;border-radius:2px}
 .search-panel-controls>.panel-close:hover{background:#ffffff24}
 .header-search .search-form{height:47px;border-color:#d9e4ec;box-shadow:0 2px 4px #28445d24}
 .header-search .search-form:focus-within{border-color:#58b4ee}
 .header-search .search-form input{font-size:14px;line-height:24px;padding:10px 12px}
 .header-search .search-form button{flex-basis:48px;border-left:1px solid #d7e4ee;background:#edf4f9;color:#467da6}
 .header-search .search-form button:hover{background:#dbeefa;color:#236fa5}
 .search-form{height:44px}
 .search-form input{font-size:14px;line-height:24px;padding:9px 12px}
 .search-form button{flex-basis:44px}
}
@media(max-width:420px){
 .header-row{--panel-inset:13px}
 .article-tags{padding-inline:17px}
 .related-grid{gap:11px}
 .related-title-strip{padding-inline:7px}
 .related-title-strip h3{font-size:13px}
 .related-title-strip>.icon{display:none}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{body{background:#fff}.site-header,.site-footer,.sidebar,.breadcrumbs,.reading-directions,.related-section,.article-tags{display:none}.wrap{width:100%;max-width:none}.page-grid{display:block}.reading-sheet{box-shadow:none}.entry-content{font-size:12pt;color:#000}}

/* WordPress centering applies to the image AND its lazy-loading shell. */
.entry-content img.aligncenter:not(.lazy),
.entry-content figure.aligncenter,
.entry-content .wp-caption.aligncenter{display:block;float:none;margin-left:auto!important;margin-right:auto!important}
html:not(.no-js) .entry-content .aligncenter,
html:not(.no-js) .entry-content :is(span,picture,a):has(>img.aligncenter),
html:not(.no-js) .entry-content :is(span,a):has(>picture>img.aligncenter){display:block;float:none;margin-left:auto!important;margin-right:auto!important}
