@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}:root{--color-primary:#B85C3C;--color-accent:#D4A574;--color-dark:#2d2d2d;--color-light:#f9f9f9;--color-live:#2ecc71;--color-upcoming:#3498db;--color-archived:#95a5a6;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-serif:"Noto Serif SC", "Source Han Serif SC", serif;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:4rem;--spacing-xl:6rem;--max-width:1400px;--card-width:380px}*,::after,::before{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;font-family:var(--font-sans);color:var(--color-dark);background:#fff;line-height:1.6}[lang=en],html[lang=en] [lang=zh]{display:none}html[lang=en] [lang=en]{display:inline}.hero{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:var(--spacing-lg) var(--spacing-md);background:linear-gradient(135deg,#b85c3c 0,#d4a574 100%);color:#fff;text-align:center}.hero-content{max-width:800px}.brand-title{margin:0 0 var(--spacing-md)0}.brand-name{display:block;font-size:clamp(3rem,8vw,6rem);font-weight:900;letter-spacing:.05em;line-height:1;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.brand-subtitle{display:block;font-size:clamp(1.2rem,3vw,1.8rem);font-weight:300;letter-spacing:.1em;margin-top:var(--spacing-sm);opacity:.95}.tagline{font-size:clamp(1rem,2vw,1.25rem);line-height:1.8;max-width:700px;margin:0 auto;opacity:.9}.exhibitions-section{padding:var(--spacing-xl) var(--spacing-md);max-width:var(--max-width);margin:0 auto}.section-header{text-align:center;margin-bottom:var(--spacing-lg)}.section-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--color-dark);margin:0}.exhibitions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-width),1fr));gap:var(--spacing-md);max-width:var(--max-width);margin:0 auto}.loading-indicator{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);color:#666}.loading-spinner{width:50px;height:50px;border:4px solid var(--color-border-light);border-top:4px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--spacing-sm)}.error-message{grid-column:1/-1;text-align:center;padding:var(--spacing-xl);color:#c41e3a}.error-message button{padding:.75rem 1.5rem;background:var(--color-primary);color:var(--color-white);border:0;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-base);margin-top:var(--spacing-sm);transition:var(--transition-base);font-weight:var(--font-weight-medium)}.error-message button:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-sm)}.exhibition-card{display:flex;flex-direction:column;background:var(--color-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);transition:var(--transition-slow);text-decoration:none;color:inherit}.exhibition-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.exhibition-card:active{transform:translateY(-2px)}.card-image-wrapper{position:relative;width:100%;padding-top:66.67%;background:var(--color-light);overflow:hidden}.card-image,.card-image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%}.card-image{object-fit:cover;transition:transform .3s ease}.exhibition-card:hover .card-image{transform:scale(1.05)}.card-image-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f5f5 0,#e0e0e0 100%)}.placeholder-icon{font-size:4rem;opacity:.3}.status-badge{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);padding:.4rem .8rem;border-radius:4px;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:rgba(255,255,255,.95);backdrop-filter:blur(4px);box-shadow:0 2px 4px rgba(0,0,0,.1)}.status-badge.status-live{color:var(--color-live);border:1px solid var(--color-live)}.status-badge.status-upcoming{color:var(--color-upcoming);border:1px solid var(--color-upcoming)}.status-badge.status-archived{color:var(--color-archived);border:1px solid var(--color-archived)}.card-content{padding:var(--spacing-md);flex:1;display:flex;flex-direction:column}.card-title{font-size:1.5rem;font-weight:700;margin:0 0 var(--spacing-sm)0;color:var(--color-dark)}.card-description{font-size:1rem;line-height:1.6;color:#666;margin:0 0 var(--spacing-md)0;flex:1}.card-stats{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid #e0e0e0}.stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-value{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.stat-label{font-size:.75rem;color:#999;text-transform:uppercase;letter-spacing:.05em}.card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.card-year{color:#999;font-weight:500}.card-cta,.footer-nav a{color:var(--color-primary);font-weight:600;transition:transform .2s ease}.exhibition-card:hover .card-cta{transform:translateX(4px)}.footer,.placeholder-card{background:var(--color-light)}.placeholder-card{border:2px dashed var(--color-border);cursor:default}.placeholder-card:hover{transform:none;box-shadow:var(--shadow-md)}.placeholder-card .card-title{color:#999}.placeholder-card .card-description{color:#bbb}.placeholder-card .placeholder-icon{font-size:6rem;opacity:.2}.footer{padding:var(--spacing-lg) var(--spacing-md);border-top:1px solid #e0e0e0;text-align:center}.footer-text{margin:0 0 var(--spacing-sm)0;color:#666;font-size:.9rem}.footer-nav{display:flex;gap:var(--spacing-md);justify-content:center;align-items:center}.footer-nav a{text-decoration:none;font-weight:500;transition:color .2s ease}.footer-nav a:hover{color:var(--color-accent);text-decoration:underline}@media (max-width:768px){:root{--card-width:300px}.hero{min-height:50vh;padding:var(--spacing-md)}.exhibitions-section{padding:var(--spacing-lg) var(--spacing-sm)}.exhibitions-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.card-stats{gap:var(--spacing-sm)}}@media (max-width:480px){.brand-name{font-size:3rem}.brand-subtitle{font-size:1rem}.tagline{font-size:.9rem}.section-title{font-size:2rem}.card-content{padding:var(--spacing-sm)}.card-title{font-size:1.25rem}.footer-nav{flex-direction:column;gap:var(--spacing-sm)}}.hamburger{display:flex!important;flex-direction:column;gap:4px}.hamburger span{display:block!important;width:20px!important;height:2px!important;min-height:2px!important;background-color:var(--color-dark)!important;border-radius:1px}