.demo-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;background:#eff7f2;border:1px solid #d5e7dc;border-radius:12px;margin:0 0 18px}.demo-controls label{display:flex;align-items:center;gap:8px;margin:0;font-size:14px}.demo-controls input{width:18px;height:18px;accent-color:#29975b}.demo-controls small{color:#50665a;font-size:13px}.demo-section{margin-top:22px}.demo-section[hidden]{display:none}.demo-section>h2{font-size:17px;margin:0 0 12px}.demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.demo-card{overflow:hidden;background:white;border:1px solid #e6eaed;border-radius:14px;box-shadow:0 3px 14px #162d4010}.demo-open{display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:0;width:100%;height:100%;border:0;border-radius:14px;background:white;color:#172331;cursor:pointer;font:inherit}.demo-open:hover{background:#f6fbf8}.demo-open:focus-visible{outline:3px solid #29975b;outline-offset:-3px}.demo-photo{display:block;width:100%;height:180px;object-fit:cover}.demo-copy{display:flex;flex-direction:column;gap:7px;padding:15px}.demo-copy strong{font-size:17px;line-height:1.3}.demo-copy small{font-size:13px;color:#667485}.demo-description{font-size:14px;line-height:1.5}.demo-badge{align-self:flex-start;display:inline-block;padding:3px 8px;background:#edf3f0;color:#52685c;border-radius:5px;font-size:12px;font-weight:600}.demo-stack{display:grid;gap:10px}.demo-rail{padding:16px;background:white;border-radius:14px;box-shadow:0 3px 16px #162d400b;margin:14px 0}.event-rail-list~.demo-rail{box-shadow:none;padding:0;margin-bottom:0}.demo-compact{box-shadow:none;border:0;border-radius:8px}.demo-compact .demo-open{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:10px;padding:5px}.demo-compact .demo-open:has(.demo-date){grid-template-columns:46px 1fr 60px}.demo-compact .demo-photo{width:58px;height:65px;border-radius:8px}.demo-compact .demo-open:has(.demo-date) .demo-photo{grid-column:3;grid-row:1}.demo-compact .demo-open:has(.demo-date) .demo-copy{grid-column:2;grid-row:1}.demo-compact .demo-copy{padding:0;gap:4px;min-width:0}.demo-compact .demo-copy strong{font-size:14px}.demo-compact .demo-copy small{font-size:12px;line-height:1.4}.demo-date{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;background:#fff0f2;color:#e63f60;border-radius:9px;font-size:12px}.demo-date strong{font-size:24px}.demo-grid .demo-date{position:absolute;margin:12px;z-index:1}.demo-dialog{max-width:620px;width:calc(100% - 32px);padding:24px;border:0;border-radius:18px}.demo-dialog::backdrop{background:#14231ca8}.demo-close{float:right}.demo-detail-image{width:100%;max-height:300px;object-fit:cover;border-radius:12px}.demo-disclaimer{font-size:14px;padding:14px;background:#f1f6f3;border-radius:10px}.demo-dialog p{line-height:1.6}#feed-section>.demo-section .demo-grid{grid-template-columns:1fr}#feed-section>.demo-section .demo-photo{height:290px}@media(max-width:600px){.demo-grid{grid-template-columns:1fr}.demo-photo{height:190px}#feed-section>.demo-section .demo-photo{height:220px}.demo-dialog{padding:18px}.demo-controls{align-items:flex-start}}

/* Samples never hide real empty states, loading errors or calls to action. */
.demo-section{border-top:1px dashed #cedbd3;padding-top:16px}
.demo-context{margin:0 0 14px;color:#586c60;font-size:14px;line-height:1.5}
#workspace section:has(> .demo-section:not([hidden])) .social-empty{font-size:15px;line-height:1.5;padding:16px 18px}

.demo-photo[src="/hero-chihuahua.png"]{object-position:76% center}

