/* Native Typecho theme layout, responsive corrections and interactive states. */
*{box-sizing:border-box}body{margin:0}a{color:#174f7b;text-decoration:none}a:hover{text-decoration:underline}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}h1,h2,h3,h4,p{margin-top:0}p{margin-bottom:16px}h1{line-height:1.2}ul,ol{padding-left:24px}li{margin-bottom:7px}h1,h2,h3,p,a,li,label{overflow-wrap:anywhere}button,a,input,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid #1976d2;outline-offset:3px}[id]{scroll-margin-top:28px}.layui-container{width:min(1140px,calc(100% - 48px));margin:auto;min-width:0}.brand-row{display:flex;align-items:center;gap:18px;min-height:62px}.site-header .logo{padding:12px 0;line-height:1.3}.mobile-note{margin-left:auto;font-size:12px;color:#b7c1ce}.search-toggle,.nav-toggle{border:1px solid #596c84;color:#fff;background:transparent;border-radius:4px;padding:8px 12px;flex-shrink:0}.main-menu{display:flex;gap:5px;list-style:none;padding:0}.main-menu>li{display:flex;align-items:center;position:relative;margin:0}.main-menu>li>a{display:block;padding:17px 15px}.submenu-toggle{color:#cfd8dc;background:none;border:0;padding:12px 6px;margin-left:-12px}.submenu{display:none;position:absolute;top:100%;left:0;z-index:50;min-width:220px;list-style:none;background:#1b2938;padding:8px 0;margin:0;box-shadow:0 8px 18px #0003}.submenu li{margin:0}.submenu a{display:block;padding:10px 18px}.submenu a:hover{background:#24394f}.main-menu>li:hover>.submenu,.main-menu>li:focus-within>.submenu,.main-menu>li.expanded>.submenu{display:block}.layui-btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;line-height:1.5;border:1px solid #142132;border-radius:3px;font-size:14px;white-space:normal;text-align:center}.layui-btn-lg{padding:11px 22px;font-size:16px}.layui-btn-sm{padding:7px 12px;font-size:13px}.cta-group .layui-btn{min-width:180px;margin:0}.program-card{display:flex;flex-direction:column}.program-card p{flex:1;margin-top:12px}.program-card .layui-btn{align-self:flex-start;margin-top:auto}.card-grid,.media-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card-grid>*,.media-grid>*,.two-col>*{min-width:0}.media-card{overflow:visible}.media-card .thumb{height:240px;aspect-ratio:auto;overflow:visible;background:#f1f4f7;box-shadow:none}.media-card .thumb img{object-fit:contain;padding:10px}.media-card:hover .thumb img{transform:none}.media-card h3{min-height:4em}.media-card p{min-height:8em}.card-link{margin-top:auto;font-size:13px;font-weight:600}.no-cover{height:100%;display:flex;align-items:center;justify-content:center;color:#607080;font:20px Georgia,serif}.contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-card p{overflow-wrap:anywhere}.footer-cols{grid-template-columns:repeat(5,minmax(0,1fr));gap:25px}.footer-cols ul{padding:0}.article-detail{padding-top:45px;max-width:900px;margin:auto}.article-detail h1{font-size:clamp(26px,3.2vw,40px);max-width:1000px;margin-bottom:20px}.article-detail.book-detail{max-width:none}.book-columns{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:45px}.detail-cover{margin:0}.detail-cover img{width:100%;max-height:440px;object-fit:contain}.article-body{font-size:16px;line-height:1.85;min-width:0}.article-body p{margin:0 0 22px}.article-body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}.article-body td,.article-body th{border:1px solid #ccd5df;padding:10px}.bowker-link{border-top:1px solid #dce4ed;padding-top:22px;margin-top:30px!important}.related{max-width:900px;margin:auto;padding-top:40px}.related ul{list-style:none;padding:0}.related li{padding:12px 0;border-bottom:1px solid #e2e8f0}.related time{display:block;font-size:12px;color:#607d8b}.pagination{margin-top:32px;gap:12px}.pagination a,.pagination .current{padding:7px 12px;border:1px solid #c9d5e2;border-radius:4px}.pagination [aria-current],.page-navigator .current a{background:#142132;color:#fff}.page-navigator{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}.page-navigator li{margin:0}.page-navigator .current{border:0;padding:0}.page-navigator a{display:block}.search-inline{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:30px}.search-inline input{flex:1;min-width:150px}.search-inline label{width:100%}.search-results-title{font-size:24px!important}input,textarea{padding:11px 12px;border:1px solid #aebecd;border-radius:4px;background:#fff;color:#25384a;max-width:100%;min-width:0}textarea{resize:vertical}.form-container{max-width:800px}.contact-form{display:grid;gap:12px}.contact-form label{font-weight:600}.contact-form button{justify-self:start;margin-top:6px}.feedback{padding:18px;margin:20px 0;border:1px solid #7ca38a;border-radius:5px;background:#eaf7ee}.feedback.error{background:#fff0ed;border-color:#bf7464}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}dialog{width:min(580px,calc(100% - 32px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:10px;color:#25384a}dialog::backdrop{background:#081524bd}.search-panel{padding:32px}.search-panel h2{font-size:26px;padding-right:20px}.search-panel form{display:grid;gap:12px}.search-close{position:absolute;top:7px;right:13px;border:0;background:none;font-size:30px;color:#25384a}.empty-state{padding:32px;background:#f1f5f9}details{border:1px solid #dce4ed;margin:12px 0;padding:16px;border-radius:5px}summary{cursor:pointer;font-weight:600}details p{margin:16px 0 0}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-cards{grid-template-columns:repeat(4,minmax(0,1fr))}footer.site-footer{margin-top:30px}
@media(max-width:1000px){.card-grid,.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-row{flex-wrap:wrap;padding:10px 0;gap:10px}.site-header .logo{padding:0;flex:1}.mobile-note{order:4;width:100%;margin:0}.site-header{position:static!important}.top-nav{display:none}.top-nav.open{display:block}.main-menu{display:block;padding:12px 0}.main-menu>li{flex-wrap:wrap}.main-menu>li>a{padding:10px 0;flex:1}.submenu-toggle{margin:0;padding:10px 18px}.submenu{position:static;width:100%;box-shadow:none}.main-menu>li:hover>.submenu,.main-menu>li:focus-within>.submenu{display:none}.main-menu>li.expanded>.submenu{display:block}.nav-toggle{display:inline-flex}.footer-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.layui-container{width:calc(100% - 36px)}.site-header .logo{font-size:19px;flex-basis:100%}.brand-row .mobile-note{flex:1;width:auto;order:0;font-size:11px}.brand-row{gap:8px}.search-toggle,.nav-toggle{font-size:12px;padding:7px 9px;margin:0}.hero{padding:56px 0}.hero h1{font-size:32px}.hero p.lead{font-size:16px}.cta-group{align-items:stretch}.cta-group .layui-btn{flex-basis:100%}.section{padding:38px 0}.section h2{font-size:26px}.page-hero{padding:38px 0}.page-hero h1{font-size:30px}.card-grid,.media-grid,.two-col,.contact-cards,.book-columns{grid-template-columns:minmax(0,1fr)}.stat-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{padding:18px 10px}.stat h4{font-size:28px}.stat span{font-size:11px}.footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.media-card h3,.media-card p{min-height:0}.media-card .thumb{height:270px}.book-columns{gap:25px}.detail-cover img{max-height:260px}.article-detail{padding-top:25px}.article-detail h1{font-size:28px;line-height:1.2}.article-body{font-size:15px}.search-panel{padding:26px 20px}.search-panel h2{font-size:23px}.pagination{font-size:13px}.pagination>span{width:100%}.search-inline input{width:100%}.contact-card{padding:20px 16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Navigation: a compact white dropdown with a clear active row. */
.main-menu>li>a{padding:15px 17px;border-radius:5px;transition:background .16s,color .16s}
.main-menu>li.expanded>a{background:#20354a;color:#fff}
.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:36px;margin-left:-10px;margin-right:6px;border-radius:5px}
.submenu-toggle:hover{background:#294158}
.menu-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .16s}
.expanded>.submenu-toggle .menu-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.main-menu>li:hover>.submenu,.main-menu>li:focus-within>.submenu{display:none}
.main-menu>li.expanded>.submenu{display:block}
.submenu{min-width:268px;padding:8px;background:#fff;border:1px solid #dce5ee;border-top:3px solid #48b4dd;border-radius:0 0 9px 9px;box-shadow:0 16px 32px #07182e26;top:100%}
nav.top-nav .submenu a{color:#263e54!important;font-size:14px;line-height:1.5;padding:12px 14px;border-radius:5px;text-decoration:none;transition:background .16s,color .16s}
nav.top-nav .submenu a:hover,nav.top-nav .submenu a:focus-visible{background:#edf5fa;color:#12658d!important;text-decoration:none}
.submenu li+li{border-top:1px solid #eef2f6}
@media(max-width:1000px){
 .main-menu>li>a{padding:12px 10px}
 .submenu-toggle{margin:0 0 0 8px;width:40px;height:40px}
 .submenu{min-width:0;margin:5px 0 12px;padding:6px;border-radius:8px;box-shadow:none;border:1px solid #3a5066;background:#1c3044}
 nav.top-nav .submenu a{color:#e5edf4!important;padding:12px 14px}
 nav.top-nav .submenu a:hover,nav.top-nav .submenu a:focus-visible{background:#2b455f;color:#fff!important}
 .submenu li+li{border-color:#34495e}
}
