.lt-shell{--lt-canvas:#f8f5ec;--lt-surface:#fff;--lt-text:#243a35;--lt-muted:#52645d;--lt-primary:#294843;--lt-hover:#203a35;--lt-sage:#a7bca5;--lt-pink:#e6b7c5;--lt-gold:#d7be8d;--lt-blue:#96bec7;--lt-line:#d8dfd8;--lt-border:#718178;--lt-focus:#2f6872;--lt-danger:#a63d47;color:var(--lt-text);background:var(--lt-canvas);font:400 1rem/1.65 -apple-system,BlinkMacSystemFont,"PingFang TC","Microsoft JhengHei",sans-serif;min-height:100vh;isolation:isolate;text-align:left}
.lt-shell *,.lt-shell *:before,.lt-shell *:after{box-sizing:border-box}.lt-shell [hidden]{display:none}.lt-shell a{color:inherit;text-decoration:none}.lt-shell img{display:block;max-width:100%;height:auto}.lt-shell svg{flex-shrink:0;vertical-align:middle}.lt-shell button,.lt-shell input,.lt-shell select{font:inherit}.lt-shell a:focus-visible,.lt-shell button:focus-visible,.lt-shell summary:focus-visible{outline:3px solid var(--lt-focus);outline-offset:4px}.lt-shell h1,.lt-shell h2,.lt-shell h3,.lt-shell p,.lt-shell figure{margin:0}.lt-shell h1,.lt-shell h2,.lt-shell h3{color:var(--lt-text);font-weight:700}.lt-shell h2{font-size:1.5rem;line-height:1.4}.lt-shell h3{font-size:1.25rem;line-height:1.4}.lt-shell p{color:var(--lt-muted)}.lt-shell .lt-wrap{width:calc(100% - 64px);max-width:1200px;margin-inline:auto}.lt-shell .lt-section{padding-block:32px;margin-block:32px;scroll-margin-top:100px}.lt-shell .lt-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.16em;color:var(--lt-muted);margin-bottom:12px}.lt-shell .lt-quiet{font-size:.875rem;margin-top:16px}.lt-shell .lt-label{display:inline-flex;align-items:center;font-size:.875rem;color:var(--lt-muted);margin-bottom:8px}.lt-shell .lt-unavailable{display:inline-block;font-size:.875rem;color:var(--lt-muted)}
.lt-shell .lt-skip{position:absolute;left:20px;top:-100px;padding:12px;background:var(--lt-primary);color:white;z-index:100}.lt-shell .lt-skip:focus{top:12px}.lt-shell .lt-header{background:rgba(248,245,236,.98);border-bottom:1px solid var(--lt-line);position:relative;z-index:30}.lt-shell .lt-header-inner{max-width:1440px;padding:20px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.lt-shell .lt-brand{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:200px;flex-shrink:0;line-height:1.2}.lt-shell .lt-brand>svg{width:28px;height:28px;color:#9d596e}.lt-shell .lt-brand strong{font-family:"Noto Serif TC","PMingLiU",serif;font-size:1.6rem;letter-spacing:.12em}.lt-shell .lt-brand>span{width:100%;font-size:.75rem;letter-spacing:.12em;color:var(--lt-muted)}.lt-shell .lt-brand img{object-fit:contain;max-height:44px;width:auto}.lt-shell .lt-desktop-nav{display:flex;align-items:center;gap:24px;white-space:nowrap}.lt-shell .lt-desktop-nav>a{font-size:.875rem;min-height:44px;display:flex;align-items:center;border-bottom:2px solid transparent}.lt-shell .lt-desktop-nav>a:hover,.lt-shell .lt-desktop-nav [aria-current]{border-color:var(--lt-primary)}.lt-shell .lt-header-actions{display:flex;align-items:center;gap:16px}.lt-shell .lt-message-link{padding:10px;display:flex}.lt-shell details{position:relative}.lt-shell summary{list-style:none;cursor:pointer;min-height:44px;display:flex;gap:12px;align-items:center;font-size:.875rem}.lt-shell summary::-webkit-details-marker{display:none}.lt-shell details>nav{position:absolute;right:0;top:calc(100% + 10px);width:220px;padding:12px;border:1px solid var(--lt-line);border-radius:16px;background:#fff;box-shadow:0 12px 30px #243a3514}.lt-shell details nav>a,.lt-shell details nav>span{display:block;padding:10px 12px;border-radius:8px}.lt-shell details nav>a:hover{background:var(--lt-canvas)}.lt-shell .lt-menu{display:none}
.lt-shell .lt-hero{display:grid;grid-template-columns:1fr 1.18fr;gap:48px;align-items:center;padding-block:64px 40px}.lt-shell .lt-season{display:flex;gap:8px;font-size:.875rem;align-items:center;margin-bottom:20px}.lt-shell .lt-season svg{width:18px;height:18px}.lt-shell .lt-hero h1{font-family:"Noto Serif TC","PMingLiU",serif;font-size:2.75rem;line-height:1.38;letter-spacing:.03em;margin-bottom:20px}.lt-shell .lt-hero h1 span{color:#8a4a61}.lt-shell .lt-lead{font-size:1rem;line-height:1.9}.lt-shell .lt-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:24px}.lt-shell .lt-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 22px;border-radius:12px;border:1px solid transparent;font-size:.9375rem;font-weight:500;line-height:1.5;transition:background .18s,color .18s}.lt-shell .lt-button svg{width:20px;height:20px}.lt-shell .lt-primary{background:var(--lt-primary);color:#fff}.lt-shell .lt-primary:hover{background:var(--lt-hover)}.lt-shell .lt-secondary{border-color:var(--lt-border);background:transparent;color:var(--lt-primary)}.lt-shell .lt-secondary:hover{background:#edf1e9}.lt-shell .lt-button:active{transform:translateY(1px)}.lt-shell .lt-button:disabled{background:#e5e9e4;color:var(--lt-muted);cursor:wait}.lt-shell .lt-hero-scene{position:relative;border-radius:28px;overflow:hidden;background:#e5eeeb;border:1px solid #dce4de}.lt-shell .lt-hero-scene picture{display:block}.lt-shell .lt-hero-scene img{width:100%;aspect-ratio:16/9;object-fit:cover}.lt-shell .lt-hero-scene figcaption{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#eaf0e8;gap:16px}.lt-shell .lt-hero-scene small{display:block;color:var(--lt-muted);font-size:.75rem;margin-bottom:4px}.lt-shell .lt-hero-scene strong{font-size:1rem}.lt-shell .lt-hero-scene figcaption a{display:flex;align-items:center;justify-content:center;border:1px solid var(--lt-border);border-radius:50%;width:44px;height:44px;flex-shrink:0}.lt-shell .lt-welcome{display:flex;justify-content:space-between;align-items:center;gap:20px;border-block:1px solid var(--lt-line);padding:22px 0}.lt-shell .lt-welcome>div{display:flex;align-items:center;gap:16px}.lt-shell .lt-welcome p strong{display:block;color:var(--lt-text)}.lt-shell .lt-welcome p span{font-size:.875rem}.lt-shell .lt-text-link{display:inline-flex;gap:8px;align-items:center;min-height:44px;font-size:.9375rem;font-weight:500;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#a7bca5}.lt-shell .lt-text-link:hover{text-decoration-color:var(--lt-primary)}.lt-shell .lt-text-link svg{width:18px;height:18px}.lt-shell .lt-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.lt-shell .lt-section-heading p:not(.lt-eyebrow){margin-top:10px;font-size:.9375rem}
.lt-shell .lt-members-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.lt-shell .lt-member-card{background:white;border:1px solid var(--lt-line);border-radius:16px;overflow:hidden;transition:box-shadow .18s}.lt-shell .lt-member-card:hover{box-shadow:0 8px 26px #243a3510}.lt-shell .lt-member-photo{aspect-ratio:4/5;overflow:hidden;background:#e6ece4;display:flex;align-items:center;justify-content:center}.lt-shell .lt-member-photo>svg{width:70px;height:70px;color:var(--lt-muted)}.lt-shell .lt-member-photo img{width:100%;height:100%;object-fit:cover}.lt-shell .lt-member-info{padding:20px}.lt-shell .lt-member-info p{margin:6px 0 14px;font-size:.875rem}.lt-shell .lt-member-info span{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;border-top:1px solid var(--lt-line);padding-top:14px}.lt-shell .lt-trust-note{display:flex;align-items:center;gap:12px;margin-top:24px;font-size:.875rem}.lt-shell .lt-trust-note span{margin-left:8px}.lt-shell .lt-empty{padding:32px;border:1px solid var(--lt-line);border-radius:16px;background:#fff;text-align:center}.lt-shell .lt-empty>svg{width:32px;height:32px;margin-bottom:14px}.lt-shell .lt-empty h3{font-size:1.125rem;margin-bottom:8px}.lt-shell .lt-empty p{font-size:.9375rem;margin-bottom:12px}
.lt-shell .lt-date-section{background:#eaf0e7;margin-block:32px;padding-block:56px;scroll-margin-top:24px}.lt-shell .lt-date-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:64px;align-items:center}.lt-shell .lt-date-grid h2{font-size:2rem;margin-bottom:16px;font-family:"PMingLiU",serif}.lt-shell .lt-date-grid .lt-text-link{margin-top:12px}.lt-shell .lt-date-options,.lt-shell .lt-explore-side{display:grid;gap:16px}.lt-shell .lt-card{display:flex;gap:20px;background:#fff;border:1px solid var(--lt-line);border-radius:16px;padding:24px;align-items:flex-start}.lt-shell .lt-card h3{font-size:1.125rem;margin-bottom:8px}.lt-shell .lt-card p{font-size:.9375rem}.lt-shell .lt-icon-tile{background:#edf0e6;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;flex-shrink:0}.lt-shell .lt-blue{background:#dcebef}.lt-shell .lt-pink{background:#f4e5eb}.lt-shell .lt-stories{display:grid;grid-template-columns:1.1fr 1fr;gap:48px}.lt-shell .lt-story{display:flex;gap:16px;padding:22px 0;border-bottom:1px solid var(--lt-line)}.lt-shell .lt-story-icon{border-radius:50%;background:#ebece3;width:44px;height:44px;display:grid;place-items:center;flex-shrink:0}.lt-shell .lt-story>div{min-width:0;width:100%}.lt-shell .lt-story-meta{display:flex;justify-content:space-between;gap:12px}.lt-shell .lt-story time{font-size:.875rem;color:var(--lt-muted)}.lt-shell .lt-story p{font-size:.9375rem;margin-top:8px;overflow-wrap:anywhere}.lt-shell .lt-event{display:flex;align-items:center;gap:16px;background:white;border:1px solid var(--lt-line);border-radius:12px;margin-bottom:12px;padding:20px}.lt-shell .lt-event>span{font-size:.875rem;white-space:nowrap}.lt-shell .lt-event h3{font-size:1rem;flex:1}.lt-shell .lt-explore-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}.lt-shell .lt-town-card{display:block;border:1px solid var(--lt-line);background:#fff;border-radius:20px;overflow:hidden}.lt-shell .lt-town-card>img{width:100%;aspect-ratio:16/9;object-fit:cover}.lt-shell .lt-town-card>div{padding:24px}.lt-shell .lt-town-card p{font-size:.9375rem;margin:10px 0}.lt-shell .lt-explore-side .lt-text-link{margin-right:18px}.lt-shell .lt-service{background:#ece8db;border-radius:24px;padding:44px;display:flex;justify-content:space-between;gap:32px;align-items:center}.lt-shell .lt-service h2{font-family:"PMingLiU",serif;font-size:1.875rem;margin-bottom:16px}.lt-shell .lt-service p{font-size:.9375rem}.lt-shell .lt-service>div:last-child{max-width:320px}.lt-shell .lt-footer{padding:44px 0;background:#edf0e8;border-top:1px solid var(--lt-line)}.lt-shell .lt-footer>.lt-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px}.lt-shell .lt-footer strong{font-size:1.375rem;letter-spacing:.15em}.lt-shell .lt-footer p{font-size:.875rem;margin-top:12px}.lt-shell .lt-footer nav{display:flex;align-content:start;gap:12px 24px;flex-wrap:wrap}.lt-shell .lt-footer nav a{font-size:.875rem;min-height:44px;display:inline-flex;align-items:center}.lt-shell .lt-footer small{font-size:.75rem;grid-column:1/-1;color:var(--lt-muted)}.lt-shell .lt-bottom-nav{display:none}
@media(min-width:1440px){.lt-shell .lt-hero{padding-block:80px 48px}.lt-shell .lt-members-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1100px){.lt-shell .lt-desktop-nav{gap:16px}.lt-shell .lt-header-inner{gap:16px}.lt-shell .lt-hero{gap:28px}.lt-shell .lt-hero h1{font-size:2.3rem}.lt-shell .lt-brand{width:180px}.lt-shell .lt-header-actions{gap:8px}}
@media(max-width:1023px){.lt-shell .lt-desktop-nav{display:none}.lt-shell .lt-menu{display:block}.lt-shell .lt-menu summary{width:44px;justify-content:center;font-size:1.35rem}.lt-shell .lt-hero{grid-template-columns:1fr 1fr;gap:24px}.lt-shell .lt-hero h1{font-size:2rem}.lt-shell .lt-date-grid{gap:32px}.lt-shell .lt-stories{gap:28px}.lt-shell .lt-service{padding:32px}.lt-shell .lt-hero .lt-actions{gap:10px}.lt-shell .lt-button{padding-inline:16px}}
@media(max-width:767px){.lt-shell .lt-wrap{width:calc(100% - 32px)}.lt-shell .lt-header-inner{padding:16px;gap:8px}.lt-shell .lt-brand{width:176px}.lt-shell .lt-brand strong{font-size:1.3rem}.lt-shell .lt-brand>span{font-size:.6875rem;letter-spacing:.08em}.lt-shell .lt-message-link{display:none}.lt-shell .lt-account summary{font-size:.8125rem;gap:6px}.lt-shell .lt-header-actions{gap:8px}.lt-shell .lt-hero{grid-template-columns:1fr;padding-block:36px 28px;gap:28px}.lt-shell .lt-hero h1{font-size:1.875rem;margin-bottom:16px}.lt-shell .lt-eyebrow{font-size:.6875rem;margin-bottom:10px}.lt-shell .lt-season{margin-bottom:16px}.lt-shell .lt-hero .lt-lead br{display:none}.lt-shell .lt-hero-scene{border-radius:20px}.lt-shell .lt-hero-scene img{aspect-ratio:4/3}.lt-shell .lt-hero-scene figcaption{padding:16px}.lt-shell .lt-hero-scene strong{font-size:.9375rem}.lt-shell .lt-welcome{align-items:start;flex-direction:column;gap:8px;padding:20px 0}.lt-shell .lt-welcome>div{gap:12px}.lt-shell .lt-welcome .lt-text-link{margin-left:36px}.lt-shell .lt-section{margin-block:20px;padding-block:20px}.lt-shell h2{font-size:1.375rem}.lt-shell .lt-section-heading{align-items:start;gap:12px;flex-wrap:wrap;margin-bottom:20px}.lt-shell .lt-section-heading>.lt-text-link{font-size:.875rem}.lt-shell .lt-members-grid{grid-template-columns:1fr;gap:20px}.lt-shell .lt-member-info{padding:20px}.lt-shell .lt-member-photo{max-height:440px}.lt-shell .lt-trust-note{align-items:start}.lt-shell .lt-trust-note span{display:block;margin:6px 0 0}.lt-shell .lt-date-section{padding-block:36px;margin-block:20px}.lt-shell .lt-date-grid{grid-template-columns:1fr;gap:24px}.lt-shell .lt-date-grid h2{font-size:1.625rem}.lt-shell .lt-card{padding:20px;gap:14px}.lt-shell .lt-stories{grid-template-columns:1fr;gap:40px}.lt-shell .lt-explore-grid{grid-template-columns:1fr}.lt-shell .lt-service{padding:28px 24px;display:block}.lt-shell .lt-service h2{font-size:1.5rem}.lt-shell .lt-service>div:last-child{margin-top:24px}.lt-shell .lt-footer{padding-bottom:104px}.lt-shell .lt-footer>.lt-wrap{grid-template-columns:1fr}.lt-shell .lt-bottom-nav{position:fixed;z-index:40;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--lt-line);display:flex;justify-content:space-around;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.lt-shell .lt-bottom-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-height:48px;min-width:52px;font-size:.75rem;border-radius:10px}.lt-shell .lt-bottom-nav [aria-current]{background:#edf1e9}.lt-shell .lt-empty{padding:24px}.lt-shell .lt-story-meta{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.lt-shell *{scroll-behavior:auto;transition:none;animation:none}}
/* Existing CUBI is retained. Only on this isolated homepage reserve bottom-nav space. */
body:has(.lt-shell) #cpPetDrawer{max-height:calc(100dvh - 160px)}
@media(max-width:767px){body:has(.lt-shell) #cpPetDrawer{bottom:84px}body:has(.lt-shell) #cpPetToggle{bottom:88px}}
/* Shared 2D form and feedback primitives. */
.lt-shell .lt-component-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.lt-shell .lt-form-sample{background:#fff;padding:24px;border:1px solid var(--lt-line);border-radius:16px}.lt-shell .lt-form-sample label{display:block;font-weight:600;margin-top:20px}.lt-shell .lt-form-sample input,.lt-shell .lt-form-sample select{display:block;width:100%;min-height:48px;background:white;color:var(--lt-text);border:1px solid var(--lt-border);border-radius:10px;padding:10px 12px}.lt-shell input:focus-visible,.lt-shell select:focus-visible{outline:3px solid var(--lt-focus);outline-offset:3px}.lt-shell .lt-form-sample p{font-size:.875rem;margin-top:8px}.lt-shell [aria-invalid=true]{border:2px solid var(--lt-danger)}.lt-shell .lt-field-error{color:var(--lt-danger)}.lt-shell .lt-notice{display:flex;gap:12px;align-items:start;background:#edf1e9;border:1px solid var(--lt-border);border-radius:12px;padding:20px}.lt-shell .lt-notice-error{background:#fbf1f0;border-color:var(--lt-danger)}.lt-shell .lt-image-fallback{display:block;padding:20px;color:var(--lt-muted);font-size:.875rem}.lt-shell .lt-header-inner{flex-wrap:wrap}.lt-shell .lt-brand{max-width:100%}.lt-shell .lt-header-actions{flex-wrap:wrap}.lt-shell .lt-hero-copy{min-width:0}.lt-shell .lt-member-info h3{overflow-wrap:anywhere}
body:has(.lt-shell) #cpPetDrawer{height:100dvh;max-height:100dvh}
body:has(.lt-shell) #cpPetDrawer:not(.open){visibility:hidden}
@media(max-width:767px){.lt-shell .lt-component-grid{grid-template-columns:1fr}body:has(.lt-shell) #cpPetFab{bottom:calc(90px + env(safe-area-inset-bottom))}body:has(.lt-shell) #cpPetDrawer{top:0;bottom:auto;height:calc(100dvh - 80px);max-height:calc(100dvh - 80px)}}
@media(max-width:767px){.lt-shell .lt-brand{width:max-content;max-width:100%}.lt-shell .lt-brand>span{flex-basis:100%}.lt-shell .lt-header-actions{margin-left:auto}.lt-shell .lt-header-inner{row-gap:16px}}
@media(max-width:767px){body:has(.lt-shell) #cpPetFab{bottom:calc(var(--lt-bottom-height,80px) + 16px)}body:has(.lt-shell) #cpPetDrawer{height:calc(100dvh - var(--lt-bottom-height,80px) - 8px);max-height:calc(100dvh - var(--lt-bottom-height,80px) - 8px)}.lt-shell .lt-footer{padding-bottom:calc(var(--lt-bottom-height,80px) + 40px)}}
@media(max-height:500px){body:has(.lt-shell) #cpPetDrawer{overflow-y:auto}body:has(.lt-shell) #cpPetDrawer .cp-pet-stage{height:120px;min-height:120px}body:has(.lt-shell) #cpPetDrawer .cp-chat-log{flex:0 0 auto;min-height:80px}body:has(.lt-shell) #cpPetDrawer .cp-vid-container{width:110px;height:110px}}
@media(max-width:767px){body:has(.lt-shell) #ast-scroll-top{bottom:calc(var(--lt-bottom-height,80px) + 16px);left:16px;right:auto}body:has(.lt-shell) #cp-pet-toast{bottom:calc(var(--lt-bottom-height,80px) + 16px)}}
@media(max-width:767px){body:has(.lt-shell) #cpPetOverlay{height:calc(100dvh - var(--lt-bottom-height,80px))}}
.lt-shell .lt-cubi-nav{display:none}
@media(max-width:1024px){.lt-shell .lt-bottom-nav{position:fixed;z-index:40;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--lt-line);display:flex;justify-content:space-around;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.lt-shell .lt-bottom-nav a,.lt-shell .lt-bottom-nav .lt-cubi-nav{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-height:48px;min-width:0;flex:1;font-size:.75rem;line-height:1.5;border-radius:10px}.lt-shell .lt-bottom-nav .lt-cubi-nav{background:transparent;border:0;padding:0;color:var(--lt-text)}body.lt-cubi-docked:has(.lt-shell) #cpPetFab{display:none}.lt-shell{padding-bottom:calc(var(--lt-bottom-height,80px) + 24px)}body:has(.lt-shell) #cpPetDrawer{top:0;bottom:auto;height:calc(100dvh - var(--lt-bottom-height,80px) - 8px);max-height:calc(100dvh - var(--lt-bottom-height,80px) - 8px)}body:has(.lt-shell) #cpPetOverlay{height:calc(100dvh - var(--lt-bottom-height,80px))}body:has(.lt-shell) #ast-scroll-top{display:none!important}}
@media(min-width:768px) and (max-width:1024px){.lt-shell .lt-brand{width:max-content;max-width:100%}.lt-shell .lt-brand>span{flex-basis:100%}.lt-shell .lt-header-actions{margin-left:auto}}
