.restaurant-animation-filters{border:0;border-top:1px solid var(--home-line);margin:18px 0 8px;padding:18px 0 0;min-width:0}
.restaurant-animation-filters legend{font-size:.95rem;font-weight:600;padding-right:10px}
.restaurant-animation-check{display:flex;align-items:center;gap:10px;min-height:46px;font-size:.9rem;margin-bottom:12px}
.restaurant-animation-check input{width:18px;height:18px;accent-color:var(--home-teal);flex:none}
.restaurant-animation-date{display:grid;gap:8px;margin-top:16px;font-size:.88rem;font-weight:600}
.restaurant-animation-date[hidden]{display:none}
.restaurant-animation-date input{box-sizing:border-box;width:100%;min-width:0;min-height:46px;border:1px solid var(--home-control-line);border-radius:9px;background:var(--home-surface);color:var(--home-ink);padding:10px;font:inherit;font-size:16px}
.restaurant-animation-error{color:var(--home-ink);background:var(--home-soft);border-left:3px solid var(--home-teal);padding:12px 16px;overflow-wrap:anywhere}
.restaurant-animation-highlight{display:grid;gap:4px;border-top:1px solid var(--home-line);margin:14px 0 4px;padding:12px 0;min-height:44px;color:var(--home-teal);text-decoration:none;overflow-wrap:anywhere}
.restaurant-animation-highlight>span{font-size:.8rem}.restaurant-animation-highlight strong{font-size:.9rem;font-weight:600}
.restaurant-animation-highlight:hover strong{text-decoration:underline}
.restaurant-animations{scroll-margin-top:90px}
.restaurant-animation-card{padding:18px 0;border-top:1px solid var(--home-line);overflow-wrap:anywhere}
.restaurant-animation-card:first-of-type{border-top:0;padding-top:0}
.restaurant-animation-card--with-image{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:start;gap:20px}
.restaurant-animation-body{min-width:0}
.restaurant-animation-visual{display:flex;flex-direction:column;gap:8px;width:100%;max-width:220px;color:var(--home-teal);font-size:.8rem;line-height:1.4;text-decoration:none}
.restaurant-animation-visual img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:var(--home-soft)}
.restaurant-animation-visual--poster img{aspect-ratio:3/4;object-fit:contain;border:1px solid var(--home-line)}
.restaurant-animation-visual:hover span{text-decoration:underline}.restaurant-animation-visual:focus-visible{outline:2px solid var(--home-teal);outline-offset:5px;border-radius:10px}
.detail-restaurant-animation .restaurant-animation-visual{margin:14px 0}
.restaurant-animation-type{display:inline-block;font-size:.8rem;font-weight:600;color:var(--home-teal);background:var(--home-soft);border-radius:20px;padding:5px 10px}
.restaurant-animation-card h3{font-size:1.15rem;margin:10px 0}.restaurant-animation-card h3 a{color:var(--home-ink);text-decoration:none}.restaurant-animation-card h3 a:hover{text-decoration:underline}
.restaurant-animation-schedule,.restaurant-animation-exception{font-size:.9rem;color:var(--home-muted);line-height:1.6}
.restaurant-animation-card .restaurant-animation-next{display:grid;gap:4px;padding:12px 14px;border-radius:10px;background:var(--home-soft);color:var(--home-ink)}
.restaurant-animation-next>span{font-size:.8rem;color:var(--home-muted)}.restaurant-animation-next time{font-weight:600}
.restaurant-animation-card .detail-button{margin-top:6px;white-space:normal;text-align:center}
.restaurant-animation-price{font-size:.9rem;color:var(--home-muted)}
@media(max-width:640px){.restaurant-animation-card--with-image{grid-template-columns:minmax(0,1fr);gap:14px}.restaurant-animation-card .restaurant-animation-visual{max-width:170px}.restaurant-animation-card .detail-button{width:100%;box-sizing:border-box}.restaurant-animation-card h3{font-size:1.05rem}}
