/* Tzungshiun Lab: homepage-only styling, scoped beneath .ts-home. */
body.home .site-header,body.home .site-footer{display:none}
body.home .site-content{padding:0!important;background:#f5f8fa}
body.home .site-content>.ast-container{max-width:none;width:100%;padding:0;display:block}
body.home #primary{width:100%;margin:0;padding:0;float:none}
body.home #secondary{display:none}
body.home .site-content .ast-container .entry-content{margin:0}
.ts-home{--ts-bg:#f5f8fa;--ts-text:#182b38;--ts-muted:#667e8b;--ts-accent:#087f79;--ts-border:#dce7eb;font-family:'Noto Sans TC',system-ui,sans-serif;color:var(--ts-text);font-size:16px;line-height:1.7;background:var(--ts-bg);position:relative;isolation:isolate}
.ts-home:before{content:"";position:absolute;inset:0 0 auto;height:680px;z-index:-1;background:radial-gradient(ellipse at 80% 3%,#d8f2ee,transparent 52%),linear-gradient(#fff,transparent)}
.ts-home *{box-sizing:border-box}.ts-home a{text-decoration:none;color:inherit}.ts-home a:hover{color:var(--ts-accent)}.ts-home img{max-width:100%}.ts-home button{font:inherit}
.ts-home .ts-wrap{max-width:1220px;padding:0 30px;margin:auto}.ts-topline{height:4px;background:linear-gradient(90deg,#087f79,#68b2cd,#c6e9ee)}
.ts-header{position:sticky;top:0;z-index:30;border-bottom:1px solid #e2e9ed;background:#fffffff0;backdrop-filter:blur(18px);box-shadow:0 5px 24px #284b5810}
body.admin-bar .ts-header{top:32px}
.ts-nav{min-height:83px;display:flex;gap:24px;align-items:center;justify-content:space-between}
.ts-brand{display:flex;align-items:center;gap:14px;flex:none}.ts-brand-logo{width:58px;height:58px;object-fit:contain;border-radius:50%;display:block}
.ts-brand strong{display:block;color:#182b38;font-size:20px;font-weight:800;letter-spacing:.05em;line-height:1.5}.ts-brand small{display:block;color:#7f97a3;font:10px 'DM Mono',monospace;letter-spacing:.09em;white-space:nowrap}
.ts-links{display:flex;align-items:center;gap:26px;color:#496170;font-size:13px;font-weight:700}.ts-links .is-active{color:var(--ts-accent)}.ts-menu-toggle{display:none;background:#eff6f7;border:1px solid #d3e3e7;border-radius:8px;color:#456777;width:42px;height:42px;cursor:pointer}
.ts-mobile-links{display:none}.ts-hero{padding:89px 0 78px;display:grid;grid-template-columns:1.16fr .84fr;gap:42px;align-items:center}.ts-eyebrow,.ts-section-head small,.ts-art-top,.ts-art-foot,.ts-art-tile small,.ts-card-content small,.ts-card-content time,.ts-feature-copy>small,.ts-topic small{font-family:'DM Mono',monospace;letter-spacing:.07em;font-size:11px}
.ts-eyebrow{color:var(--ts-accent);display:flex;gap:12px;align-items:center;letter-spacing:.12em}.ts-dot{height:7px;width:7px;border-radius:50%;background:#0ba59c;box-shadow:0 0 14px #72d7ce;display:inline-block}
.ts-hero h1{font-size:clamp(42px,5vw,70px);line-height:1.25;letter-spacing:-.065em;margin:23px 0 20px;font-weight:800;color:#182b38}.ts-hero h1 span{color:var(--ts-accent)}.ts-hero-copy>p{max-width:550px;color:#5b7381;font-size:17px;line-height:2;margin:0}
.ts-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:32px}.ts-home .ts-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 21px;border:1px solid #c5d8df;background:#fff;color:#2a4a57;font-size:13px;font-weight:700;border-radius:8px;line-height:1.5;min-height:46px;transition:transform .2s}.ts-home .ts-btn:hover{transform:translateY(-2px);color:#087f79}.ts-home .ts-primary{background:#087f79;border-color:#087f79;color:#fff}.ts-home .ts-primary:hover{color:#fff;background:#066b67}
.ts-hero-art{border:1px solid #d0e3e9;border-radius:23px;background:linear-gradient(145deg,#fff,#e9f4f5);padding:23px;box-shadow:0 25px 80px #478a901b;min-width:0}.ts-art-top{display:flex;justify-content:space-between;color:#678692}.ts-dots{color:#50aaa3;letter-spacing:4px}.ts-art-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.ts-art-tile{height:130px;border:1px solid #cee3e5;border-radius:12px;background:#e9f5f6;padding:14px;position:relative;overflow:hidden}.ts-art-tile:nth-child(2){background:#e5f5ed}.ts-art-tile:nth-child(3){background:#edf0fb}.ts-art-tile:nth-child(4){background:#f5edf2}.ts-art-tile small{color:#167d7a}.ts-art-tile b{position:absolute;right:10px;top:5px;font-size:54px;font-weight:800;color:#b8d8dc;line-height:1.3}.ts-art-tile:nth-child(2) b{color:#b4dacd}.ts-art-tile:nth-child(3) b{color:#c8d0ed}.ts-art-tile:nth-child(4) b{color:#e4cdda}.ts-art-tile>span{position:absolute;bottom:12px;left:14px;font-weight:600;font-size:12px}.ts-art-foot{border-top:1px solid #d2e4e6;color:#4a8584;margin-top:16px;padding-top:14px;display:flex;justify-content:space-between;gap:8px}
.ts-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--ts-border);border-radius:13px;background:#fff;margin-bottom:75px;box-shadow:0 8px 25px #264f6610;overflow:hidden}.ts-stats>div{min-width:0;padding:21px 25px;display:flex;gap:14px;align-items:center;border-right:1px solid #e3eaee}.ts-stats>div:last-child{border:0}.ts-stats>div>span{font-size:22px;color:#087f79}.ts-stats p{margin:0;line-height:1.6}.ts-stats b{display:block;font-size:13px}.ts-stats small{font-size:10px;color:#78929f;letter-spacing:.05em}
.ts-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.ts-section-head small{display:block;color:#087f79;margin-bottom:8px;letter-spacing:.12em}.ts-section-head h2{font-size:29px;line-height:1.4;letter-spacing:-.04em;margin:0;font-weight:800;color:#182b38}
.ts-feature{display:grid;grid-template-columns:1.15fr .85fr;min-height:370px;background:#fff;border:1px solid var(--ts-border);border-radius:18px;overflow:hidden;box-shadow:0 15px 40px #2b4e5d10;margin-bottom:22px}.ts-feature-photo{display:block;min-height:300px;background:#e2eded}.ts-feature-photo img{display:block;width:100%;height:100%;object-fit:cover}.ts-feature-copy{padding:37px 40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.ts-chip{display:inline-block;font:11px 'DM Mono',monospace;color:#087f79;background:#e8f6f2;border:1px solid #c4e4d9;padding:5px 10px;border-radius:4px}.ts-feature h3{font-size:24px;line-height:1.55;letter-spacing:-.04em;margin:17px 0 12px;font-weight:800}.ts-feature-copy p{color:#607a89;font-size:13px;line-height:1.9;margin:0 0 19px}.ts-feature-copy>small{color:#8499a4}.ts-feature-copy .ts-btn{margin-top:22px}
.ts-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ts-card{border:1px solid var(--ts-border);border-radius:13px;background:#fff;overflow:hidden;min-width:0;box-shadow:0 9px 28px #2b4e5d0c;transition:transform .2s,border-color .2s}.ts-card:hover{border-color:#0f8c85;transform:translateY(-3px)}.ts-card-photo{display:block;height:196px;background:linear-gradient(135deg,#e8f2f4,#dce9ec);overflow:hidden}.ts-card-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}.ts-card:hover img{transform:scale(1.025)}.ts-image-fallback{height:100%;display:flex;align-items:center;justify-content:center;font:15px 'DM Mono',monospace;color:#599c9a}.ts-card-content{padding:22px}.ts-card-content small{color:#087f79}.ts-card h3{font-size:17px;font-weight:700;line-height:1.6;margin:10px 0 17px;min-height:55px}.ts-card-content time{color:#8499a4}
.ts-topics{margin:76px 0}.ts-topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.ts-topic{min-height:166px;padding:25px;border:1px solid var(--ts-border);border-radius:12px;background:linear-gradient(145deg,#fff,#f2f8fa);box-shadow:0 7px 22px #2c56640b;display:flex;flex-direction:column;justify-content:space-between;transition:border-color .2s}.ts-topic:hover{border-color:#0b8c85}.ts-topic-icon{font-size:29px;color:#087f79;line-height:1.4}.ts-topic b{display:block;font-size:16px}.ts-topic small{display:block;color:#7894a0;margin-top:3px;font-size:10px}
.ts-about{margin:0 0 90px;border:1px solid #cde5e3;border-radius:17px;padding:33px;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;background:linear-gradient(110deg,#e4f5f2,#eef6fb)}.ts-about img{width:76px;height:76px;object-fit:contain;border-radius:50%}.ts-about h2{font-size:19px;font-weight:800;color:#182b38;margin:0 0 4px}.ts-about p{font-size:13px;color:#617f8a;margin:0}.ts-about .ts-btn{white-space:nowrap}.ts-footer{border-top:1px solid var(--ts-border);padding:33px 0 46px;color:#718a98;font-size:12px}.ts-footer .ts-wrap{display:flex;justify-content:space-between;gap:14px}
@media(max-width:1020px){.ts-links{gap:14px}.ts-hero{gap:20px}.ts-feature h3{font-size:21px}.ts-feature-copy{padding:25px}.ts-topic-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.ts-home .ts-wrap{padding:0 18px}.ts-nav{min-height:70px}.ts-links{display:none}.ts-menu-toggle{display:block}.ts-mobile-links.is-open{display:flex;flex-direction:column;background:#fff;border-top:1px solid var(--ts-border)}.ts-mobile-links a{padding:13px 20px;border-bottom:1px solid #e7eff2;font-size:14px}.ts-hero{grid-template-columns:1fr;padding:52px 0 35px}.ts-hero h1{font-size:43px}.ts-hero-art{max-width:520px}.ts-stats{grid-template-columns:repeat(2,1fr);margin-bottom:52px}.ts-stats>div:nth-child(2){border-right:0}.ts-stats>div:nth-child(-n+2){border-bottom:1px solid #e3eaee}.ts-section-head h2{font-size:25px}.ts-feature{grid-template-columns:1fr}.ts-feature-photo{height:270px;min-height:0}.ts-feature-copy{padding:27px}.ts-cards{grid-template-columns:1fr 1fr}.ts-card-photo{height:155px}.ts-card-content{padding:17px}.ts-card h3{font-size:14px}.ts-topic{min-height:144px;padding:18px}.ts-topics{margin:55px 0}.ts-about{grid-template-columns:auto 1fr}.ts-about .ts-btn{grid-column:1/-1;justify-self:start}.ts-footer .ts-wrap{display:block}.ts-brand-logo{width:50px;height:50px}}
@media(max-width:480px){.ts-cards{grid-template-columns:1fr}.ts-card-photo{height:205px}.ts-hero h1{font-size:38px}.ts-hero-copy>p{font-size:15px}.ts-art-top,.ts-art-foot{font-size:9px}.ts-brand strong{font-size:17px}.ts-brand small{font-size:8px}.ts-art-tile{height:112px}.ts-stats>div{padding:15px}.ts-stats small{font-size:9px}}
@media(max-width:782px){body.admin-bar .ts-header{top:46px}}
@media(prefers-reduced-motion:reduce){.ts-home *, .ts-home *:before, .ts-home *:after{scroll-behavior:auto!important;transition:none!important}}

/* v1.1.0: standard centered hamburger icon; the button's aria-label remains accessible. */
@media(max-width:760px){
  .ts-home .ts-menu-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    padding:0;
    font-size:0;
    line-height:0;
    color:#27666b;
    background:#eef7f6;
    border:1px solid #d2e4e3;
    border-radius:10px;
  }
  .ts-home .ts-menu-toggle::before{
    content:"";
    display:block;
    width:20px;
    height:2px;
    background:currentColor;
    border-radius:2px;
    box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor;
  }
}

/* v1.2.3: text-only search entry shared by the homepage and article archives. */
.ts-home .ts-links .ts-search-trigger{
  background:transparent;border:0;padding:0;color:#496170;
  font:inherit;font-weight:700;cursor:pointer;line-height:inherit;
}
.ts-home .ts-links .ts-search-trigger:hover,
.ts-home .ts-links .ts-search-trigger[aria-expanded="true"]{color:#087f79}
.ts-home .ts-search-panel[hidden]{display:none!important}
.ts-home .ts-search-panel{
  position:absolute;top:100%;left:0;right:0;z-index:35;
  background:#fffffff7;border-bottom:1px solid #dce7eb;
  box-shadow:0 16px 35px #284b581c;
}
.ts-home .ts-site-search-form{max-width:640px;padding-top:22px;padding-bottom:25px}
.ts-home .ts-site-search-form label{display:block;font-size:12px;font-weight:700;color:#496b78;margin-bottom:9px}
.ts-home .ts-site-search-form>div{display:flex;gap:10px}
.ts-home .ts-site-search-form input{
  flex:1;min-width:0;min-height:45px;background:#fff;color:#182b38;
  border:1px solid #cee0e5;border-radius:8px;padding:10px 14px;font:inherit;font-size:14px;
}
.ts-home .ts-site-search-form button{
  border:0;background:#087f79;color:#fff;padding:10px 23px;
  font:inherit;font-size:13px;font-weight:700;border-radius:8px;cursor:pointer;
}
.ts-home .ts-site-search-form button:hover{background:#066b67}
@media(max-width:760px){
  .ts-home .ts-mobile-links .ts-search-trigger{
    display:block;width:100%;padding:13px 20px;text-align:left;
    background:#fff;border:0;border-bottom:1px solid #e7eff2;
    color:#496170;font-size:14px;font-weight:700;cursor:pointer;
  }
  .ts-home .ts-site-search-form{padding-top:18px;padding-bottom:20px}
}
